Im Sommersemester 2004 galt es, wie schon viele Jahre davor, im Rahmen der �bung �bersetzerbau einen codeerzeugenden Compiler zu schreiben und zu optimieren. Ich m�chte hier ein paar der von mir eingesetzten naheliegenden und weniger naheliegenden Tricks vorstellen.
Motivation | |
---|---|
Die Rechner und CPUs werden immer schneller, wozu also Code optimieren? Ganz einfach: Damit von der gewonnenen Geschwindigkeit auch etwas �brig bleibt! Dinge, wie eine supercoole Benutzeroberfl�che a la Luna oder Aqua fressen im wesentlichen die ganze CPU-Zeit moderner Prozessoren, seltsames Prozessmanagement tut sein �briges, leistungsm��ig in der Vergangenheit zu bleiben. Unpassende Algorithmen, versteckte sequential Scans beispielsweise tun ihr �briges, um Hardwareherstellern ein Zubrot zu sichern. F�r ausgefeilte Optimierungstricks gibt es eigene �bungen, ich m�chte deshalb hier ein paar andere, pragmatische Tips vorstellen, die teilweise ziemlich an der Oberfl�che bleiben und dennoch einiges bringen. |
Die Metrik | |
---|---|
Wir haben in �bersetzerbau ein klares Ziel: Die Anzahl der Assembler-Instruktionen reduzieren! Welche Ziele k�nnte es sonst noch geben? Nun, beispielsweise Laufzeiteffizienz. Ein Netzwerkzugriff ist langsamer als ein Festplattenzugriff, dieser wiederum langsamer als Speicherzugriff, dieser langsamer als Registerzugriff, und so weiter. Der Einfachheit halber beschr�nken wir uns bei �bersetzerbau aber, wie geschrieben, auf die Anzahl der ausgef�hrten Operationen. |
Comments - Make a comment |
The comments are owned by the poster. We are not responsible for its content.
|
AdministrativeTexts
updated by freddiemac1993, 2013-06-14
wiki
Re: adventures
created by brittdavis10, 2012-02-23 (1 rply, 3 views)
thread
Re: how to run phpwebsite...
created by alexander, 2011-08-25 (2 rpls, 3607 views)
thread
Re: Forum tags
created by HaroldFaragher, 2011-08-22 (3 rpls, 8488 views)
thread