Inhaltsverzeichnis
Verwendung
Heim Technologie-Peripheriegeräte KI Die erste GPU-Hochsprache, massive Parallelität ist wie das Schreiben von Python, hat 8500 Sterne erhalten

Die erste GPU-Hochsprache, massive Parallelität ist wie das Schreiben von Python, hat 8500 Sterne erhalten

Jun 07, 2024 pm 12:03 PM
模型 训练

Nach fast 10 Jahren unermüdlicher Bemühungen und eingehender Forschung im Kern der Informatik haben die Menschen endlich einen Traum verwirklicht: die Ausführung von Hochsprachen auf GPUs.

Am vergangenen Wochenende löste eine Programmiersprache namens Bend heftige Diskussionen in der Open-Source-Community aus und die Anzahl der Sterne auf GitHub hat 8.500 überschritten.

首个GPU高级语言,大规模并行就像写Python,已获8500 Star

GitHub: https://github.com/HigherOrderCO/Bend

Als massiv parallele Programmiersprache auf hoher Ebene befindet sie sich noch im Forschungsstadium, aber die vorgeschlagenen Ideen haben bereits Menschen hervorgebracht fühle mich sehr ... überrascht. Mit Bend können Sie parallelen Code für Multi-Core-CPUs/GPUs schreiben, ohne ein C/CUDA-Experte mit 10 Jahren Erfahrung sein zu müssen, es fühlt sich einfach wie Python an!

首个GPU高级语言,大规模并行就像写Python,已获8500 Star

Ja, Bend verwendet Python-Syntax.

Bend ist ein Programmierparadigma, das ausdrucksstarke Sprachen wie Python und Haskell unterstützt. Es unterscheidet sich von Low-Level-Alternativen wie CUDA und Metal. Bend bietet eine schnelle Objektzuweisung, vollständige Schließungsunterstützung für Funktionen höherer Ordnung, unbegrenzte Rekursion und eine nahezu lineare Beschleunigung basierend auf der Kernanzahl. Bend läuft auf massiv paralleler Hardware und bietet HVM2-basierte Laufzeitunterstützung.

Der Hauptmitwirkende des Projekts, Victor Taelin, kommt aus Brasilien. Er teilte die wichtigsten Funktionen und Entwicklungsideen von Bend auf der X-Plattform.

Erstens ist Bend nicht für moderne Algorithmen für maschinelles Lernen geeignet, da diese Algorithmen stark reguliert sind (Matrixmultiplikation) und über vorab zugewiesenen Speicher verfügen und in der Regel bereits gute CUDA-Kernel geschrieben sind.

Der große Vorteil von Bend liegt in praktischen Anwendungen, da „echte Anwendungen“ normalerweise nicht über das Budget verfügen, um dedizierte GPU-Kerne herzustellen. Frage: Wer hat die Website in CUDA erstellt? Und selbst wenn es jemand tun würde, wäre es unmöglich, weil:

1 Eine echte Anwendung müsste Funktionen aus vielen verschiedenen Bibliotheken importieren und es gibt keine Möglichkeit, CUDA-Kernel für sie zu schreiben;

2 haben dynamische Funktionen und Abschlüsse;

3 Echte Anwendungen weisen dynamisch und unvorhersehbar große Mengen an Speicher zu.

Bend hat einige neue Versuche abgeschlossen und kann in einigen Fällen recht schnell sein, aber es ist jetzt definitiv nicht möglich, große Sprachmodelle zu schreiben.

Der Autor verglich die alte Methode mit der neuen Methode und verwendete denselben Algorithmusbaum für die bitonische Sortierung, einschließlich JSON-Zuweisung und -Operationen. Node.js beträgt 3,5 Sekunden (Apple M3 Max) und Bend beträgt 0,5 Sekunden (NVIDIA RTX 4090).

Ja, derzeit benötigt Bend eine ganze GPU, um Node.js auf einem einzelnen Kern zu schlagen. Andererseits ist dies jedoch noch ein neuer Ansatz im Entstehen begriffen im Vergleich zu einem JIT-Compiler, den ein großes Unternehmen (Google) seit 16 Jahren optimiert. Es gibt viele Möglichkeiten für die Zukunft.

Verwendung

Auf GitHub stellt der Autor kurz den Nutzungsprozess von Bend vor.

Installieren Sie zunächst Rust. Wenn Sie die C-Laufzeit verwenden möchten, installieren Sie einen C-Compiler (z. B. GCC oder Clang). Wenn Sie die CUDA-Laufzeit verwenden möchten, installieren Sie das CUDA-Toolkit (CUDA und nvcc) Version 12.x. Bend unterstützt derzeit nur Nvidia-GPUs.

Dann installieren Sie HVM2 und Bend:

cargo +nightly install hvmcargo +nightly install bend-lang
Nach dem Login kopieren

Schreiben Sie abschließend einige Bend-Dateien und führen Sie es mit einem der folgenden Befehle aus:

bend run<file.bend> # uses the Rust interpreter (sequential)bend run-c<file.bend> # uses the C interpreter (parallel)bend run-cu <file.bend> # uses the CUDA interpreter (massively parallel)
Nach dem Login kopieren

Sie können auch Gen-C und Gen verwenden -cu Kompilieren Sie Bend für die beste Leistung in eigenständige C/CUDA-Dateien. Aber gen-c und gen-cu stecken noch in den Kinderschuhen und sind weitaus weniger ausgereift als SOTA-Compiler wie GCC und GHC.

Parallele Programmierung in Bend

Hier finden Sie Beispiele für Programme, die in Bend parallel ausgeführt werden können. Beispielsweise kann der Ausdruck:

(((1 + 2) + 3) + 4)
Nach dem Login kopieren

nicht parallel ausgeführt werden, da + 4 von + 3 abhängt, was wiederum von (1+2) abhängt. Und der Ausdruck:

((1 + 2) + (3 + 4))
Nach dem Login kopieren

kann parallel ausgeführt werden, da (1+2) und (3+4) unabhängig sind. Die Voraussetzung dafür, dass Bend parallel ausgeführt werden kann, ist die Einhaltung der Parallellogik.

Sehen wir uns ein vollständigeres Codebeispiel an:

# Sorting Network = just rotate trees!def sort (d, s, tree):switch d:case 0:return treecase _:(x,y) = treelft = sort (d-1, 0, x)rgt = sort (d-1, 1, y)return rots (d, s, lft, rgt)# Rotates sub-trees (Blue/Green Box)def rots (d, s, tree):switch d:case 0:return treecase _:(x,y) = treereturn down (d, s, warp (d-1, s, x, y))(...)
Nach dem Login kopieren

该文件实现了具有不可变树旋转的双调排序器。它不是很多人期望的在 GPU 上快速运行的算法。然而,由于它使用本质上并行的分治方法,因此 Bend 会以多线程方式运行它。一些速度基准:

  •  CPU,Apple M3 Max,1 个线程:12.15 秒
  •  CPU,Apple M3 Max,16 线程:0.96 秒
  •  GPU,NVIDIA RTX 4090,16k 线程:0.21 秒

不执行任何操作即可实现 57 倍的加速。没有线程产生,没有锁、互斥锁的显式管理。我们只是要求 Bend 在 RTX 上运行我们的程序,就这么简单。

Bend 不限于特定范例,例如张量或矩阵。任何的并发系统,从着色器到类 Erlang 的 actor 模型都可以在 Bend 上进行模拟。例如,要实时渲染图像,我们可以简单地在每个帧上分配一个不可变的树:

# given a shader, returns a square imagedef render (depth, shader):bend d = 0, i = 0:when d < depth:color = (fork (d+1, i*2+0), fork (d+1, i*2+1))else:width = depth / 2color = shader (i % width, i /width)return color# given a position, returns a color# for this demo, it just busy loopsdef demo_shader (x, y):bend i = 0:when i < 5000:color = fork (i + 1)else:color = 0x000001return color# renders a 256x256 image using demo_shaderdef main:return render (16, demo_shader)
Nach dem Login kopieren

它确实会起作用,即使涉及的算法在 Bend 上也能很好地并行。长距离通信通过全局 beta 缩减(根据交互演算)执行,并通过 HVM2 的原子链接器正确有效地同步。

最后,作者表示 Bend 现在仅仅是第一个版本,还没有在合适的编译器上投入太多精力。大家可以预期未来每个版本的原始性能都会大幅提高。而现在,我们已经可以使用解释器,从 Python 高级语言的角度一睹大规模并行编程的样子了。


Das obige ist der detaillierte Inhalt vonDie erste GPU-Hochsprache, massive Parallelität ist wie das Schreiben von Python, hat 8500 Sterne erhalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

<🎜>: Bubble Gum Simulator Infinity - So erhalten und verwenden Sie Royal Keys
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusionssystem, erklärt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1675
14
PHP-Tutorial
1278
29
C#-Tutorial
1257
24
Open Source! Jenseits von ZoeDepth! DepthFM: Schnelle und genaue monokulare Tiefenschätzung! Open Source! Jenseits von ZoeDepth! DepthFM: Schnelle und genaue monokulare Tiefenschätzung! Apr 03, 2024 pm 12:04 PM

0.Was bewirkt dieser Artikel? Wir schlagen DepthFM vor: ein vielseitiges und schnelles generatives monokulares Tiefenschätzungsmodell auf dem neuesten Stand der Technik. Zusätzlich zu herkömmlichen Tiefenschätzungsaufgaben demonstriert DepthFM auch hochmoderne Fähigkeiten bei nachgelagerten Aufgaben wie dem Tiefen-Inpainting. DepthFM ist effizient und kann Tiefenkarten innerhalb weniger Inferenzschritte synthetisieren. Lassen Sie uns diese Arbeit gemeinsam lesen ~ 1. Titel der Papierinformationen: DepthFM: FastMonocularDepthEstimationwithFlowMatching Autor: MingGui, JohannesS.Fischer, UlrichPrestel, PingchuanMa, Dmytr

Das weltweit leistungsstärkste Open-Source-MoE-Modell ist da, mit chinesischen Fähigkeiten, die mit GPT-4 vergleichbar sind, und der Preis beträgt nur fast ein Prozent von GPT-4-Turbo Das weltweit leistungsstärkste Open-Source-MoE-Modell ist da, mit chinesischen Fähigkeiten, die mit GPT-4 vergleichbar sind, und der Preis beträgt nur fast ein Prozent von GPT-4-Turbo May 07, 2024 pm 04:13 PM

Stellen Sie sich ein Modell der künstlichen Intelligenz vor, das nicht nur die Fähigkeit besitzt, die traditionelle Datenverarbeitung zu übertreffen, sondern auch eine effizientere Leistung zu geringeren Kosten erzielt. Dies ist keine Science-Fiction, DeepSeek-V2[1], das weltweit leistungsstärkste Open-Source-MoE-Modell, ist da. DeepSeek-V2 ist ein leistungsstarkes MoE-Sprachmodell (Mix of Experts) mit den Merkmalen eines wirtschaftlichen Trainings und einer effizienten Inferenz. Es besteht aus 236B Parametern, von denen 21B zur Aktivierung jedes Markers verwendet werden. Im Vergleich zu DeepSeek67B bietet DeepSeek-V2 eine stärkere Leistung, spart gleichzeitig 42,5 % der Trainingskosten, reduziert den KV-Cache um 93,3 % und erhöht den maximalen Generierungsdurchsatz auf das 5,76-fache. DeepSeek ist ein Unternehmen, das sich mit allgemeiner künstlicher Intelligenz beschäftigt

KI untergräbt die mathematische Forschung! Der Gewinner der Fields-Medaille und der chinesisch-amerikanische Mathematiker führten 11 hochrangige Arbeiten an | Gefällt mir bei Terence Tao KI untergräbt die mathematische Forschung! Der Gewinner der Fields-Medaille und der chinesisch-amerikanische Mathematiker führten 11 hochrangige Arbeiten an | Gefällt mir bei Terence Tao Apr 09, 2024 am 11:52 AM

KI verändert tatsächlich die Mathematik. Vor kurzem hat Tao Zhexuan, der diesem Thema große Aufmerksamkeit gewidmet hat, die neueste Ausgabe des „Bulletin of the American Mathematical Society“ (Bulletin der American Mathematical Society) weitergeleitet. Zum Thema „Werden Maschinen die Mathematik verändern?“ äußerten viele Mathematiker ihre Meinung. Der gesamte Prozess war voller Funken, knallhart und aufregend. Der Autor verfügt über eine starke Besetzung, darunter der Fields-Medaillengewinner Akshay Venkatesh, der chinesische Mathematiker Zheng Lejun, der NYU-Informatiker Ernest Davis und viele andere bekannte Wissenschaftler der Branche. Die Welt der KI hat sich dramatisch verändert. Viele dieser Artikel wurden vor einem Jahr eingereicht.

Hallo, elektrischer Atlas! Der Boston Dynamics-Roboter erwacht wieder zum Leben, seltsame 180-Grad-Bewegungen machen Musk Angst Hallo, elektrischer Atlas! Der Boston Dynamics-Roboter erwacht wieder zum Leben, seltsame 180-Grad-Bewegungen machen Musk Angst Apr 18, 2024 pm 07:58 PM

Boston Dynamics Atlas tritt offiziell in die Ära der Elektroroboter ein! Gestern hat sich der hydraulische Atlas einfach „unter Tränen“ von der Bühne der Geschichte zurückgezogen. Heute gab Boston Dynamics bekannt, dass der elektrische Atlas im Einsatz ist. Es scheint, dass Boston Dynamics im Bereich kommerzieller humanoider Roboter entschlossen ist, mit Tesla zu konkurrieren. Nach der Veröffentlichung des neuen Videos wurde es innerhalb von nur zehn Stunden bereits von mehr als einer Million Menschen angesehen. Die alten Leute gehen und neue Rollen entstehen. Das ist eine historische Notwendigkeit. Es besteht kein Zweifel, dass dieses Jahr das explosive Jahr der humanoiden Roboter ist. Netizens kommentierten: Die Weiterentwicklung der Roboter hat dazu geführt, dass die diesjährige Eröffnungsfeier wie Menschen aussieht, und der Freiheitsgrad ist weitaus größer als der von Menschen. Aber ist das wirklich kein Horrorfilm? Zu Beginn des Videos liegt Atlas ruhig auf dem Boden, scheinbar auf dem Rücken. Was folgt, ist atemberaubend

KAN, das MLP ersetzt, wurde durch Open-Source-Projekte auf Faltung erweitert KAN, das MLP ersetzt, wurde durch Open-Source-Projekte auf Faltung erweitert Jun 01, 2024 pm 10:03 PM

Anfang dieses Monats schlugen Forscher des MIT und anderer Institutionen eine vielversprechende Alternative zu MLP vor – KAN. KAN übertrifft MLP in Bezug auf Genauigkeit und Interpretierbarkeit. Und es kann MLP, das mit einer größeren Anzahl von Parametern ausgeführt wird, mit einer sehr kleinen Anzahl von Parametern übertreffen. Beispielsweise gaben die Autoren an, dass sie KAN nutzten, um die Ergebnisse von DeepMind mit einem kleineren Netzwerk und einem höheren Automatisierungsgrad zu reproduzieren. Konkret verfügt DeepMinds MLP über etwa 300.000 Parameter, während KAN nur etwa 200 Parameter hat. KAN hat eine starke mathematische Grundlage wie MLP und basiert auf dem universellen Approximationssatz, während KAN auf dem Kolmogorov-Arnold-Darstellungssatz basiert. Wie in der folgenden Abbildung gezeigt, hat KAN

Tesla-Roboter arbeiten in Fabriken, Musk: Der Freiheitsgrad der Hände wird dieses Jahr 22 erreichen! Tesla-Roboter arbeiten in Fabriken, Musk: Der Freiheitsgrad der Hände wird dieses Jahr 22 erreichen! May 06, 2024 pm 04:13 PM

Das neueste Video von Teslas Roboter Optimus ist veröffentlicht und er kann bereits in der Fabrik arbeiten. Bei normaler Geschwindigkeit sortiert es Batterien (Teslas 4680-Batterien) so: Der Beamte hat auch veröffentlicht, wie es bei 20-facher Geschwindigkeit aussieht – auf einer kleinen „Workstation“, pflücken und pflücken und pflücken: Dieses Mal wird es freigegeben. Eines der Highlights Der Vorteil des Videos besteht darin, dass Optimus diese Arbeit in der Fabrik völlig autonom und ohne menschliches Eingreifen während des gesamten Prozesses erledigt. Und aus Sicht von Optimus kann es auch die krumme Batterie aufnehmen und platzieren, wobei der Schwerpunkt auf der automatischen Fehlerkorrektur liegt: In Bezug auf die Hand von Optimus gab der NVIDIA-Wissenschaftler Jim Fan eine hohe Bewertung ab: Die Hand von Optimus ist der fünffingrige Roboter der Welt am geschicktesten. Seine Hände sind nicht nur taktil

Die Kuaishou-Version von Sora „Ke Ling' steht zum Testen offen: Sie generiert über 120 Sekunden Videos, versteht die Physik besser und kann komplexe Bewegungen genau modellieren Die Kuaishou-Version von Sora „Ke Ling' steht zum Testen offen: Sie generiert über 120 Sekunden Videos, versteht die Physik besser und kann komplexe Bewegungen genau modellieren Jun 11, 2024 am 09:51 AM

Was? Wird Zootopia durch heimische KI in die Realität umgesetzt? Zusammen mit dem Video wird ein neues groß angelegtes inländisches Videogenerationsmodell namens „Keling“ vorgestellt. Sora geht einen ähnlichen technischen Weg und kombiniert eine Reihe selbst entwickelter technologischer Innovationen, um Videos zu produzieren, die nicht nur große und vernünftige Bewegungen aufweisen, sondern auch die Eigenschaften der physischen Welt simulieren und über starke konzeptionelle Kombinationsfähigkeiten und Vorstellungskraft verfügen. Den Daten zufolge unterstützt Keling die Erstellung ultralanger Videos von bis zu 2 Minuten mit 30 Bildern pro Sekunde, mit Auflösungen von bis zu 1080p und unterstützt mehrere Seitenverhältnisse. Ein weiterer wichtiger Punkt ist, dass es sich bei Keling nicht um eine vom Labor veröffentlichte Demo oder Video-Ergebnisdemonstration handelt, sondern um eine Anwendung auf Produktebene, die von Kuaishou, einem führenden Anbieter im Bereich Kurzvideos, gestartet wurde. Darüber hinaus liegt das Hauptaugenmerk darauf, pragmatisch zu sein, keine Blankoschecks auszustellen und sofort nach der Veröffentlichung online zu gehen. Das große Modell von Ke Ling wurde bereits in Kuaiying veröffentlicht.

FisheyeDetNet: der erste Zielerkennungsalgorithmus basierend auf einer Fischaugenkamera FisheyeDetNet: der erste Zielerkennungsalgorithmus basierend auf einer Fischaugenkamera Apr 26, 2024 am 11:37 AM

Die Zielerkennung ist ein relativ ausgereiftes Problem in autonomen Fahrsystemen, wobei die Fußgängererkennung einer der ersten Algorithmen ist, die eingesetzt werden. In den meisten Arbeiten wurde eine sehr umfassende Recherche durchgeführt. Die Entfernungswahrnehmung mithilfe von Fischaugenkameras für die Rundumsicht ist jedoch relativ wenig untersucht. Aufgrund der großen radialen Verzerrung ist es schwierig, die standardmäßige Bounding-Box-Darstellung in Fischaugenkameras zu implementieren. Um die obige Beschreibung zu vereinfachen, untersuchen wir erweiterte Begrenzungsrahmen-, Ellipsen- und allgemeine Polygondesigns in Polar-/Winkeldarstellungen und definieren eine mIOU-Metrik für die Instanzsegmentierung, um diese Darstellungen zu analysieren. Das vorgeschlagene Modell „fisheyeDetNet“ mit polygonaler Form übertrifft andere Modelle und erreicht gleichzeitig 49,5 % mAP auf dem Valeo-Fisheye-Kameradatensatz für autonomes Fahren

See all articles