JuliaGPU/KernelAbstractions.jl

Heterogeneous programming in Julia

解决的问题

KernelAbstractions.jl 提供了一种编写 GPU 类似内核的方法,这些内核可以在多个不同的硬件后端上运行,而无需为每个特定平台重新编写代码。它解决了硬件锁定问题以及跨不同 GPU 供应商进行异构计算的需求。

工作原理

该库充当一个最小且高性能的抽象层。它允许开发者编写一组单一的内核,然后由该包将这些内核针对多种支持的执行后端进行目标化,包括 NVIDIA CUDA、AMD ROCm、Intel oneAPI 和 Apple Metal。

适用人群

需要编写高性能、跨多种 GPU 架构兼容的异构代码的开发者和研究人员。

特色亮点

  • 支持多种后端:NVIDIA CUDA、AMD ROCm、Intel oneAPI 和 Apple Metal。
  • 设计为最小且高性能。
  • 支持为不同执行后端编写 GPU 类似内核。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目