Diskussion:Programmiertrick

Letzter Kommentar: vor 4 Jahren von 2003:CB:A74C:1501:FC48:D0A6:217D:ABDB
  1. Schnellerer Programmablauf (Performance)
  2. Geringerer Speicherverbrauch

Beide Dinge werden doch wohl eher durch die Verwendung bzw. den Entwurf geeigneter Algorithmen erreicht, oder? --zeno 22:15, 8. Feb 2004 (CET)

Natürlich ist für einen schnellen und schlanken Code ein guter Algorithmus die Voraussetzung. Durch den Einsatz von Tricks kann aber die Implementierung des Algorithmus verbessert werden (in Hinblick auf die oben genannten Punkte), z.B. durch den Einsatz von illegalen CPU-Befehlen (entsprechende Beispiele werde ich voraussichtlich noch in den Artikel einfügen). --Fedi 22:44, 8. Feb 2004 (CET)

Zum Thema "Selbstmodifizierender Maschinencode": > "(tatsächlich führt er sogar zu einer massiven Verlangsamung)" Das ist so pauschal einfach falsch! Natürlich kann selbstmodifizierender Maschinencode für Speedsteigerungen benutzt werden, und wird es auch! Siehe z.B.: http://en.wikipedia.org/wiki/Self-modifying_code (nicht signierter Beitrag von 80.152.184.234 (Diskussion) 11:19, 27. Apr. 2015 (CEST))Beantworten

Er schrieb von modernen Prozessoren und damit hat er recht. Sobald eine CPU über eine Pipeline verfügt und der Code in unmittelbarer Nähe verändert wird (dort machte es am meisten Sinn) und dieser Coder bereits in der Pipe liegt, kommt es zu einem Pipeline-Stall, wenn auch eine bereits in der Pipe oder im Cache befindliche Codeadresse schreibend zugegriffen wird. Beides ist tödlich für die Performance. Selbst-modifizierender Code zu Geschwindigkeitssteigerung ist mir außerhalb von 8-Bit-CPUs nicht mehr begegnet. 2003:CB:A74C:1501:FC48:D0A6:217D:ABDB 21:54, 7. Nov. 2019 (CET)Beantworten