Als «program-optimization» getaggte Fragen

Fragen zur manuellen und automatischen Optimierung der Programmleistung, z. B. in Compilern.



12
Datenstruktur oder Algorithmus zum schnellen Auffinden von Unterschieden zwischen Zeichenfolgen
Ich habe ein Array von 100.000 Zeichenfolgen, die alle die Länge . Ich möchte jede Zeichenfolge mit jeder anderen Zeichenfolge vergleichen, um festzustellen, ob sich zwei Zeichenfolgen um ein Zeichen unterscheiden. Im Moment, wenn ich jede Zeichenfolge zum Array hinzufüge, überprüfe ich sie mit jeder Zeichenfolge, die sich bereits im …

2
Warum wird bei vielen branchenüblichen Compilern die statische Einzelzuweisung der Weitergabe vorgezogen?
Laut der Wikipedia-Seite zu statischer Einzelzuweisung (SSA) wird SSA von großen und bekannten Projekten wie LLVM, GCC, MSVC, Mono, Dalvik, SpiderMonkey und V8 verwendet, während die Seite zu Projekten im Continuation-Passing-Stil verwendet wird (CPS) ist im Vergleich etwas mangelhaft. Ich habe die Vorstellung, dass CPS von Compilern und Interpreten bevorzugt …

2
Welche Eigenschaft der Nachteile ermöglicht die Eliminierung der modulo Nachteile der Schwanzrekursion?
Ich bin mit der Idee der grundlegenden Beseitigung der Schwanzrekursion vertraut , bei der Funktionen, die das direkte Ergebnis eines Aufrufs an sich selbst zurückgeben, als iterative Schleifen umgeschrieben werden können. foo(...): # ... return foo(...) Ich verstehe auch, dass die Funktion als Sonderfall immer noch umgeschrieben werden kann, wenn …

5
Warum kann das Betriebssystemdesign den Stromverbrauch senken?
Ich habe gelesen, dass Betriebssysteme wie Android und iOS irgendwie optimiert sind, um die Akkulaufzeit zu verbessern. Mein Verständnis ist, dass eine CPU eine bestimmte Anzahl von Operationen in einer bestimmten Zeit ausführt. Ich würde also denken, dass Sie Anwendungen beschleunigen können, indem Sie die Anzahl der erforderlichen Operationen reduzieren. …

1
Mikrooptimierung für die Berechnung der Bearbeitungsentfernung: Ist sie gültig?
Auf Wikipedia wird eine Implementierung für das dynamische Bottom-Up-Programmierschema für die Bearbeitungsentfernung angegeben. Es folgt nicht vollständig der Definition; innere Zellen werden folgendermaßen berechnet: if s[i] = t[j] then d[i, j] := d[i-1, j-1] // no operation required else d[i, j] := minimum ( d[i-1, j] + 1, // a …

3
Äquivalenz von Datenflussanalyse, abstrakter Interpretation und Typinferenz?
Die Antwort von @ Babou auf eine kürzlich gestellte Frage erinnert mich daran, dass ich einmal einen Artikel über die Äquivalenz (sowohl hinsichtlich der Fakten, die abgeleitet oder bewiesen werden können, als auch hinsichtlich der zeitlichen Komplexität der Ausführung des Inferenzalgorithmus) der Datenflussanalyse gelesen habe , abstrakte Interpretation und Typinferenz …

1
Datenflussanalyse mit Ausnahmen
Die Datenflussanalyse erfolgt über ein Kontrollflussdiagramm. Wenn eine betrachtete Sprache Ausnahmen unterstützt, kann das Kontrollflussdiagramm explodieren. Was sind die Standardtechniken für den Umgang mit dieser Explosion? Können wir ausnahmsweise hervorgerufene Kanten ignorieren? Datenflussanalysen berechnen ohnehin Übernäherungen, sodass wir eine weniger genaue, aber solide Lösung erhalten würden. Ist das wahr? Update …

1
Referenzanforderung: Optimierung der Verfahren für Listen in dynamischen Sprachen durch vorherige Durchführung von Sicherheitsüberprüfungen
Für mein Science-Fair-Projekt habe ich eine Optimierung der Sortierroutine von Python implementiert . Die Idee ist, die Sicherheitsüberprüfungen, die bei jedem Vergleich durchgeführt werden müssen, z. B. Typprüfungen und Zeichenbreitenprüfungen, außerhalb der Sortierschleife zu verschieben und sie alle in einem Durchgang durchzuführen. Basierend auf den Ergebnissen der Prüfungen wird dann …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.