Nvidia vante l'accélération par carte graphique

Florian Innocente |
A défaut d'infos de la part d'Apple on peut prendre la mesure de ce qu'OpenCL apportera dans Mac OS X Snow Leopard avec ce qui se fait chez d'autres. Nvidia et Nero, éditeur d'un très populaire logiciel d'encodage sur Windows, ont annoncé la sortie d'une mise à jour de cette application - Nero Move it - qui utilise maintenant la carte graphique du PC pour ses traitements.

Le logiciel s'appuie sur CUDA de Nvidia, une technologie qui donne les moyens aux développeurs de confier les calculs de leurs logiciels à la carte graphique. Il peuvent solliciter CUDA grâce à différents langages de programmation, dont OpenCL (voir aussi l'article OpenCL se montre peu à peu).

Nero explique dans son communiqué de presse que l'encodage d'une vidéo HD à destination d'un iPod ne prend plus que quelques minutes au lieu de quelques heures.

Un exemple plus précis est donné qui illustre un encodage vidéo AVI vers H.264 prenant 2h11 en utilisant le processeur du PC contre 34 min avec le processeur de la carte graphique. Dommage toutefois que la nature et surtout sa puissance de la puce principale de l'ordinateur ne soient pas indiquées, on aurait bien mieux jugé du bénéfice apporté. Si la puce est récente l'écart est spectaculaire, si elle date un peu, la performance est à relativiser.

Nerocuda

Tags
avatar misterbrown | 
Les benchs des constructeurs pour promouvoir LEUR technologie sont toujours drôles..
avatar CocoaPower | 
Le problème c'est que jusque maintenant Cuda profite surtout à Linux pour les applications scientifique. On espère voir OpenCL sur Mac mais le sentiment est que ça va arriver trop tard pour la sortie de Snow Leopard. Il y aura certainement une API pour OpenCL mais à quel point sera elle utilisé dans l'OS, mystère? La grande inconnue aussi c'est comment ça va s'intégrer avec Objective-C. Pour le moment c'est C++ qui est plébiscité et j'ai l'impression qu'on est laissé sur le coté. Si on se retrouve avec un nouveau truc comme le Vector Engine c'est franchement dégueux pour travailler.
avatar Gimli fils de Gloin | 
je suis chercheur en maths appliquées et je développe en Cuda. Je peux vous dire que les performances sont bien au rendez vous !
avatar SuMyDi | 
@CocoaPower Il me semble que rien n'empêche de mixer C, C++ et Objective-C dans un même projet. De plus, je pense qu'au niveau Cocoa, Apple va "wrapper" OpenCL dans un nouveau Framework (et mettre à jour ceux existant) : si le matériel le permet il y aura utilisation de la carte graphique, sinon ce sera seulement le CPU mais ce sera toujours la même API. Que demande le peuple ? Bon, par contre il faut attendre Snow Leopard...
avatar SuMyDi | 
@Gimli: Par curiosité j'ai quelques questions : - sur quelle plateforme développez-vous (OS, CPU, GPU) ? - Est-ce que pour des calculs de math appliquées les GPU sont assez précis ? Y-a-til des différences de résultat par rapport à un FPU conventionnel ?
avatar taigebu | 
Hmmmm... Un peu de HS mais c'est une question que je me pose... Youtube va t il se mettre a utiliser des cartes graphiques et OpenCL pour encoder les videos ? lol Sinon pour en revenir a la news c'est bien beau de montrer des graphiques mais nous ce qu'on veut c'est des demos concretes ! On a plus qu'a attendre la WWDC et (ptet) Snow Leopard...
avatar CocoaPower | 
@SuMyDi Il n'y a pas de problème a utiliser C, C++ et Objective-C, d'ailleurs il y a Qt qui est un framework de haut niveau construit au dessus de Cocoa. C'est sûr qu'Apple devrait utiliser ça dans ces propres codecs audio et vidéo, le framework QuickTime va certainement en profiter un max. Ce qui m'emmerde c'est qu'on doit toujours bricoler un max quand on veut programmer avec ces outils, ce serait cool si Apple pensait une fois aux développeurs et que nous aurions une API plus cohérente que les concurrent. Enfin, on verra, je vais pas critiquer avant de l'avoir vu, j'ai juste des inquiétudes. @SuMyDi Sur les doubles, Cuda respecte bien IEEE 754. En simple précision il y a une différence sur les modes d'arondis.
avatar arsinoe | 
[quote=misterbrown]Les benchs des constructeurs pour promouvoir LEUR technologie sont toujours drôles.. [/quote] Effectivement. D'autant que sur le graphe, il n'est pas précisé de quel CPU il s'agit. Je pense que nVidia a utilisé un des pires processeur qui existe. Mes propres test avec une Geforce 9400 et une core2duo 2.5 Ghz donnent 10% de gain avec l'encodeur fourni par nvidia. Pas de quoi s'ennuyer à optimiser des applis.. A mon avis, CUDA sera utilisé par quelques applis très spécifiques et nécessitera de très grosses cartes graphiques.
avatar Bouba | 
L'avantage qu'OpenCL offre, c'est que c'est un standard et qu'il est multi-qu'il fait abstraction du matériel utilisé, puisqu'ils supporte les cartes graphiques programmables... ati, nvidia, peu importe... Ça rend le tout beaucoup plus flexible pour les programmeurs, tout en offrant les mêmes vertus que les programmes cuda vivement snow leopard (pour votre info, il n'est pas impossible de croire que l'iphone puisse avoir droit à ces technologies et pourrait utiliser la carte graphique pour compresser des vidéos en temps réel... pratique pour faire de la vidéo-conférence en haute qualité!)
avatar RickDeckard | 
Euh, dans le bench, quel est l'interêt d'encoder un média en résolution absolument merdique (640*288 beurk) en HD 720p ? Perdre du temps ?
avatar McRoger | 
Au niveau des perfs de CUDA, l'écart ne m'étonne absolument pas. Au niveau calcul partagé sur SETI p.ex, une carte 9800 GT de base encode de 4 à 10 fois plus vite qu'un processeur Core2Duo (et je parle de la perf totale, tous coeurs inclus !).
avatar samigina00 | 
RickDeckard : tu m'as piqué mon commentaire ! (enfin tu as ete plus rapide que moi lol)
avatar Anonyme (non vérifié) | 
RickDeckard > Attend c'est une société spécialisée dans l'imagerie informatique, ils savent ce qu'ils font :-D En tout cas c'était bien vu

CONNEXION UTILISATEUR