compilo C++ SSE - Programmation
Marsh Posté le 19-03-2002 à 19:55:08
c par defaut je crois, meme SSE2
a verifier tout de meme
Marsh Posté le 19-03-2002 à 19:56:52
comment ça peut être par défaut alors que tous les cpu ne le gèrent pas?
dans ce cas il y aurait au moins une option pour l'enlever.
Marsh Posté le 19-03-2002 à 20:36:53
wave a écrit a écrit : comment ça peut être par défaut alors que tous les cpu ne le gèrent pas? |
et alors?
Marsh Posté le 19-03-2002 à 20:39:36
alors si ça fournit par défaut un code SSE ça plantera sur pentium2, celeron 1, thunderbird, duron < 1GHz et tous les cpu précédents.
Donc ça peut pas être le cas.
Marsh Posté le 19-03-2002 à 20:41:32
ya bcp de prog qui sont optimise SSE ou des trucs comme ca qui tourne quand meme nan
Marsh Posté le 19-03-2002 à 20:44:12
oui mais ça oblige à faire 2 versions du code (3 si on ajoute 3dnow) et à choisir laquelle on appelle en fonction du cpu. Ca triple la taille du code, ça m'étonnerait que VC fasse ça sans possibilité de faire autrement.
Marsh Posté le 19-03-2002 à 21:33:38
wave a écrit a écrit : j'ai pas trouvé d'option pour optimiser SSE sous VC++.net. Y a-t-il une option pour ça, où sinon y a-t-il d'autres compilos qui le font ? (intel?) Et avec un vrai gain de perfs, pas juste 1% histoire de dire que c'est géré par le compilo... |
Y'avait un processor pack pour visual c++6 a telecharger
sur le site de Microsoft..
je ne sais pas ce qu'il en est de la version 7.
Le processor pack, ne compile pas pour SSE
mais permet d'utiliser les instructions assembleurs SSE
inline. La detection du processeur
est a la charge du programmeur (code d'exemple fourni)
A+
LEGREG
Marsh Posté le 19-03-2002 à 21:50:25
legreg a écrit a écrit : Y'avait un processor pack pour visual c++6 a telecharger sur le site de Microsoft.. je ne sais pas ce qu'il en est de la version 7. Le processor pack, ne compile pas pour SSE mais permet d'utiliser les instructions assembleurs SSE inline. La detection du processeur est a la charge du programmeur (code d'exemple fourni) A+ LEGREG |
la version d'éval de intel compiler le fait très bien
Marsh Posté le 19-03-2002 à 21:53:24
ayachi a écrit a écrit : la version d'éval de intel compiler le fait très bien |
T'as regardé l'assembleur généré ?
Marsh Posté le 19-03-2002 à 21:57:03
elle a quoi comme limitations la version d'eval. du compilo intel?
Marsh Posté le 20-03-2002 à 23:48:38
pour le compilo intel, le sse est exposé par des fonctions C ou tu fais de l'asm au choix...
mais le compilo n'est pas capable de lui-même d'attraper n'importe quel routine est de paralléliser les données pour le sse, y'a du boulot préparatoire....
Marsh Posté le 20-03-2002 à 23:52:15
mouais donc intel qui se vante d'avoir un compilo génial n'a rien fait de + que les autres!
en + le compilo intel me dit qu'il a besoin de VC++ pour s'installer alors que VC++ est installé chez moi!
Marsh Posté le 20-03-2002 à 23:59:03
bin c'est que de l'expension en ligne, et le compilo essaye de bien "scheduler" les instructions sse....
Marsh Posté le 21-03-2002 à 00:09:18
wave a écrit a écrit : et VC++ tu sais s'il sait faire quelquechose avec SSE? |
Rien sans le compilo intel
Marsh Posté le 21-03-2002 à 00:13:27
Citation : Rien sans le compilo intel |
bill gates:gun:
ça faisait des années que canard WC++.net devait soi-disant supporter le SSE, il l'ont sorti, et n'ont RIEN changé dans les optimisations, et il est toujours fourni avec opengl 1.1!!!!!:gun:
Marsh Posté le 21-03-2002 à 00:18:07
normalement, opengl 1.2 devait etre dispo à partir du service pack 2 de windows 2000.... on l'attend toujours
Marsh Posté le 21-03-2002 à 00:20:40
bin l'opengl (full icd) y vient avec le driver de la carte 3d...
même si c'est vrai que l'opengl32.dll peut se mettre entre l'appli et la dll du driver...
Marsh Posté le 21-03-2002 à 00:28:45
oui mais j'ai perdu un temps fou à trouver comment on appelle une fonction qui n'est connue que par le driver.
Enfin ça couterait pas très cher de pas avoir 3 ans de retard là-dessus.
S'ils faisaient ça au lieu d'inventer le C# et autres stupidités qui remplissent les 7 CD de visual.net et le disque dur!
Marsh Posté le 21-03-2002 à 00:29:50
tsss, c de la faute au donkey, si il existerai pas, tu serais avec le debug
Marsh Posté le 21-03-2002 à 00:30:08
il se sont surement dit qu'il fallait mieux attendre directement opengl 2.0
Marsh Posté le 21-03-2002 à 00:31:59
c'est surtout qu'ils préfèrent directX!
y'a qu'à voir les drivers voodoo sous XP, il ne connaissent QUE directX.
Marsh Posté le 21-03-2002 à 00:36:38
wave a écrit a écrit : c'est surtout qu'ils préfèrent directX! y'a qu'à voir les drivers voodoo sous XP, il ne connaissent QUE directX. |
voodoo est un mauvais exemple.
3DFX n'existe plus..
LEGREG
Marsh Posté le 21-03-2002 à 00:39:21
ben c'est un bon exemple parce que justement on utilise les drivers fournis par micro$oft, avant de finir par choisir des drivers non-officiels qui font l'opengl et le glide.
Marsh Posté le 21-03-2002 à 00:57:21
wave a écrit a écrit : ben c'est un bon exemple parce que justement on utilise les drivers fournis par micro$oft, avant de finir par choisir des drivers non-officiels qui font l'opengl et le glide. |
Les drivers sont livres par microsoft
mais developpes par le constructeur..
Si le constructeur n'existe plus, plus de driver.
(ou driver generique dans certains domaines
comme les modems, les imprimantes, les cartes
graphiques pour la 2D basse perf.)
LEGREG
Marsh Posté le 21-03-2002 à 00:59:14
Le compilo d'intel le fait, et je crois que ça reste celui qui génère le code le plus rapide.
Sinon, curieusement, GCC 3 supporte le 3D Now! mais pas le SSE.
Marsh Posté le 21-03-2002 à 01:03:02
Citation : Les drivers sont livres par microsoft |
comment expliques-tu que des bidouilleurs y arrivent mieux que micro$oft?
ils ont mixé les version 98 et 2000 pour en faire une version XP, micro$oft a pondu la SEULE version sans opengl, il l'ont forcément fabriqué ou castrée eux-mêmes.
Marsh Posté le 21-03-2002 à 01:20:09
wave a écrit a écrit : comment expliques-tu que des bidouilleurs y arrivent mieux que micro$oft? ils ont mixé les version 98 et 2000 pour en faire une version XP, micro$oft a pondu la SEULE version sans opengl, il l'ont forcément fabriqué ou castrée eux-mêmes. |
Ce que tu as du mal a comprendre apparemment c'est
que Microsoft n'a rien a voir la dedans.
Si Microsoft ne s'occupe plus des driver OpenGL (Soft ou MCD)
c'est parce que ceux-ci n'ont plus lieu d'etre
et ont ete critiques pour leur limitations
par les developpeurs de jeux (Carmack) en tete.
Au depart, DirectX etait balbutiante et Microsoft
ressentait le besoin de supporter les deux APIs
dont l'une en software ou en driver accelere light(MCD).
Maintenant, Windows a une API 3D de base et c'est Direct3D.
Ensuite c'est a chaque Constructeur de carte de voir
s'il veut offrir a ses utilisateurs le benefice d'un
driver OpenGL performant (et que Microsoft n'a pas
les moyens ni l'obligation de developper pour chaque carte).
La situation est pire pour Matrox qui n'a pourtant
pas coule et qui peine a offrir de l'OpenGl qui marche.
Pourquoi n'interroges-tu pas plutot la strategie
de nVidia qui a rachete les assets de 3DFX
et qui a un interet certain a ce que les voodoo
ne soient plus supportees nulle part?
Voodoo non supporte ou par des drivers non officiels
-> utilisateurs poussés a changer de carte si possible
une petite derniere de nVidia.
LEGREG
Marsh Posté le 21-03-2002 à 01:26:40
ce que je dis c'est qu'aucun driver 3dfx ne supporte pas l'opengl.
Et micro$oft en a fourni un avec XP. C'est pas 3dfx qui l'a inventé. Ca m'étonnerait que ça soit nvidia.
micro$oft n'a jamais vraiment poussé à l'utilisation d'opengl, pour 2 raisons:
-un jeu directX ne sera pas porté sur d'autres plateformes, donc moins de concurrence.
-maintenant un jeu directX est + facilement portable sur xbox.
Marsh Posté le 21-03-2002 à 01:55:59
Ce sont deux problemes totalement independants:
- Oui microsoft a interet a ce que les gens developpent sous DirectX/Direct3D.
- Oui La joint venture entre Microsoft et SGI pour donner Talisman a lamentablement echoue.
- Non le marche d'avenir du jeu ce n'est pas Linux mais les consoles de jeu. Et les developpeurs de jeu doivent deja se coltiner toutes les plateformes possibles et imaginables (GBA, Dreamcast, PS2, GameCube, XBox). Alors la gueguerre OpenGl/DirectX doit bien les faire rigoler.
- Oui 3DFX est bien morte et nVidia en la rachetant n'avait pas l'intention de la ressusciter mais d'eliminer un concurrent.
- Oui tu as de la chance qu'il y ait des hobbyistes pour continuer a prendre de manierer totalement gratuite sur leur temps libre pour maintenir les drivers Glide (!), alors cesse de te plaindre et remercie les.
LEGREG
Marsh Posté le 21-03-2002 à 02:00:31
Citation : - Non le marche d'avenir du jeu ce n'est pas Linux mais les consoles de jeu. |
pourquoi quake2 est sorti sur PC/MAC/linux en même temps et pas sur les consoles?
Citation : Oui 3DFX est bien morte et nVidia en la rachetant n'avait pas l'intention de la ressusciter mais d'eliminer un concurrent. |
je vois pas trop ce que fait nvidia dans cette histoire.
Citation : Oui tu as de la chance qu'il y ait des hobbyistes pour continuer a prendre de manierer totalement gratuite sur leur temps libre pour maintenir les drivers Glide (!), alors cesse de te plaindre et remercie les. |
je les remercie, si je me plains c'est parce que microsoft a fait un boulot + compliqué qu'eux pour SUPPRIMER l'opengl/glide.
Marsh Posté le 21-03-2002 à 13:20:52
Sinon www.codeplay.com est pas mal, il vient se greffer sur VC+...
Marsh Posté le 21-03-2002 à 14:18:41
microsoft ne peux pas développer des drivers pour des produits dont les brevets appartiennent à d'autres entreprises (ou alors ils le font avec leur accord).
c pour ça que oui, 3dfx & aureal n'ont plus de -vrais- drivers.
Marsh Posté le 19-03-2002 à 19:51:17
j'ai pas trouvé d'option pour optimiser SSE sous VC++.net.
Y a-t-il une option pour ça, où sinon y a-t-il d'autres compilos qui le font ? (intel?)
Et avec un vrai gain de perfs, pas juste 1% histoire de dire que c'est géré par le compilo...
[jfdsdjhfuetppo]--Message édité par wave--[/jfdsdjhfuetppo]