Optimisation du code avec SSE

Résolu
sleep Messages postés 68 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 10 mai 2007 - 9 mai 2007 à 12:35
sleep Messages postés 68 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 10 mai 2007 - 10 mai 2007 à 10:06
Bonjour à tous, j'aimerais avoir quelques petites précisions sur ces instructions supplémentaires que sont les SSE.

De ce que j'ai compris, ce sont des instructions qui englobent les instructions déjà contenues dans MMX.

Il existe les version SSE2 et SSE3 qui fonctionnent sur les P4, la version SSSE3 (parfois appelée SS4) pour les C2D, et enfin, la vraie SSE4 qui elle sera disponible sur la prochaine version des processeurs Intel, les Penryn.



Je travaille sur une application de traitement du signal sur ordinateur, et je me suis dit que l'utilisation de ces instructions pourrait m'être très utile (je travaille sous Visual C++). J'ai déjà vu qu'il était possible dans les propriétés du projet d'activer les jeux d'instructions améliorés (SSE/SSE2), est-il possible d'activer les jeux SSE3 ou SSSE3 ?

Sinon, est-il possible d'employer directement ces instructions pour optimiser encore davantage mon code ? Si oui, faut-il obligatoirement les utiliser directement en assembleur, ou existe t'il des fonctions en C permettant de faire appel à ces instructions ?

Enfin, est-il possible de tirer parti d'un bi-processeur d'une autre façon en terme d'optimisation de code ?



Mes questions ne sont peut-être pas assez claires, ou posées au mauvais endroit, mais si vous pouviez déjà m'apporter quelques pistes ou élements de reflexion, je vous en serai déjà très reconnaissant..!

Merci d'avance..! :D

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
9 mai 2007 à 21:55
Utiliser les processeurs -> CreateThread()

SSE2-SSE3, exemple ici dans VC++:
COMPARAISON C ET SSE2/3 (WIN32)
http://www.cppfrance.com/code.aspx?ID=41536

La compil du C même en mode SSE2 ne rivalisera jamais avec un code fait main et l'écart peut s'avérer énorme.
http://brunews.com/brunews/download/Asm.zip
Un chm (en français) regroupant l'essentiel de FPU-MMX-SSE2-SSE3.

BruNews, MVP VC++
3
sleep Messages postés 68 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 10 mai 2007
10 mai 2007 à 10:06
Merci beaucoup pour cette réponse très interessante, je me replonge la dedans tout de suite..!
0
Rejoignez-nous