[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [linux] Re: SDL + antialiasing/blur.



On Fri, 17 Aug 2001, Laurent Vuibert wrote:

> Cedric De Wilde wrote:
>
> De plus en assembleur (tout programme ecrit en c est d'abord transcrit
> en assembleur puis en langage machine) les instructions sont plus ou
> moin rapide
> l'unité de temps es le cycle d'horloge t=1/f   (f=fréquence du processeur)
> un incrementation de 1 peut prendre 1 cycle d'horloge alors que de
> l'adressage indexé (ex tab[8]) peut en prendre plus de 6
>
> c'est temps différre d'un model de processeur à un autre:

Tout à fait. Le compilateur peut aussi faire varier cela et le code généré
est souvent très optimizé (suivant les paramètres passés au compilateur).

Voici quelques paramètres d'optimization dans GCC :
	      -fcaller-saves -fcse-follow-jumps -fcse-skip-blocks
              -fdelayed-branch -felide-constructors
              -fexpensive-optimizations -ffast-math -ffloat-store
              -fforce-addr -fforce-mem -finline-functions
              -fkeep-inline-functions -fmemoize-lookups
              -fno-default-inline -fno-defer-pop
              -fno-function-cse -fno-inline -fno-peephole
              -fomit-frame-pointer -frerun-cse-after-loop
              -fschedule-insns -fschedule-insns2
              -fstrength-reduce -fthread-jumps -funroll-all-loops
              -funroll-loops -O -O2 -O3

http://gcc.gnu.org/onlinedocs/gcc-3.0/gcc_3.html#SEC13

J'ai déjà vu un obsédé d'optimization qui essaye plusieurs paramètres et
genere en assembleur son code et le lit et l'interprète pour voir
l'optimization la plus judicieuse. Bien sur, en mode protégè i386, il faut
avoir du courage pour certains algo...  Mais par contre, cela peut être
aussi très pratique lors de cross-compilation pour des systèmes embarqués.

Enfin, c'était off-topic mais le compilateur GCC est une petite merveille
de mécanique et on le connait bien mal... (Voilà un prochain bouquin pour
O'Reilly : "Mastering GCC" 8-))

alx

-- 
---
Alexandre Dulaunoy
  Work    : http://www.conostix.com/       adulau@conostix.com
  Private : http://www.thinkingsecure.com/ adulau@thinkingsecure.com

"Liberty is the great parent of science and of virtue; and a nation will
be great in both in proportion as it is free. " T. Jefferson





[ Soyez précis dans vos sujets svp afin de déterminer directement  ]
[ le type de demande...                                            ]
[ Pour vous (dés)inscrire, aller sur http://unixtech.be/ml.php     ]
[ Archives de la mailing list: http://archives.unixtech.be/linux/  ]
[ http://unixtech.be              Contact: listmaster@unixtech.be  ]