目前在 F# 上使用 CUDA 的最佳免费选项是什么



我想在F#中使用CUDA。虽然Alea.CuBase看起来真的很棒,但不幸的是它不是免费的。在 F# 中使用 CUDA 的最佳选择是什么?还有其他正在积极开发的免费库吗?在性能 EDIT 和功能方面,它们是否比 C 上的 CUDA 差得多(尤其是我想为我的应用程序使用纹理内存)?

FSCL是我所知道的最完整的工具。它的目标是OpenCL(不是CUDA),但现在OpenCL正在成熟(特别是一旦OpenCL 2.0标准最终确定),这可能是许多用途的最佳选择;如果您特别需要使用 CUDA(例如,使用一些不适用于 OpenCL 的 CUDA 库),您可以修改 FSCL 编译器,使其面向 CUDA。

Don Syme今年早些时候在他的博客上写了关于FSCL的文章:FSCL - 将F#编译为OpenCL,以实现多核和众核设备上的高性能

如果你想启动用普通 CUDA-C 编写并由 nvcc 在 F# 应用程序中编译的 CUDA 内核,我建议您托管 Cuda,它可以访问所有可用的 CUDA 功能(我维护这个库)。

如果你想做代码转换,这意味着用F#编写你的内核被转换为CUDA内核,那么你可能想看看cudafy;缺点是缺少纹理内存等功能。

两者都在 LGPL 许可下可用,并得到积极维护。

最新更新