CubeCL

Un seul code source.Plus de choix de matériel.

Écrivez vos noyaux de calcul en Rust. CubeCL les traduit pour différents GPU et CPU, ce qui vous permet de réutiliser la même logique d'un backend matériel à l'autre.

Code ouvert · Apache 2.0 / MIT · Par Tracel

Explorez six chemins matériels possibles à travers CubeCL. Ouvrez Rust pour lire le noyau illustratif square.rs, écrit avec l'API 0.10. Des tampons de même longueur, la configuration de l'appareil et le code de lancement sont nécessaires pour l'exécuter. L'illustration n'exécute ni ne compile de Rust.

Un noyau Rust sur CubeCL se relie à NVIDIA par CUDA, à AMD par HIP, à Apple par Metal, ainsi qu'à Vulkan, à WebGPU et au CPU. Chaque chemin est une cible matérielle possible.
  1. 01Écrire en Rust
  2. 02Spécialiser et compiler
  3. 03Exécuter sur votre appareil

Fonctionnalités clés

Tirez plus de votre matériel.

01 / Rust

Écrivez vos noyaux en vrai Rust.

Utilisez traits, génériques, structs et enums dans vos noyaux pour composer des briques réutilisables sans coût à l'exécution.

Explorer le langage

02 / Comptime

Compilez pour la charge réelle.

Les noyaux sont compilés au premier lancement pour les formes et l'appareil réels, et utilisent le matériel spécialisé, comme les cœurs tenseurs, quand il est disponible.

Explorer comptime

03 / Autotuning

Optimisez sur votre propre appareil.

CubeCL évalue les noyaux candidats sur votre matériel, garde le plus rapide et met ce choix en cache pour les prochaines exécutions.

Explorer l'autotuning

Commencer

Tous les noms de produits et logos de tiers sont des marques de commerce ou des marques déposées de leurs propriétaires respectifs. Ils servent uniquement à des fins d'identification et n'impliquent aucune affiliation avec Tracel ni aucune approbation de sa part. Logo WebGPU par le W3C, utilisé sous licence CC BY 4.0.