Daily Arxiv

Cette page résume et organise les publications en intelligence artificielle du monde entier.
Les contenus sont synthétisés grâce à Google Gemini et le service est proposé à but non lucratif.
Les droits d'auteur des articles appartiennent à leurs auteurs ou institutions respectives ; en cas de partage, il suffit d'en mentionner la source.

Tilus : un langage de programmation GPGPU au niveau des tuiles pour le calcul de faible précision

Created by
  • Haebom

Auteur

Yaoyao Ding, Bohan Hou, Xiao Zhang, Allan Lin, Tianqi Chen, Cody Yu Hao, Yida Wang, Gennady Pekhimenko

Contour

Cet article propose Tilus, un nouveau langage spécifique à un domaine (DSL) pour l'implémentation efficace de modèles de langage à grande échelle (LLM). La mise en œuvre de LLM nécessite des ressources de calcul importantes, et le calcul basse précision est un moyen efficace de réduire la consommation de ressources. Les méthodes existantes de génération de noyau basse précision ont des largeurs de bits limitées à des puissances de deux et souffrent de performances sous-optimales en raison des abstractions de programmation GPU de haut niveau. Tilus prend en charge les types de données basse précision avec des largeurs de bits arbitraires de 1 à 8 bits, et dispose d'un modèle de programmation par blocs threadé, d'un espace mémoire hiérarchique et d'un nouveau système de disposition algébrique. Il compile en programmes GPU efficaces grâce à la vectorisation et à la sélection d'instructions automatiques, surpassant les méthodes existantes telles que Triton, Ladder, QuantLLM et Marlin.

Takeaways, Limitations_

Takeaways:
Nous présentons Tilus, un nouveau DSL qui prend en charge les types de données de faible précision de largeur de bits arbitraire, améliorant considérablement l'efficacité du service LLM.
Nous surmontons les limitations des abstractions de programmation GPU de haut niveau existantes et obtenons des améliorations de performances grâce à une gestion fine des registres et à des modèles d'accès à la mémoire optimisés.
Nous avons obtenu une amélioration des performances jusqu'à 2,61 fois supérieure par rapport aux méthodes existantes telles que Triton, Ladder, QuantLLM et Marlin.
Tilus a été publié en open source pour permettre une utilisation généralisée.
Limitations:
Actuellement, seuls les types de données de faible précision, de 1 à 8 bits, sont pris en charge. La prise en charge de largeurs de bits inférieures ou supérieures peut être requise.
Les améliorations des performances de Tilus sont basées sur des résultats expérimentaux pour du matériel et LLM spécifiques, et les performances peuvent varier dans d'autres environnements.
Le DSL peut avoir une courbe d'apprentissage et peut être difficile à utiliser pour les développeurs sans expérience préalable de programmation GPU.
👍