Une start-up renforce Nvidia : émule CUDA sur les cartes AMD et les programmes originaux peuvent être compilés et exécutés directement

WBOY
Libérer: 2024-07-19 05:36:39
original
1082 Les gens l'ont consulté

Sans aucune modification ni conversion, les cartes graphiques AMD peuvent exécuter des programmes CUDA originaux !

Une start-up britannique a lancé un outil de compilation de programmes CUDA pour AMD, gratuit pour un usage commercial.

Dès que l'outil a été publié, il a suscité de nombreuses discussions animées parmi les internautes et est arrivé en tête de la liste chaude de HackerNews.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

L'outil s'appelle SCALE et le développeur le positionne comme une boîte à outils de programmation GPGPU (GPU à usage général).

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Actuellement, 9 programmes, dont le framework grand modèle llama-cpp, ont réussi le test et fonctionnent normalement.

Contrairement à d'autres méthodes d'implémentation, SCALE simule directement l'installation de la boîte à outils CUDA et n'a pas besoin d'être convertie dans d'autres langages pour terminer la compilation à partir des sources.

Par conséquent, SCALE peut également prendre en charge les langages intermédiaires spécifiques à NVIDIA comme le PTX en ligne.

Pas besoin de convertir, laissez AMD exécuter CUDA

L'introduction officielle du site Web montre que SCALE comporte trois composants principaux : un compilateur nvcc compatible, l'implémentation AMD du runtime CUDA et de l'API du pilote, et la bibliothèque ROCm.

Le compilateur peut directement compiler des programmes écrits dans des langages spécifiques à CUDA, notamment nvcc, inline PTX, etc. en codes binaires pouvant s'exécuter sur les GPU AMD.

La bibliothèque ROCm est utilisée pour fournir l'API "CUDA-X", qui est utilisée par SCALE lorsqu'il s'agit de bibliothèques telles que cuBLAS et cuSOLVER.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

La principale innovation de SCALE est d'accepter les programmes CUDA tels quels sans avoir à les porter dans un autre langage, et est compatible avec plusieurs méthodes de compilation telles que nvcc et clang, tandis que les outils et scripts de construction existants (tels que cmake ) Ça fonctionne bien.

Selon la déclaration officielle, SCALE est entièrement compatible avec CUDA, éliminant ainsi le besoin pour les développeurs d'écrire des codes séparés pour différentes plates-formes GPU.

C'est très différent du HIP lancé par AMD, car HIP réécrit le code CUDA d'une certaine manière, peut ne pas être correctement compris lorsqu'on rencontre des macros complexes et ne prend pas en charge les langages propriétaires tels que le PTX en ligne.

Même l'auteur de SCALE estime que HIP ne peut pas résoudre le problème de compatibilité CUDA.

De plus, le langage de SCALE est un sur-ensemble de CUDA, fournissant des extensions de langage facultatives qui peuvent rendre plus facile et plus efficace pour les développeurs qui souhaitent se débarrasser de nvcc pour écrire du code GPU.

L'auteur a exprimé l'espoir qu'à l'avenir, les développeurs ne pourront écrire du code qu'une seule fois et l'exécuter sur différentes plates-formes matérielles, et s'efforce de combler l'écart de compatibilité entre le langage de programmation populaire CUDA et d'autres fournisseurs de matériel.

Actuellement, SCALE prend en charge les séries de GPU AMD comme suit :

Déjà pris en charge : gfx1030 (série RX6000) et gfx1100 (série RX7000)

"semblent fonctionner" : gfx1010 (série RX5000) et gfx1101

Adaptation à : 00 ( Série RX Vega)

De plus, l'auteur a testé certains projets open source CUDA et a exécuté avec succès 9 applications CUDA à l'aide de SCALE.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Cependant, SCALE est un tout nouveau projet après tout, c'est pourquoi l'auteur a également préparé une série de tutoriels de l'installation à la compilation, donnant différents types d'exemples de programmes.

Les étapes clés du didacticiel sont toutes accompagnées de codes pertinents, et incluent même comment déterminer le modèle de votre propre GPU, qui peut être considéré comme très détaillé.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Si vous rencontrez des problèmes lors de l'utilisation, l'auteur présente également des méthodes de dépannage courantes et ouvre également un forum Discord pour communiquer directement avec l'équipe de développement.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

La startup qui a créé SCALE s'appelle Spectral Compute. Elle a été fondée au Royaume-Uni en 2018. Elle prétend avoir une compréhension approfondie de l'architecture du CPU et du GPU, et son objectif est d'aider les développeurs à les utiliser efficacement. ressources informatiques.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Internautes : Défier les douves de NVIDIA ?

Certains internautes pensent que si SCALE peut vraiment avoir un effet (comme annoncé), il remettra en question les douves de NVIDIA et permettra à AMD de rivaliser directement avec lui.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Cependant, il est trop tôt pour tirer une conclusion. Après tout, SCALE admet officiellement qu'il existe encore quelques défauts par rapport au CUDA original.

Et le développeur a également précisé que certaines API et fonctions CUDA ne sont pas prises en charge, mais n'a pas donné de liste spécifique.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Concernant d'autres lacunes de la "solution AMD", un internaute qui a affirmé avoir communiqué avec l'équipe SCALE a déclaré que la SCALE actuelle ne peut pas faire fonctionner TensorCore, ce qui signifie que le framework d'accélération FlashAttention ne peut pas être exécuté sur AMD.

De plus, étant donné que la carte N dispose d'une puissante unité de multiplication matricielle, même si elle peut être compilée et exécutée, les performances de la carte AMD peuvent ne pas être aussi bonnes que celles de la carte N.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Certains internautes pensent que la raison pour laquelle NVIDIA est dominant est qu'AMD n'est pas disposé à investir pour que son GPU ait des performances d'apprentissage automatique plus élevées (au lieu de simplement avoir l'avantage de CUDA).

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Même si elles peuvent fonctionner efficacement, il s'agit également de savoir si les cartes AMD sont vraiment abordables et accessibles.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Il y a aussi une vague d'internautes qui pensent que le plus gros problème n'est pas de savoir si le système peut fonctionner techniquement, mais les problèmes juridiques qui se cachent derrière.

Cette question a également déclenché de nombreuses discussions, mais il n'y a pas encore de conclusion.

Certaines personnes pensent que SCALE a des doutes juridiques comme ZLUDA (une autre façon d'exécuter des programmes CUDA sur AMD) et peut conduire à des poursuites judiciaires de la part de NVIDIA.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Plus précisément, selon les termes du CLUF de NVIDIA, le SDK CUDA permet uniquement le développement d'applications qui s'exécutent sur des cartes N, ce qui peut interdire les implémentations compatibles comme SCALE.

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Mais immédiatement certains internautes ont dit que SCALE n'utilisait pas le « SDK » de NVIDIA, alors comment parler de l'accord d'utilisation du SDK ?

初创公司硬刚英伟达:在 AMD 卡上模拟 CUDA,原版程序直接编译运行

Bref, qu'il s'agisse de carences techniques ou de problèmes juridiques, les discussions autour de ce nouvel outil sont toujours en cours.

Quant à savoir si c'est utile ou non, c'est aux développeurs de voter avec leurs pieds.

Lien de référence :

[1]https://docs.scale-lang.com/

[2]https://news.ycombinator.com/item?id=40970560

Cet article provient du compte public WeChat : Qubit (ID : QbitAI), auteur : Cressy

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:ithome.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!