Am Donnerstag, 11. April 2002 17:51 schrieb Josef:
Vielleicht ist der Source mit -O3 schon so optimiert, daß es nichsts gibt, was ein 486 schlechter als ein 686 könnte. Oder aber der gcc erkennt nichts, was er besser machen könnte.
Das kann sein. Jedoch wäre eine _richtige_ Geschwindigskeitssteigerung recht praktisch :-) Denn die Zeiten bezogen sich auf einen einzigen Durchlauf. Etwa 500 bis 600 weitere Durchläufe sollte das Programm am Stück machen.
Sind die Optionen für den Pentium und höher nur Dummies, oder liegt das an dem sehr einfach gestrickten Programm? Das Programm rechnet in vielen Schleifen mit noch mehr Funktionsaufrufen nur einige Winkelfunktionen und Wurzeln aus. Vermutlich bringt eine Verbesserung des Codes mehr als ein $Wundercompiler, aber davon habe ich _keine_ Ahnung.
Naja, macht dein Programm das selber oder nutzt es z.B. die Wurzelfunktion von der libc/libm?
Alles Standardfunktionen aus dem Lieferumfang #include<iostream> #include<cmath> #include<vector> #include<fstream> #include<string> (Ich kann's definitiv auch nicht besser, als diese Bibliotheken :-( )
Dann passiert nämlich folgendes: Die Bibliotheksfunktion selber ist normalerweise nur für i386 kompiliert worden, und zur Compilierzeit ist nur daß -O3 ausschlaggebend, weil es
So ein Murks. Wie bekommt man nun elegant die gesamten Bibliotheken unter Suse kompiliert und installiert?
(sofern ich mich recht erinnere) inline-Funktionen erzwingt.
Du hast keine Alzheimer :-) -O3 Optimize yet more. This turns on everything -O2 does, along with also turning on -finline-functions.
Achso, das ganze läuft unter Suse 7.3 mit gcc version 2.95.3 20010315 auf einem 700-ter Athlon
Der kann, im Gegensatz zum neuen gcc-3.0, beispielsweise noch kein -march=athlon/-mcpu=athlon. Wobei die richtig guten Athlon-Optimierungen erst mit dem gcc 3.1 kommen werden.
Josef Spillner (der sowas über $DEBIAN_BUILDARCH regelt)
^^^^^^^^^^^^^^^^^^^^^^^ Das wird mir mit meiner Susi nicht wirklich helfen. Ausser ich plätte die komplett und mach was anderes auf die Platte. Wann kommt denn Debian 3.0 auf den (OpenSource-)Markt?
Jens Weiße