Metal vs OpenGL ES : les performances comparées
Apple présente Metal, l’API graphique bas niveau introduite dans iOS 8 et qui a trouvé récemment le chemin d’OS X, comme une technologie majeure, capable d’améliorer sensiblement les performances graphiques. La sortie de l’application de benchmark GFXBench Metal permet de comparer fidèlement les performances obtenues avec Metal d’avec celles tirées d’OpenGL ES (via GFXBench GL), l’API graphique mobile multiplateforme qui prévalait jusqu’alors.
AnandTech a fait une série de tests qui confirment le gain de performances, plus ou moins important selon l’opération. Sur le test Driver Overhead (Offscreen), les performances avec Metal sont environ quatre fois supérieures à celles avec OpenGL ES ! Ce test consiste à rendre de nombreux objets les uns après les autres, une façon de procéder qui n’est jamais utilisée dans les jeux, mais qui permet de voir très clairement les bénéfices de Metal.
Dans les tests plus concrets, comme Manhattan et T-Rex HD (en Offscreen) qui opèrent comme des jeux vidéo classiques, la hausse des performances est moins impressionnante, mais reste appréciable. L’iPad Air 2 affiche environ 10 % d’images par seconde en plus avec Metal.
Surtout, la nouvelle API graphique permet de réaliser des choses qui ne sont pas possibles avec OpenGL ES. C’est le cas de la démo technologique Epic Zen Garden, qui affiche des milliers de particules simultanément en 1 440 x 1 080 et avec de l’anti-aliasing x4.
Comme le note AnandTech, si Metal est si important, c’est parce que les performances des GPU évoluent plus rapidement que celles des processeurs. À chaque présentation de nouvel iPad, Phil Schiller retrace le chemin parcouru depuis le premier modèle. Il est toujours frappant de voir que les performances ont été décuplées en une poignée d’années seulement, mais les graphiques ne rendent pas bien compte de la dichotomie entre les progrès réalisés sur le CPU et ceux sur le GPU.
Si on met ces courbes dans un même graphique, on comprend mieux que là où il faut aller chercher la hausse des performances, c’est dans le GPU.
Toutefois, tous les terminaux iOS ne peuvent pas profiter de Metal. Il faut qu’ils soient au moins équipés d’un processeur A7 (à partir de l’iPhone 5s, iPad mini Retina et iPad Air). Or, Apple commercialise encore des appareils équipés d’un processeur plus ancien et iOS 9 est compatible avec les puces A5. Pour s’assurer que leurs jeux et leurs applications soient compatibles avec le plus grand nombre d’appareils, les développeurs vont certainement privilégier OpenGL ES pendant encore un moment, d’autant que le développement est plus simple. Mais il ne fait aucun doute que l’utilisation de Metal va se démocratiser à moyen terme et qu’il va ainsi jouer un rôle capital dans les bonnes performances des systèmes d’Apple et des applications. Un Metal précieux en somme.
Metal sur Mac sera t-il compatible avec les Intel HD Graphics (3000 et later) ? Ou sera t-il seulement compatible avec les vrais GPU (Nvidia) ?
@Djipsy5 :
Le seul souci, c'est que Metal n'est compatible qu'à partir des Macs de 2012. C'est déjà les Intel HD 4000 me semble-t-il. Mais sinon, je pense que ça doit fonctionner sur les chipsets graphiques Intel même si je ne suis pas particulièrement penché sur la question.
@Djipsy5 :
Je dirais intel HD 4000
@Djipsy5 :
Seulement avec les HD4000 ou mieux
Unity switch automatiquement selon les capacités de l'appareil.
Vu le nombre de mac sans carte graphique dédié vaudrait mieux que ça soit compatible Intel !
Allez, un Half Life 3 en metal et je change mon iMac 2009 ;)
Il serait intéressent de pouvoir faire une comparaison de metal avec direct x 12 par la suite pour bien se rendre compte
Oui enfin, si on est pas joueur, toute ces comparaisons et l'intérêt de cet article s'effondre.
Alors peut être que les performances ont fait X180 pour les GPUs, mais ont est parti de loin! Alors c'est plus facile de faire de la progression.
Encore une fois, si le jeu ne nous intéresse pas, ou les graphismes HD avec pleins de FPS, un iPad 3 suffit encore largement.
@misterbrown :
Non … c'est un argument sans valeur aucune !
Exemple :
Je veux comprendre le corps humain
Je veux regarder la météo
Je veux regarder les étoiles
Je veux naviguer sur des cartes
Sur iOS application utilisant la carte graphique :
Atlas d'anatomie humaine
MeteoEarth
Star Walk
Sygic GPS
En ajoutant que l'enjeu de l'interaction en temps réel avec l'utilisateur passe par le graphisme ET SURTOUT le calcul pris en compte par la carte graphique et la bibliothèque de programmation qui va avec ici Metal (OpenGL et OpenCL)
Le scrolling dans n'importe quelle appli, les animations etc...
Par ailleurs entre un iPad 3 et un iPad Air 2 au niveau CPU y a déjà un facteur x5 à x6
Non, metal, ce n'est pas que pour les jeux, c'est aussi pour l'interface et les apps utilisant le gpu
@misterbrown :
J'ai un iPad 3, sous iOS 8, je ne m'en sert plus que pour visionner des vidéos, la seule chose pour laquelle il n'est pas à la rue.
L'interface, très lente, même en désactivant les effets, rend son utilisation épuisante.
Un iPad 4 serait peut être le minimum requis, non ?
@Lem3ssie :
Sur le iPad 4, l'interface reste fluide, même avec les effets activés. Il y a quelques saccades, mais le tout reste agréable à utiliser. Il n'y a que dans les jeux qu'on remarque une différence nette, par exemple dans Sims Build It, lorsqu'on déplace la caméra dans la ville c'est saccadé et tout est moins fluide. Comparé à mon iPhone 6 où il n'y a pas la moindre saccade. Mais bon, c'est comparé une A8 à une A6X, alors...
On parle de consoles de jeux la.
Du coup lié au bitcode de l ios 9 ts ceux qui sont sur iphone 4S et 5 auront Open GL et ceux au dela n auront que Metal sur leur iphone pr alleger l OS donc.
Ça sert à quoi de faire des tests offscreen?
A éviter que la résolution de l'appareil ne rentre en jeu ça permet donc de comparer des devices avec des résolutions différentes, mais c'est pas complètement représentatif.
@Crkm :
Ne pas prendre en compte les différentes résolutions d'écran et comparer des pommes avec des pommes...
Si les mêmes tests existent sur Mac mais pas en off-screen je prends :)
Les tests graphiques type T-Rex HD ont-il été réécrits pour tirer pleinement partie de Metal?
parce que je ne peux pas croire que le gain est inférieur à 10%.
à mon avis, le test ne reflète pas la réalité. je serais plus curieux de voir ce que donne des moteurs graphiques comme Unity ou UE4 réécrit pour Metal, par rapport à une version OpenGL ES
Je suis trop heureux de voir qu'Apple développe une nouvelle technologie qui lui permette avec le swift, d'améliorer les performances de ses applications.
Mais ça ne résout pas le problème de son manque de réactivité pour les mises à jour de OpenGL ... elle botte juste en touche en amenant une nouvelle surcouche logicielle.
"elle botte juste en touche en amenant une nouvelle surcouche logicielle."
Metal est une technologie concurrente et de plus bas niveau qu'OpenGL, ce n'est pas une surcouche à l'OpenGL.
@ lmouillart :
OpenGL ne pourrait-il pas profiter de Metal ?
C’est donc ça le Liquid Metal !
Un Metal si performant que tout est fluide ;-) Haha
Allez me dites rien, je sors. Laissez je connais la sortie —> [ •]
y'a pas de quoi crier à la révolution quand même...
quand on regarde les écarts réels, la différence est si minime qu'on se demande bien qu'elle est l'intérêt d'avoir développé une nouvelle API plutôt que de faire enfin l'effort de proposer un openGL descend et surtout à jour...
ha, on me dit dans l'oreillette que c'est encore pour fermer davantage le système à la concurrence... on m'aurait menti ?