Forum: Sonstige Fragen zu Delphi
Delphi
by Hawkeye219,
2. Apr 2007
Hallo Gereon,
Die IF-Anweisungen sind auch in deinem Code enthalten, sie stecken in der WHILE-Anweisung. Der Verzicht auf den Bitzähler sowie der Ersatz von Sprüngen ("if Akt > 3..." etc.) durch arithmetische Operationen sollten eine Geschwindigkeitssteigerung bringen.
Kannst du die beiden verglichenen Generate-Methoden (mit und ohne "loop unrolling") einmal als Quelltext hier einstellen?...
Forum: Sonstige Fragen zu Delphi
Delphi
by Hawkeye219,
2. Apr 2007
Gereon, hast du meinen Vorschlag aus Beitrag #33 einmal geprüft? Das Code-Stück ersetzt lediglich die innere WHILE-Schleife deines Codes.
Gruß Hawkeye
Forum: Sonstige Fragen zu Delphi
Delphi
by Hawkeye219,
1. Apr 2007
Hallo,
hier noch ein Ansatz zur Beschleunigung der Simulation: loop unrolling. Bei dieser Technik werden mehrere Schleifendurchläufe ausprogrammiert, was im aktuellen Fall die Verwaltung des zusätzlichen Bitzählers erspart. Weiterhin sollte die Anzahl der Sprungbefehle auf ein Minimum reduziert werden:
var
y : Byte;
begin