[VB6] Optimisation d'une routine.

Messages postés
122
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
12 octobre 2019
-
Salut,

Au détour d'une question banale et à priori naïve (sur un forum anglophone) , nous nous sommes amusé à recenser les différentes méthodes utilisables pour effectuer une routine simple.

A la question: "Comment convertir une valeur long en information RGB?"

Résultat, onze routines en API ou pas, mais avec des résultats d'une vitesse d'execution très différentes.

Les résultats sont surprenants et vont parfois à l'encontre des préjugés sur la Visual Basic.

L'accélération d'une routine passe par:

- Le mode d'appel, SUB ou FUNCTION.

- Le Nombre d'arguments.

- L'emplacement de la routine (BAS ou FRM).

- L'utilisation d'APIs ou non, qui peuvent ralentir une routine.

- La nature de la déclaration des argument SUB/FNC: Byte ou Long...



Nous parlons ici d'une routine répétitive utilisée généralement pour un traitement graphique ou audio...
Ces optimisations sont bien sûr effectuées de manière à tester des routines, mais le ratio de rapidité (outre le fait de tester la vitesse CPU/RAM), ont des "qualité" de rapidité pouvant changer selon le nombre de boucles et de répétitions (utilisation de buffers, organisation des runtimes...).

Les tests sont ici: http://www.vbforums.com/showthread.php?879331-RESOLVED-Long-color-to-RGB

Le forum étant en Anglais, il peut y avoir des problèmes de compréhension, c'est pour cela que je me permet de poster sur ce forum francophone.

Bonne lecture.
Afficher la suite