[ascoders] Re: Performance > Bytecode

  • From: Florian Krüsch <florian@xxxxxxxxxx>
  • To: ascoders@xxxxxxxxxxxxx
  • Date: Mon, 26 Jan 2004 14:58:37 +0100

Hi André,
zu 1.)
das kann man so pauschal nicht beantworten, hängt davon ab wie oft
Du in derselben Methode p0 und p1 nochmal verwendest.
generell empfiehlt es sich bei AS2, Properties die Du öfters verwendest
in lokale Variablen zu packen - die werden dann nämlich in Register
gepackt.
Wenn das ganze in einer Schleife läuft, sollte var p0,p1 vor der Schleife
stehen, das erzeugt nämlich auch (meistens unnötigen) Bytecode.
zu 2.)
Inline Code ist immer schneller als Funktions- oder Methodenaufrufe,
hier musst Du einfach zwischen Kosten (Übersichtlichkeit, Arbeitszeit)
und Nutzen (bessere Performance) abwägen :D
btw. mein Blog ist weiterhin nicht nur in Planung, sondern in Arbeit ;)
...sobald es steht poste ich den ganzen Kram zum Thema 3D und
Optimierung peu á peu...
Gruss
Florian
kruesch.de



André Michelle wrote:

Hallo zusammen,


Florian hatte auf den Shockwards ein paar Dinge losgelassen, um schon beim Programmieren den Bytecode zu optimieren. Ein paar generelle Fragen an alle, die ein wenig Einblick in die Geschichte haben:

1.)
    var p0 = line.p0;
    var p1 = line.p1;

    var dx = p1.x - p0.x;
    var dy = p1.y - p0.y;

so besser ?

var p0, p1;

    var dx = (p1 = line.p1).x - (p0 = line.p0).x;
    var dy = p1.y - p0.y;

2.)

   Zum Thema function calls. Ich habe in AS2 eine wunderschöne lib für
Berechnungen von Vektoren, Punkte und Shapes, etc.
   Kann ich sorglos damit arbeiten, oder ist es besser zum Schluss alles
runterzubrechen und die Funktionen zu eleminieren ?

Gibt es da vernüftige Regeln oder muss man das je nach Anwendung abschätzen,
bzw. im Bytecode überprüfen ?



--
aM

------------------------------------------------------
Archiv   : //www.freelists.org/archives/ascoders/
Optionen : //www.freelists.org/list/ascoders
------------------------------------------------------





------------------------------------------------------
Archiv   : //www.freelists.org/archives/ascoders/
Optionen : //www.freelists.org/list/ascoders
------------------------------------------------------

Other related posts: