Startup-Unternehmen härtet Nvidia: Emuliert CUDA auf AMD-Karten und Originalprogramme können direkt kompiliert und ausgeführt werden

WBOY
Freigeben: 2024-07-19 05:36:39
Original
1100 Leute haben es durchsucht

Ohne Modifikation oder Konvertierung kann die AMD-Grafikkarte das ursprüngliche CUDA-Programm ausführen!

Ein britisches Start-up-Unternehmen hat ein CUDA-Programmkompilierungstool für AMD auf den Markt gebracht, das für die kommerzielle Nutzung kostenlos ist.

Sobald das Tool veröffentlicht wurde, löste es heftige Diskussionen unter Internetnutzern aus und stand ganz oben auf der HackerNews-Hotlist.

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

Das Tool heißt SCALE und der Entwickler positioniert es als GPGPU-Programmier-Toolkit (General Purpose GPU).

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

Derzeit haben 9 Programme, darunter das große Modellframework lama-cpp, den Test bestanden und laufen normal.

Im Gegensatz zu anderen Implementierungsmethoden simuliert SCALE direkt die Installation des CUDA-Toolkits und muss nicht in andere Sprachen konvertiert werden, um die Kompilierung aus dem Quellcode abzuschließen.

Daher kann SCALE auch Unterstützung für NVIDIA-spezifische Zwischensprachen wie Inline-PTX bieten.

Keine Konvertierung erforderlich, lassen Sie AMD CUDA ausführen

Die offizielle Website-Einführung zeigt, dass SCALE hauptsächlich aus drei Komponenten besteht: kompatibler NVCC-Compiler, AMD-Implementierung der CUDA-Laufzeit- und Treiber-API sowie ROCm-Bibliothek.

Der Compiler kann Programme, die in CUDA-spezifischen Sprachen wie nvcc, Inline-PTX usw. geschrieben sind, direkt in Binärcodes kompilieren, die auf AMD-GPUs ausgeführt werden können. Die

ROCm-Bibliothek wird zur Bereitstellung der „CUDA-X“-API verwendet, die von SCALE beim Umgang mit Bibliotheken wie cuBLAS und cuSOLVER verwendet wird.

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

Die wichtigste Innovation von SCALE besteht darin, CUDA-Programme unverändert zu akzeptieren, ohne sie in eine andere Sprache portieren zu müssen, und ist mit mehreren Kompilierungsmethoden wie nvcc und clang kompatibel, während vorhandene Build-Tools und Skripte (wie cmake ) Es funktioniert gut.

Laut offizieller Aussage ist SCALE vollständig mit CUDA kompatibel, sodass Entwickler keine separaten Codes für verschiedene GPU-Plattformen schreiben müssen.

Dies unterscheidet sich stark vom von AMD eingeführten HIP, da HIP den CUDA-Code auf eine bestimmte Weise neu schreibt, bei komplexen Makros möglicherweise nicht richtig verstanden wird und keine proprietären Sprachen wie Inline-PTX unterstützt.

Sogar der SCALE-Autor glaubt, dass HIP das CUDA-Kompatibilitätsproblem nicht lösen kann.

Darüber hinaus ist die Sprache von SCALE eine Obermenge von CUDA und bietet einige optionale Spracherweiterungen, die es Entwicklern, die nvcc loswerden möchten, einfacher und effizienter machen können, GPU-Code zu schreiben.

Der Autor äußerte die Hoffnung, dass Entwickler in Zukunft Code nur einmal schreiben und auf verschiedenen Hardwareplattformen ausführen können, und arbeitet daran, die Kompatibilitätslücke zwischen der beliebten Programmiersprache CUDA und anderen Hardwareanbietern zu schließen.

Derzeit unterstützt SCALE die AMD-GPU-Serien wie folgt:

Bereits unterstützt: gfx1030 (RX6000-Serie) und gfx1100 (RX7000-Serie)

„scheint zu funktionieren“: gfx1010 (RX5000-Serie) und gfx1101

Anpassung an: gf x900 ( RX Vega-Serie)

Darüber hinaus hat der Autor einige CUDA-Open-Source-Projekte getestet und 9 CUDA-Anwendungen erfolgreich mit SCALE ausgeführt.

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

SCALE ist jedoch schließlich ein brandneues Projekt, daher hat der Autor auch eine Reihe von Tutorials von der Installation bis zur Kompilierung vorbereitet, die verschiedene Arten von Beispielprogrammen enthalten.

Die wichtigsten Schritte des Tutorials werden alle von relevanten Codes begleitet und enthalten sogar die Anleitung zur Bestimmung des Modells Ihrer eigenen GPU, die als sehr detailliert bezeichnet werden kann.

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

Wenn Sie während der Verwendung auf Probleme stoßen, stellt der Autor auch gängige Methoden zur Fehlerbehebung vor und eröffnet außerdem ein Discord-Forum, um direkt mit dem Entwicklungsteam zu kommunizieren.

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

Das Startup, das SCALE gegründet hat, heißt Spectral Compute. Es wurde 2018 in Großbritannien gegründet. Es behauptet, über ein tiefgreifendes Verständnis der Architektur von CPU und GPU zu verfügen, und sein Ziel ist es, Entwickler bei der effizienten Nutzung zu unterstützen Rechenressourcen.

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

Netizen: NVIDIAs Burggraben herausfordern?

Einige Internetnutzer glauben, dass, wenn SCALE wirklich den beworbenen Effekt erzielen kann, es den Burggraben von NVIDIA herausfordern und es AMD ermöglichen wird, direkt mit ihm zu konkurrieren.

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

Allerdings ist es jetzt noch zu früh, um eine Schlussfolgerung zu ziehen. Schließlich gibt SCALE offiziell zu, dass es im Vergleich zum ursprünglichen CUDA noch einige Mängel gibt.

Und der Entwickler machte auch klar, dass einige CUDA-APIs und -Funktionen nicht unterstützt werden, gab aber keine konkrete Liste an.

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

Zu weiteren Mängeln der „AMD-Lösung“ sagte ein Internetnutzer, der behauptete, mit dem SCALE-Team kommuniziert zu haben, dass das aktuelle SCALE TensorCore nicht betreiben kann, was bedeutet, dass das FlashAttention-Beschleunigungsframework nicht auf AMD ausgeführt werden kann.

Da die N-Karte außerdem über eine leistungsstarke Matrixmultiplikationseinheit verfügt, ist die Leistung der AMD-Karte möglicherweise nicht so gut wie die der N-Karte, selbst wenn diese kompiliert und ausgeführt werden kann.

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

Einige Internetnutzer glauben, dass der Grund für die Dominanz von NVIDIA darin besteht, dass AMD nicht bereit ist, in die Verbesserung der maschinellen Lernleistung seiner GPU zu investieren (anstatt nur den Vorteil von CUDA zu nutzen).

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

Auch wenn sie effizient laufen können, ist es auch eine Frage, ob AMD-Karten wirklich erschwinglich und zugänglich sind.

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

Es gibt auch eine Welle von Internetnutzern, die glauben, dass das größte Problem nicht darin besteht, ob es technisch läuft, sondern in den rechtlichen Fragen dahinter.

Dieses Thema hat ebenfalls umfangreiche Diskussionen ausgelöst, aber es gibt noch kein Ergebnis.

Manche Leute denken, dass SCALE rechtlich genauso fragwürdig ist wie ZLUDA (eine andere Möglichkeit, CUDA-Programme auf AMD auszuführen) und zu Klagen von NVIDIA führen könnte.

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

Konkret erlaubt das CUDA SDK gemäß den EULA-Bedingungen von NVIDIA nur die Entwicklung von Anwendungen, die auf N-Karten laufen, was kompatible Implementierungen wie SCALE möglicherweise verbietet.

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

Aber einige Internetnutzer sagten sofort, dass SCALE nicht NVIDIAs „SDK“ verwendet. Wie soll man also über die SDK-Nutzungsvereinbarung sprechen?

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

Kurz gesagt, ob es nun technische Mängel oder rechtliche Fragen sind, die Diskussionen über dieses neue Tool dauern noch an.

Ob es nützlich ist oder nicht, müssen die Entwickler mit ihren Füßen abstimmen.

Referenzlink:

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

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

Dieser Artikel stammt vom öffentlichen WeChat-Konto: Qubit (ID: QbitAI), Autor: Cressy

Das obige ist der detaillierte Inhalt vonStartup-Unternehmen härtet Nvidia: Emuliert CUDA auf AMD-Karten und Originalprogramme können direkt kompiliert und ausgeführt werden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:ithome.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage