Haswell : la puce graphique intégrée la plus puissante ferait jeu égal avec une carte dédiée

Stéphane Moussie |
Les contours de Haswell, la quatrième génération des processeurs Core i d'Intel, se dessinent peu à peu. AnandTech a pu observer les performances de la partie graphique intégrée des futurs processeurs qui sont attendus pour le milieu de l'année.



Un ordinateur Asus équipé d'une carte graphique NVIDIA GeForce GT 650M — celle que l'on retrouve dans l'iMac 21" haut de gamme — était confronté à une machine dotée d'un processeur Haswell GT3. La partie graphique GT3 constitue le haut du panier d'Intel et ses performances seraient deux fois supérieures à celle de l'Intel HD 4000.

C'est le jeu Dirt 3 qui a servi de benchmarks avec une définition Full HD et les paramètres graphiques poussés sur High (sans anti-aliasing ni v-sync). Bien qu'il n'ait pas pu consulter le nombre d'images par seconde affichées, pour AnandTech les performances sont très similaires. Un essai organisé par Intel à prendre avec précaution toutefois, le site n'a pas pu vérifier par lui-même que la puce Haswell utilisée était le modèle qui allait remplacer directement le processeur Ivy Bridge qui lui était opposé.



Toujours est-il que la partie graphique intégrée haut de gamme de la plateforme Haswell marquerait un bon en avant significatif si elle fait bien jeu égal avec une carte graphique dédiée. Reste maintenant à voir dans quelles proportions elle sera adoptée par les fabricants, dont Apple, qui ont des critères techniques (chaleur, place...) et financiers. Il faudra également observer le comportement de la puce GT2, correspondant à l'Intel HD 4600 que l'on a déjà pu croiser dans les tableaux qui ont fuité.
avatar joneskind | 
@Stardustxxx : Y a une différence entre un drivers système et une logiciel qui utilise une architecture processeur particulière. C'est pas de la sémantique, c'est un fait. CUDA n'est pas un drivers et n'en a pas besoin pour fonctionner mais simplement du processeur pour lequel il a été créé. C'est toi qui joue sur les mots. Ou alors tu comprends pas ce qu'est CUDA. CUDA est un moteur de traitement.
avatar Stardustxxx | 
@ joneskind J'ai vraiment du mal a te suivre. CUDA est pas un moteur de traitement... C'est quoi d'ailleurs un moteur de traitement ? CUDA c'est une API qui utilise un pilote (unifié sur Windows 3d+cuda ou seul sur OS X). Je te conseille de lire http://fr.wikipedia.org/wiki/Compute_Unified_Device_Architecture et http://www.hardware.fr/articles/659-4/nvidia-cuda-apercu.html [quote]Le driver CUDA se charge du rôle d'intermédiaire entre le code compilé et le GPU. Le runtime CUDA est lui un intermédiaire entre le développeur et le driver qui facilite le développement en masquant certains détails. CUDA propose soit de passer par l'API runtime soit d'accéder directement à l'API driver.[/quote] C'est un concurrent d'OpenCL. J'ai deja écrit en OpenCL mais jamais en CUDA, je privilegie toujours les solutions multiplatforme...
avatar iCaramba | 
Au pire on s'en bat les cou***** des jeux vidéos !!!
avatar joneskind | 
@Stardustxxx : 'CUDA est pas un moteur de traitement... C'est quoi d'ailleurs un moteur de traitement ?' Bon... Je vais essayer de faire simple. Nvidia propose une puce graphique, qui a une architecture particulière qui lui permet de traiter du calcul d'image. CUDA est la partie logicielle optimisée par Nvidia pour faire tourner sa puce. Ce logiciel n'a pas besoin d'accès profond au système qui le fait tourner, mais simplement de savoir où trouver le matériel dans l'ordinateur. Les jeux vidéos ne bénéficient pas de CUDA, ils tournent grâce aux drivers matériel de l'OS parce qu'ils en utilisent certains éléments pour fonctionner. C'est pour ça qu'il y a de grosses différences entre les jeux Mac et PC qui tournent sur Nvidia (quand ils sont écrits en NATIF et pas simplement passés à la moulinette Cider) mais qu'il n'y a pas de différences de performances entre CUDA sur Mac et CUDA sur PC. Est-ce que je me suis fait comprendre ou pas tellement ? C'est pas facile d'être clair avec des concepts aussi abscons en même temps...
avatar Stardustxxx | 
@ joneskind Est-ce-que je peux te demander quel est ton domaine d'expertise ? C'est quoi ton boulot ? Car ce que tu écrit n'as ni queue ni tete. CUDA est une API, tu peux effectivement écrire du logiciel avec qui va te permettre de traiter des images, de faire du calcul scientifque, donc dans un certain sens tu peux écrire un moteur de traitement... Ca veut dire quoi un jeu écrit en natif ?
avatar joneskind | 
@Stardustxxx : "Ca veut dire quoi un jeu écrit en natif ?" Un jeu dont le moteur a été écrit dans le langage de l'OS. Pas comme Wine ou Cider qui font tourner un émulateur du Kernel Windows pour faire tourner un jeu Windows sur un Mac ou un Linux. "CUDA est une API" Oui, une API, pas un driver. CUDA ne sert pas à faire tourner correctement une carte Nvidia sur un Mac. C'est ce que je me tue à t'expliquer. Donc que l'API CUDA soit très bien optimisée pour Nvidia sur Mac ne change absolument rien au fait que les drivers Nvidia sur Mac sont très mal conçus. Nvidia connaît son matériel. Elle n'a pas besoin des drivers "écrits par Apple" pour faire tourner ses cartes sur Mac. Tu as dit : "Il est admis dans le milieu professionel que les pilotes les plus solides et les mieux optimisé sont ceux écrit par nVidia, sutout pour l'OpenGL." Sauf que Nvidia ne peut pas faire ce qu'elle veut sur Mac parce qu'Apple ne lui laisse pas la main. Et puis OpenGL sur Mac c'est loin d'être la fête du slip. Tu as dit: "Tu sais ce que c'est CUDA ? J'ai pas l'impression. Ce n'est pas un pilote graphique. C'est un driver pour faire du GPGPU" Non, comme tu l'as dit plus loin, ce n'est pas un driver mais un jeu d'API. Toute cette conversation vient du fait qu'il est admis que les pilotes Nvidia pour Mac sont mauvais, ou en tout cas moins bon que ceux pour Windows. Tu as objecté que Nvidia était renommé pour la qualité de son matériel et je t'ai répondu que Nvidia était surtout renommé sur Mac grâce à CUDA, qui est destiné aux professionnels et pas aux gamers et que la renommée de Nvidia, si elle était parfaitement justifiée, n'était pas du fait de l'optimisation de ses drivers pour Mac mais bien de ses solutions logicielles optimisées pour son matériel (architecture Kepler) C'est pas la peine de se faire un nœud au cerveau. Nvidia est bon sur Mac grâce à CUDA, pas grâce au parti que tirent les jeux de son matériel. Pour ça, les chipset Intel, bien que probablement incapables de faire du gros calcul comme les puces Nvidia, sont bien mieux optimisés (parce que Intel donne tout ce qu'il faut pour le faire) - Donc on peut se réjouir qu'Intel fasse maintenant aussi bien (pas aussi bien qu'Nvidia, aussi bien tout court) parce que ça veut dire qu'OSX va en tirer pleinement parti. Nvidia sur Mac, à part pour CUDA, c'est donner de la nourriture aux cochons. Ça sert surtout pour Windows en Dual Boot.
avatar joneskind | 
@joneskind : 'Nvidia sur Mac, à part pour CUDA, c'est donner de la nourriture aux cochons. Ça sert surtout pour Windows en Dual Boot.' Je n'entends pas par là que Intel est mieux que Nvidia sur Mac. Mais que OSX ne tire pas assez bien parti du matériel NVidia. Et qu'à puissance égale il vaut mieux du Intel que du Nvidia.
avatar Stardustxxx | 
@joneskind Le language de l'OS... Ca veut pas dire grand chose. Mais j'imagine que tu veux dire que le programme utilise les APIs disponible sur l'OS. Je trouve que ton expression porte a confusion, mais j'avais bien compris ton point original. Contrairement a ce que tu affirmes il y a un driver CUDA sur OS X qui est independant du driver vidéo. Le driver CUDA est fournit par nVidia et le driver vidéo par Apple. Je te cite le site de nVidia : "The NVIDIA CUDA Toolkit is available at no cost from the main CUDA download site at http://www.nvidia.com/content/cuda/cuda-downloads.html. It contains the driver and tools needed to create, build and run a CUDA application as well as libraries, header files, CUDA samples source code, and other resources." Ca dit bien que ca contient le driver et les outils pour compiler et lancer des applications CUDA. Ce n'est pas moi qui invente. Ou alors, ca doit être le redacteur du site web de nVidia qui ne sait de quoi il parle. CUDA est un toolkit/librairie qui comprend une API et un driver. Un driver c'est juste un bout de soft qui parle a du hardware. C'est comme OpenGL, comme OpenCL il y a une API et un driver. D'ailleurs il y une interopabilité entre CUDA et OpenGL, les 2 peuvent interagir, et il y un chemin d'acces rapide pour partager de la texture opengl avec CUDA, la tu as besoin d'écrire le support dans les 2 pilotes. Je ne sais pas ou tu a été chercher que j'ai dit que le driver CUDA servait a faire tourner (on parle de la 3d) une carte nVidia sur Mac... Les drivers vidéos sur OS X sont fournis par Apple. Je ne conteste pas non plus le fait que les drivers nVidia sur Mac sont moins optimisé que sur Windows.
avatar Stardustxxx | 
@joneskind (suite) Je ne connais pas la relation entre nVidia et Apple, mais j'ai du mal a croire qu'il n'y a pas une collaboration entre les deux pour l'écriture du driver sur OS X. Je vois mal Apple choisir de mettre des cartes nVidia dans ses PCs sans avoir acces a des ressources chez nVidia pour écrire les pilotes... Ca marche pas comme ca dans l'industrie. Apple ne va pas deviner tout seul les specifications des cartes nVidia, ca serait une perte de temps... Tu te vois acheter du matos, et que le vendeur te refuse le manuel... Je suis d'accord que nVidia ne peut surement pas faire tout ce qu'il veut sur Mac, en plus comme OS X est un peu a la traine dans son support d'OpenGL, ca doit leur compliquer les choses, ils ne peuvent pas directement intégrer les optimisations faites sur les derniers drivers Windows et Linux. Je suis très curieux de savoir comment tu connait les details de la collaboration Apple/nVidia, Apple/Intel et Apple/AMD. Si tu as des liens je suis interessé, sinon ca reste comme un peu spéculatif. D'Ailleurs c'est ce que je te demandais dans un post précédent.
avatar joneskind | 
@Stardustxxx : 'Je suis très curieux de savoir comment tu connait les details de la collaboration Apple/nVidia, Apple/Intel et Apple/AMD. Si tu as des liens je suis interessé, sinon ca reste comme un peu spéculatif. D'Ailleurs c'est ce que je te demandais dans un post précédent.' Je ne connais pas les liens Apple/AMD. Je sais comme beaucoup que Apple et Nvidia communiquent peu (je l'ai lu ici à de nombreuses reprises) et je suis capable d'observer la différence entre Nvidia sur PC et Nvidia sur Mac (en comparant ce qui est comparable, or DirectX donc, en OpenGL et en natif) - Pour ce qui de Apple/Intel c'est plutôt sur les forums Linux que j'ai appris que Intel communiquait tout ce qu'on lui demandait pour optimiser son matériel. J'en ai déduit que la communication Apple/Intel devait être beaucoup plus simple. Et il semble que ce soit le cas. Il y a d'autres éléments qui vont dans mon sens. Intel participe activement à OpenCL qui est un concurrent de CUDA. Par ailleurs, j'ai vu ici il y a peu de temps que Nvidia faisait un peu le forcing pour que les développeurs intègrent CUDA plutôt que OpenCL. Je pense donc qu'il y a conflit d'intérêt entre Apple et Nvidia. C'est sûrement aussi pour ça qu'Apple pousse plus ou moins Nvidia vers la sortie (Nvidia n'est là que sur l'iMac 27" et les MBP(r) 15"). Je pense qu'Apple voudrait bien que OpenCL se démocratise, pour faire de l'ombre à DirectX (j'ai lu qu'Apple mettait à disposition les API OpenCL dans XCode à destination des développeurs de jeu). Mais Nvidia joue les perturbateurs. D'abord parce que DirectX et Nvidia fonctionnent très bien ensemble (donc un argument en faveur de Windows sur Mac) et ensuite parce que Nvidia marche sur les platebandes d'Apple avec CUDA (comment justifier que FCPX utilise OpenCL plutôt que CUDA si ce dernier fait mieux ?) mais c'est effectivement pure spéculation.
avatar Stardustxxx | 
@ joneskind Sur Windows, nVidia fournit un driver OpenCL depuis un bon moment, c'est Intel qui a été le dernier a sortir un driver compatible OpenCL... OpenCL n'est pas un concurrent de DirectX, juste de DirectCompute. Tu veux comparer lers performances en DirectX, en OpenGL et en OpenGL natif. Si tu veux comparer les performances entre Mac et Windows, tu doit comparer ce qui est comparable. Donc sur OS X ton jeu sera en OpenGL, l'ideal sera de le comparer a la version OpenGL sur Windows (si elle existe), ex WoW dispo sur Mac et PC. Tu ne peux pas comaprer en utilisant Wine ou Cider, tu te retrouves avec une couche de translation qui te bouffe tes perfs. Pour ce qui est d'OpenCL, c'est tres facile de developper avec, il suffit d'avoir les headers, et les libs. Sur windows il te suffit d'installer le sdk opencl de nVidia par exemple, ou celui d'AMD, ou celui d'intel. Si FCPX utilise OpenCL c'est tout simplement qu'OpenCL a été crée par Apple... nVidia a tendance a proposer sa propre solution, quelle surprise. AMD fait la meme chose avec sa solution Stream SDK. OpenCL/CUDA c'est un remake OpenGL/Direct3D. Bien evidemement qu'Apple donne a disposition OpenCL dans XCode, c'est eux qui l'on créer... Et pourquoi juste au developpeurs de jeux, les autres y ont pas droit? C'est surtout les scientifiques qui profitent d'OpenCL/CUDA, et dans une moindres mesure les developpeurs de jeu. Il y a beaucoup d'erreur factuelles dans tes propos et beaucoup de spéculation. C'est bien de lire, mais de developpez en OpenCL ou OpenGL c mieux pour comprendre. Bon WE.

Pages

CONNEXION UTILISATEUR