Ein Kollege von mir hat heute eine Klasse namens geschrieben ThreadLocalFormat, die im Grunde genommen Instanzen von Java-Format-Klassen in ein Thread-Local verschoben hat, da sie nicht thread-sicher und "relativ teuer" zu erstellen sind. Ich schrieb einen Schnelltest und errechnete, dass ich 200.000 Instanzen pro Sekunde erstellen könnte, und fragte ihn, …
Ich habe kürzlich eine Frage zu Stack Overflow gestellt, um herauszufinden, warum isset () in PHP schneller war als strlen () . Dies warf Fragen zur Wichtigkeit von lesbarem Code auf und ob Leistungsverbesserungen von Mikrosekunden im Code überhaupt in Betracht gezogen werden sollten. Mein Vater ist ein pensionierter Programmierer, …
Manchmal stoßen Sie auf eine Situation, in der Sie vorhandenen Code erweitern / verbessern müssen. Sie sehen, dass der alte Code sehr schlank ist, aber auch schwer zu erweitern ist und Zeit zum Lesen braucht. Ist es eine gute Idee, es durch modernen Code zu ersetzen? Vor einiger Zeit mochte …
"Vorzeitige Optimierung ist die Wurzel allen Übels" haben fast alle von uns gehört / gelesen. Ich bin gespannt, welche Art von Optimierung nicht verfrüht ist, dh in jeder Phase der Softwareentwicklung (High-Level-Design, Detail-Design, High-Level-Implementierung, Detail-Implementierung usw.), welchen Grad an Optimierung wir in Betracht ziehen können, ohne dass dies auf die …
In vielen Fragen und Antworten auf den C / C ++ - Seiten werden speziell oder indirekt Probleme mit der Leistung von Mikros (z. B. der Overhead einer indirekten vs direkten vs Inline-Funktion) oder die Verwendung eines O (N 2 ) vs O (N log N) -Algorithmus behandelt eine Liste …
Laut Wikipedia besagt die 90/10-Regel der Programmoptimierung, dass „90% der Programmausführungszeit für die Ausführung von 10% des Codes aufgewendet werden“ (siehe den zweiten Absatz hier ). Ich verstehe das wirklich nicht. Was genau bedeutet das? Wie können 90% der Ausführungszeit darauf verwendet werden, nur 10% des Codes auszuführen? Was ist …
Wenn ich Code schreibe, versuche ich immer, meinen Code so sauber und lesbar wie möglich zu machen. Hin und wieder kommt eine Zeit, in der Sie die Grenze überschreiten und von nettem sauberem Code zu etwas hässlicherem Code wechseln müssen, um ihn schneller zu machen. Wann ist es in Ordnung, …
Wir werden oft darauf hingewiesen, dass es der Hardware egal ist, in welcher Sprache ein Programm geschrieben ist, da nur der kompilierte Binärcode angezeigt wird. Dies ist jedoch nicht die ganze Wahrheit. Betrachten Sie zum Beispiel den bescheidenen Z80; Zu den Erweiterungen des 8080-Befehlssatzes gehören Befehle wie CPIR, die zum …
Dies ist eine allgemeine Frage zu einem Thema, das ich als Spieler interessant fand: CPU / GPU-Engpässe und Programmierung. Wenn ich mich nicht irre, verstehe ich, dass sowohl die CPU als auch die GPU Berechnungen durchführen, aber aufgrund der unterschiedlichen Architektur bei einigen Berechnungen die eine besser ist als die …
Go ist eine der wenigen Sprachen, die 'nah am Metall' laufen sollen, dh sie wird kompiliert, statisch typisiert und führt Code nativ ohne VM aus. Dies sollte es einen Geschwindigkeitsvorteil gegenüber Java, C # und dergleichen geben. Es scheint jedoch, dass es hinter Java steckt (siehe das Programmiersprachen-Shootout ) Ich …
Sollten Sie die Lesbarkeit von Code mit der Effizienz von Code einbüßen? zB 3 Codezeilen in 1 Zeile. Ich habe in Code Craft von Pete Goodliffe gelesen, dass die Lesbarkeit der Schlüssel ist. Ihre Gedanken?
Gibt es einen Just-in-Time-Compiler für kompilierte Sprachen wie C und C ++? (Die ersten Namen, die mir in den Sinn kommen, sind Clang und LLVM! Aber ich glaube nicht, dass sie es derzeit unterstützen.) Erläuterung: Ich denke, die Software könnte von Feedback zur Laufzeitprofilerstellung und einer aggressiv optimierten Neukompilierung von …
Ich habe die beliebte Antwort zu Branch Prediction von https://stackoverflow.com/q/11227809/555690 gelesen und etwas verwirrt mich: Wenn Sie richtig geraten haben, geht es weiter. Wenn Sie falsch geraten haben, stoppt der Kapitän, macht einen Rückzieher und schreit Sie an, den Schalter zu betätigen. Dann kann es den anderen Pfad neu starten. …
Obwohl dies im C ++ - Standard nicht vorgeschrieben ist, sieht es so aus, als ob GCC beispielsweise übergeordnete Klassen, einschließlich rein abstrakter Klassen, implementiert, indem es in jeder Instanziierung der betreffenden Klasse einen Zeiger auf die v-Tabelle für diese abstrakte Klasse einfügt . Dies erhöht natürlich die Größe jeder …
Ich habe viele Leute getroffen, die dogmatisch gegen alles sind, was man als "Optimierung" im allgemeinen englischen Sinne des Wortes bezeichnen kann, und sie zitieren sehr oft wörtlich das (teilweise) Zitat "vorzeitige Optimierung ist die Wurzel allen Übels". als Rechtfertigung für ihre Haltung implizieren sie, dass sie alles, wovon ich …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.