MoltenVK API rapproche Vulkan de Metal

Christophe Laporte |

The Brenwill Workshop a annoncé un jeu d’API qui intéressera particulièrement les développeurs de jeux. MoltenVK API doit permettre aux développeurs de porter les jeux exploitant les API Vulkan 3D sur iOS et macOS.

Vulkan est une API graphique conçue aussi bien pour les ordinateurs que les terminaux mobiles (lire : Vulkan vient défier Metal et DirectX 12).Par rapport à OpenGL, elle offre plus de contrôle aux développeurs. Ceux-ci peuvent notamment gérer la mémoire et le multi-threading de manière efficace. Le pilote de la carte graphique est donc moins sollicité et les performances s’en retrouvent améliorées. Dans l’esprit, c’est assez similaire à ce que fait Apple avec Metal.

Le monde des API graphiques de prochaine génération peut se présenter de la manière suivante :

  • Metal est disponible uniquement sur les systèmes d’Apple
  • DirectX 12 ne marche que sous Windows 10
  • La force de Vulkan est de fonctionner sur l’ensemble des systèmes à l’exception de ceux d’Apple

De ce point de vue, les API MoltenVK viennent combler un manque. Elles permettront aux développeurs d’adresser plus facilement l’ensemble des plates-formes. De plus, l’un des gros intérêts de MoltenVK API, c’est d’offrir une prise en charge native de Metal.

Pour les développeurs, c’est tout bénéfice. Ils pourront sans trop d’effort obtenir de très bonnes performances sur macOS et iOS. Si Vulkan décolle notamment dans les jeux, cela pourrait paradoxalement profiter à Apple, qui a longtemps souffert (sur Mac essentiellement) de la domination de DirectX.

Sur Mac, Metal fait des petits miracles. On l’a vu récemment avec Legion, la prochaine extension de World of Warcraft, qui sera disponible fin août. Celle-ci se distingue de ses prédécesseurs par la gestion de Metal. Un testeur a obtenu sur son iMac 5k un rafraîchissement plus élevé (de 70 à 90 i/s) là où il peinait à obtenir plus de 30 i/s avant l’extension (lire : Metal fait des miracles avec World of Warcraft : Legion). On rappellera enfin que Sierra utilise beaucoup plus Metal qu’El Capitan.

avatar fousfous | 

Mieux vaut Metal justement qui a une bien meilleur optimisation qu'une quelque chose de multi plateforme
Faut pas que ça risque de détourner les devs de l'optimisation avec metal, on voit bien ce que ça donne quand ils utilisent du libre et multi plateforme comme openCL...

avatar byte_order | 

Cela ne concerne que les devs de moteurs de rendu ou de calcul, ce besoin d'optimisation pour chaque plateforme ou chaque brique technologique.

Les devs qui implémentent du rendu ou du calcul, eux, s'appuient sur ces moteurs. Eux, leur souci c'est d'optimiser leur rendu, leur calcul, pas le moteur qui les exécutent.

Par ailleurs, il n'y a aucune raison d'opposé libre, multiplateforme et optimisation.
vlc, ffmpeg, python numpy, opengl, qt par exemple sont là pour le prouver.

Si OpenGL et OpenCL ne sont pas au top sur iOS et macOS, c'est essentiellement parce que Apple n'a rien fait pour que le hardware soit à la hauteur des plateformes concurrentes et que les pilotes OpenGL et OpenCL soient aussi performants que sur les autres plateformes. Certes, on peut argumenter que l'architecture de OpenGL est trop vieille et le vrai goulot d'étranglement, c'est factuel, mais ce goulot a toujours été plus étroit chez Apple qu'ailleurs, et ça c'est de leur faute...

avatar C1rc3@0rc | 

+1

faut rajouter a cela que Vulkan est aussi et surtout le successeur d'OpenGL et qu'a ce titre tout soft utilisant aujourd'hui OpenGL utilisera Vulkan dans le futur, la couche de bas niveau de Vulkan étant un ajout a OpenGL... Vulkan conserve donc le niveau d'abstraction actuel d'OpenGL tout en rajoutant l'accès matériel. De son coté Metal ne prend en charge que la bas niveau et ne va certainement pas améliorer le support déficient d'OpenGL chronique chez Apple.

De toute facon cela n'a pas d'importance, vu la déficience graphique chez Apple niveau des ordinateurs et les spécificité des iDevice avec la prochaine génération de GPU made in Apple, va pas y avoir foule pour écrire des applications graphiques et encore moins de jeux optimisé sur les matériels Apple: soit les dev auront accès a un moteur graphique universel, soit les softs n'existeront de toute façon pas sur les OS d'Apple...

Apple a fait 2 erreurs majeures: ne pas suivre OpenGL et Vulkan (alors qu'Apple est membre du Kronos Group, un comble) et s'amouracher exclusivement d'AMD en rejetant Nvidia.

avatar françois bayrou | 

C'est Apple qui a créé OpenCL avec Snow Leopard, avant de l'ouvrir et de l'abandonner à son sort.
Ca ne donne pas spécialement envie aux développeurs de se jeter à corps perdu dans Metal.

avatar byte_order | 

On est bien d'accord.
D'ailleurs ce problème de confiance est une tendance générale, tant sur le matériel que sur les briques technos d'Apple...
Comment parier des sommes importantes (en temps ou en euros) dans pareille condition !?

avatar oomu | 

La confiance. Oui.

avatar moon21 | 

j'utilise Cinema 4d . OpenCL devait permettre d'aller plus vite sur les rendus .
AMD, Apple, Maxon (Editeur de c4d) se renvoient la faute.
Personne n'optimise sa partie logicielle. Ca dure depuis des années, aucune raison que ça change.

La grosse arnaque est qu'on nous a fait croire que openCL allait être un standard. Apple a freiné des 4 fers et nous met Métal entre le tronc et l'écorce ....

Ajoutez à ca des tas de moteurs de rendu qui ne vivent que sur une base Cuda et n'ont aucune raison de passer sur openCL et vous avez un marché Mac Pro qui meurt, qui ne sert à rien et qui donne envie de switcher sur PC.

Enfin, avec mon Mac Pro 2013 a plus de 6000 e les vannes des potes sur pc sont courantes. Je passe pour le con de service qui a mis plein de fric dans un machin obsolète.

A ce prix je pouvais monter au moins 2 gros PC largement plus puissants .

mais au delà de l'argent , Apple nous a trahi et plus grave, nous empêche d'accéder à des tas de technologies.
Ca c'est quasiment de la dictature, mais j'ai encore le choix de ne plus acheter Apple.

Oui je suis furieux parce que c'est un outil de travail.
Pour jouer j'ai une ps4 .

avatar patrick86 | 

"Ca c'est quasiment de la dictature, mais j'ai encore le choix de ne plus acheter Apple."

Donc ce n'est pas une dictature. ;-)

avatar wip | 

Il a bien dit "quasiment"...

avatar patrick86 | 

@wip :

Ce à quoi je réponds "pas du tout".

avatar marc_os | 

@ patrick86
Ceci dit, en interne, toute entreprise fonctionne sur des bases dictatoriales - ou si le terme choque, sur des bases militaires : L'employé n'a dans 99% des cas qu'une seule chose à dire :
« Chef, Oui chef ! »
Et ne pas obéir à son supérieur hiérarchique est une raison juridiquement suffisante pour se faire licencier.

avatar C1rc3@0rc | 

Non, une entreprise est un outil de production.
Qualifier son modele de gestion de dictature ou de democratie n'a aucun sens.
Une dictature ou une democratie sont des modeles de gestion sociale qui s'appliquent uniquement a des societés (des nations, des clans, des tribus,...) et certaienement pas a des entreprises.
L'objectif d'une entreprise c'est de produire, dans un secteur ou un domaine tres limité. L'objectif d'une societe c'est d'harmoniser la vie entre individus afin d'assurer sur le long terme la vie des individus composants la société.
Certes certains escrocs neo-liberaux veulent faire croire qu'une societé peut se gerer comme une entreprise, mais c'est un non-sens.
La seule production d'une societe c'est la societe... et cela n'a pas de valeur marchande et encore moins de critères financiers, puisque le commerce et la finance sont des outils de gestion des sous-relations d'échanges de valeurs matérielles au sein d'une société...

aprés moon21 parle d'OpenCL.
OpenCL est une couche d'abstraction sous la forme d'une API qui devait faciliter la programmation parallèle, et notamment d'utiliser de manière transparente le GPGPU ou le multiprocessing.
Ça n'a rien a voir avec Vulkan ou Metal (a la limite OpenCL suit CUDA, et encore).
Et Apple a reussi tout de meme a flinguer OpenCL avec Grand Central, ou comment s'auto concurrencer alors qu'on est minoritaire et flinguer ses efforts pour créer des standards... Aprés ça comment Apple peut ne pas passer pour le bouffon de service avec Metal?

avatar thebarty | 

@C1rc3@0rc :
Soporifique.

avatar françois bayrou | 

Ce n'est en effet pas une dictature, mais une escroquerie. Un gros foutage de gueule.
Reviens en arrière, regardes le discours de Apple sur OpenCL à sa sortie, regardes où on en est maintenant.

Je me demande si OpenCL n'a pas été qu'une opération de marketing, prévue uniquement, spécifiquement, pour vendre des macpros à 6000 balles pendant 3 ans.

avatar en ballade | 

@françois bayrou :
Qui a dit qu'il fallait croire Appl€ qui mise tout sur ses iphones?

avatar thebarty | 

@en ballade :
Couché !

avatar thebarty | 

@en ballade :
PS: est-ce qu'une fois dans ta lamentable participation ici, tu envisages d'argumenter pour de vrai ? Non ? Alors, au revoir, troll de dernier niveau.

avatar byte_order | 

Le Mac Pro lui même est une opération marketing, en pratique.

avatar marc_os | 

@ françois bayrou
Pourrais-tu préciser en quoi consiste l'escroquerie ?
En quoi Apple tromperait ses clients ?
Dès le départ les clients connaissaient les limites des nouveaux Mac PRO en ce qui concerne leur carte graphique.
L'escroc, ça m'a l'air plutôt toi qui assène ses préjugés comme si c'était des vérités.

avatar françois bayrou | 

Pour t'expliquer je dois revenir un peu dans le temps.

2008, sortie de OpenCL :
https://www.macg.co/os-x/2008/11/opencl-acc%C3%A9l%C3%A9r%C3%A9-pour-snow-leopard-76803

Marrant, dans les commentaires, le post de Gavroche :
"La vache... j'attends avec impatience Handbrake écrit en OpenCL pour que mon mac miniencode en H.264 à la vitesse de la lumière ... :-))))))"

Bon, aux dernières nouvelles ( 2015 ) , et selon les devs de Handbrake : "Most people will find it hard to tell the difference."

Donc tu vois, la vitesse de la lumière, c'est pas gagné.
OpenCL n'a pas tenu ses promesses. Apple n'a pas tenu ses promesses.

Entre temps, et avant que Gavroche ne réalise que OpenCL ne lui apportera rien, Apple a sorti un nouveau bouzin, le MacPro.
Article de 2013 :
https://www.macg.co/2013/06/les-nouveaux-mac-pro-pens%C3%A9s-pour-opencl-70675

Lis bien cet article. Deux GPUs, correctement exploités grâce à OpenCL.
Il est pas donné l'engin ! Mais OpenCL va lui apporter le powaaaaahhhh

Des utilisateurs ont acheté cette machine pour ça.

Bon, retour au présent, on est en 2016, MacPro / OpenCL, 6000 Euros, d'après toi, bon investissement ? Mauvais investissement ?
D'après Moon21, c'est pas top, il semble légèrement regretter son achat.
Il n'a pas tort !
Un vulgaire PC avec une Nvidia, ca coûte 2x moins cher et c'est plus rapide.

Voilà, elle est là, l'escroquerie.

Des ventes basées sur des promesses qui n'ont pas été tenues.

Mais comme on dit, les promesses n'engagent que ceux qui les écoutent n'est ce pas Moon21 :)

avatar nicolas | 

@moon21 :
Passe à Blender + Cycles

avatar oomu | 

L'abandon généralisé d'opencl est une trahison aux conséquences profondes.

Ho bien sur on peut me citer Blender+cycles. Mais cycles n'est qu'un élément. Pour un blender on a 150 produits du marché passé à cuda avec d'excellents résultats et en face Apple qui est resté sue sur amd et opencl qui végéte dans os x.

Et surtout: pas de mises à jour des machines ! Cela rend impossible de rassurer les éditeurs et d'investir sur quoi que ce soit de spécifique.

-
Blizzard a porté wow à metal et c'est tout à leur honneur. Mais wow est un jeu de 2004 avec déjà des abonnés fidèles sur mac. Mais il n'y a aucun projet d'avenir de Blizzard pour mac/metal ni quiconque.

Et encore une fois il y a confusion entre openCl et metal. Metal c'est une réponse à directx12 / opengl-vulkan

Opencl l'était à cuda. Mais au final sur mac on se retrouve rapidement sans opencl NI cuda. Pas de suivi par Apple, pas de mise à jour matérielle, pas de gamme.

-
Pas grave, quand je renouvellerai mes logiciels et machine, je ferai un pc du mieux que le marché me laissera faire. Et je ragerai sur windows ou tenterai d'expérimenter avec linux. La routine.

Tout ne peut pas etre fait sur iphone ou un macbook pro hypothétique à barre tactile. Un mac hypothétiqur, ça calcule pas.

Y aura t'il encore un mac de travail quand je voudrai le renouveler ?

avatar marc_os | 

@ oomu
« Y aura t'il encore un mac de travail quand je voudrai le renouveler ? »
Oui, il y en aura.
Un mac qui convienne à ton travail à toi c'est pas sûr, mais en ce qui concerne mon activité, je n'ai aucune inquiétude. On peut ajouter tous, absolument tous les postes de développement pour le web, pour Mac et iOS bien sûr aussi, et tout, absolument tout poste de type "secrétariat". Et la liste n'est pas exhaustive. Par contre pour ton cas perso et celui des gens dans ton cas, c'est sûr, c'est pas sûr.
Enfin, fait attention le jour où tu voudras changer de ne pas jeter le bébé avec l'eau du bain. Peut-être gagneras-tu une demi-heure par jour en productivité sur un logiciel bien particulier. Peut-être. Mais si c'est pour au final se prendre la tête avec Windows et perdre encore plus de temps...
Quant à Linux, je doute que le nombre de domaines où le gain en productivité par rapport à un Mac est significatif soit énorme.

avatar byte_order | 

Si c'était qu'une demi-heure de perdue par jour, on en parlerait même pas.

avatar huexley | 

@marc_os

Après moi le déluge donc... Sinon y a des gens qui bossent sur Windows et qui n'ont pas de problème et d'autres sur Mac qui n'ont que des problèmes... Je t'invite à aller un oeil dans les forums "reagissez" ou je partage une mésaventure que j'ai avec Apple ;)

Apple, les entreprises ils n'en ont plus rien à secouer.

avatar françois bayrou | 

"Un mac qui convienne à ton travail à toi c'est pas sûr"

Et pour toi c'est pas problématique, ça ?

En 2020, y aura-t-il un mac qui lui permette de faire, ce qu'il faisait en 2010 quand on était en 2010 ? Non. le mac, qui fut parfois considéré comme supercalculateur ( G4 ) , finira tout bon à coder des pages web et des coussins péteurs.
Pas bien grave ni pour toi, ni pour moi.

Mais c'est un minimum de reconnaitre l'évolution du mac, qui limite de plus en plus la liste de ce qu'on peut faire avec.
Parmi ceux qui utilisaient un mac il y a 10 ans, certains risquent fort de devoir changer de crèmerie dans 10 ans.

Au passage, conséquence directe : Metal, tout le monde s'en bat les couilles.

"les postes de développement pour le web, pour Mac et iOS bien sûr aussi, et tout, absolument tout poste de type "secrétariat"."

Tu vois ? la cible, telle que TU l'as décrite : les devs web, les secrétaires : ben ils s'en battent les couilles de Metal ...

avatar ovea | 

Pourquoi c'est pas possible de développer sur un iPhone, non mais franchement !?!?
En particulier pour la 3D …

En fait c'est possible pour ce qui est de l'affichage en faisant les calculs ailleurs et de récupérer le flux vidéo en streaming :-))

avatar françois bayrou | 

Externaliser le CPU, le GPU, c'est clairement l'avenir, et ca a déjà commencé.
Les consoles de jeu auront des GPUs rikiki, qui sauront juste décoder du H264.

https://fr.wikipedia.org/wiki/OnLive

il y a tellement d'avantages pour les vendeurs de logiciels : mises à jour en live, vente d'abonnements ( ca passe toujours mieux qu'un jeu à 70 balles ), piratage moins facile, ...

Ce jour là on pourra jouer sur macbook avec une résolution en 4k à 120 images secondes, et faire des rendus 3D de malade en un quart de seconde

En attendant, on n'y est pas encore, ça serait bien qu'ils mettent de vrais GPUs dans leurs machines :)

CONNEXION UTILISATEUR