DumPy : Un langage de tableau plus simple pour les GPU, abandonnant le gaspillage cérébral de NumPy

2025-05-24
DumPy : Un langage de tableau plus simple pour les GPU, abandonnant le gaspillage cérébral de NumPy

L'auteur critique la complexité et l'inefficacité de NumPy pour la gestion des tableaux de dimensions supérieures, notamment ses règles complexes de broadcasting et d'indexation, obligeant les programmeurs à réfléchir constamment à la forme des tableaux et au comportement des fonctions. Pour y remédier, il propose DumPy, un langage de tableau plus simple qui utilise la syntaxe des boucles et des index, les compilant secrètement en opérations vectorisées pour l'accélération GPU, évitant ainsi les complexités introduites dans NumPy pour contourner les boucles lentes. L'idée principale de DumPy est de mapper les dimensions sur des étiquettes et d'utiliser la fonction `vmap` de JAX pour la vectorisation, simplifiant ainsi le code et augmentant l'efficacité. L'auteur fournit des exemples comparant DumPy, NumPy, JAX et des boucles pures, démontrant la supériorité de DumPy en termes de concision et de performances.

Développement langage de tableau