InteropUnityCUDA: A Tool for Interoperability Between Unity and CUDA
InteropUnityCUDA: Un outil d'intéropérabilité entre Unity et CUDA
Résumé
Unity is a powerful and versatile tool for creating real time experiments. It comes with a homemade c-like language to program GPGPU massively parallel algorithms: Unity's compute shader language. As Unity has been primarily made for multi-platform games creation, this language comes with several limitations: for example, it does not support multi-GPU computation, and it lacks of complete math libraries.
To overcome these flaws, the GPU manufacturers have developed programming models that allow developers to leverage the power of modern GPUs for general-purpose computing, like CUDA or HIP. Therefore, to bring these features and flexibility to Unity, this article proposes an open source tool to perform interoperability between Unity and CUDA.
To overcome these flaws, the GPU manufacturers have developed programming models that allow developers to leverage the power of modern GPUs for general-purpose computing, like CUDA or HIP. Therefore, to bring these features and flexibility to Unity, this article proposes an open source tool to perform interoperability between Unity and CUDA.
Unity est un outil puissant et polyvalent pour créer des expériences en temps réel. Il est livré avec un langage maison de type c pour programmer des algorithmes massivement parallèles GPGPU : Le langage compute shader d'Unity. Comme Unity a été principalement conçu pour la création de jeux multiplateformes, ce langage présente plusieurs limitations : par exemple, il ne prend pas en charge les calculs multi-GPU et ne dispose pas de bibliothèques mathématiques complètes.
Pour pallier ces lacunes, les fabricants de GPU ont développé des modèles de programmation qui permettent aux développeurs d'exploiter la puissance des GPU modernes à des fins de calcul général, comme CUDA ou HIP. Par conséquent, pour apporter ces fonctionnalités et cette flexibilité à Unity, cet article propose un outil open source pour réaliser l'interopérabilité entre Unity et CUDA.
Pour pallier ces lacunes, les fabricants de GPU ont développé des modèles de programmation qui permettent aux développeurs d'exploiter la puissance des GPU modernes à des fins de calcul général, comme CUDA ou HIP. Par conséquent, pour apporter ces fonctionnalités et cette flexibilité à Unity, cet article propose un outil open source pour réaliser l'interopérabilité entre Unity et CUDA.
Origine | Fichiers produits par l'(les) auteur(s) |
---|---|
Licence |