OPTIMISATION DE CODE

Galmiza
Messages postés
573
Date d'inscription
samedi 16 novembre 2002
Statut
Membre
Dernière intervention
9 avril 2008
- 4 juin 2004 à 19:06
Saros
Messages postés
921
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
23 septembre 2010
- 14 mars 2006 à 21:43
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/23369-optimisation-de-code

Saros
Messages postés
921
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
23 septembre 2010

14 mars 2006 à 21:43
C'est Tesdud, pas Testud xD
Bartoune74
Messages postés
2
Date d'inscription
jeudi 8 juillet 2004
Statut
Membre
Dernière intervention
8 juillet 2004

15 janv. 2006 à 19:52
Heu c'est pas pour dire mais je doute que tu soit réellement l'auteur de tes petits conseils. J'ai chez moi un livre : DirectX 9 de Laurent Testud (jme goure peut etre dans le nom :d) et ya un chapitre sur l'optimisation et c'est EXACTEMENT les meme conseil dans le meme ordre! Donc a part modifié un peu le vocabulaire et changer le nom des variables toi et tes potes de STI-A faut arreter de pomper ;)

bye !

PS: les droits d'auteurs c'est précieux
Kornferki
Messages postés
17
Date d'inscription
jeudi 25 mars 2004
Statut
Membre
Dernière intervention
6 décembre 2004

16 juin 2004 à 15:21
Ne pourrais-tu pas écrire en francais, MasterShadows ?

Si vraiment ton "CPU travail rapidement" dès la deuxieme ligne de ton tutorial, je me demande comment ton programme peut fonctionner ?

C est pas si compliqué que cela d écrire correctement et cela fait tellement plaisir de lire du code commenté en bon francais de temps à autres. Vous avez encore le temps de le faire en 1ere.
StanOfSky
Messages postés
43
Date d'inscription
mardi 30 mars 2004
Statut
Membre
Dernière intervention
7 octobre 2006

8 juin 2004 à 17:51
mouais chu pas trop convaincu par ce tuto...

deja pour les float c le compilateur qui fait les conversions que ce soit ecrit avec des f ou pas c juste une question de lisibilité et ca ne change en rien la vitesse d'execution de ton programme...

pour ce qui est des incrementations :

D3DXVECTOR3 vA, vB, vC; // allocation mémoire

vA = vB + vC;
// utilisation de l'operateur+ défini par la classe D3DXVECTOR3
// création variable temporaire pour la stocker résultat opération donc construction (sur la pile)
// utilisation du constructeur de recopie
// destruction variable temporaire


vA = vB;
// utilisation constructeur de recopie
vA += vC;
// utilisation operateur += de la classe D3DXVECTOR3

donc il ya bien gain de temps et de mémoire ram en utilisant les incrementeurs des classes et cela est vrai pour toute classe d'ou l'interet des incrementeurs... i++ est plus optimisé que i = i+1;
mais en arriver la devient ridicule... dans ce cas la autant faire ta routine en assembleur et l'incorporer à ton programme...
d'autant plus qu'une grande partie de l'optimisation vient du compilateur : faut utiliser les bons flags et avoir un bon compilateur :p
c souvent étonnant de voir le résultat code machine d'une source c (soit disant optimisée) et qui au final est tout pourri ou inversement (mais c moins frequent :p)
donc si tu geres mal ton compilo meme en voulant soi disant optimiser tu te retrouvera avec un code tout pourri...

principalement à retenir sur ce tuto :
- utiliser les incrémenteur natifs (moins d'erreur et plus rapide)
- n'utiliser pas de variables temporaires à tout va
- matez un peu les inline, define, register, static etc... ;)

faire ca c ridicule :

a=longueur_bielle;
a-=l;
a*=raideur_ressort;
b=amortissement;
b*=prod_scal;
b*=l_inv;
a-=b;

pBielle->effort_interne=a;

passe a l'assembleur...............
voit pas l'interet de faire du c ou c++
en plus si tu touche un peu aux flags de ton compilateur il te le fera tout seul à la compilation...

++
MasterShadows
Messages postés
268
Date d'inscription
lundi 1 mars 2004
Statut
Membre
Dernière intervention
19 avril 2012
11
8 juin 2004 à 11:39
Je ne suis pas d'accord avec toi, Bombela, regarde dont le bouqin de Laurent Testud sur la programmation de jeux avec DirectX, à moins d'une erreur d'interprétation au niveau de ce que j'ai dit sur les float , je maintiens que tout ce que j'ai dit est bon
Afficher les 14 commentaires