对于web开发者来说,有很多开源的选择。例如,LAMP堆栈是完全开源的,如果您在其上构建软件,则不需要依赖不同的供应商、专有许可证等。
图形处理单元上的通用计算是否也有类似的东西?
CUDA绝对不是开源的,OpenCL只是一个开放标准,但编译器是专有的(对吧?)。
Brook?不推荐使用的Sh
还要别的吗?
有没有'Linux - gcc - video_driver - ?GPGPU‘开源软件栈?
发布于 2011-10-01 05:33:11
有PTX backend for LLVM,但要获得可运行的二进制文件,您仍然需要专有的NVCC编译器和专有的nVidia视频驱动程序来运行它。
BrookGPU和Sh都使用着色器作为后端,所以它们远不具备“真正的”GPGPU平台(如CUDA或OpenCL)的所有功能,而且我猜它们的性能较差。而且,至少Brook需要专有的驱动程序才能运行。另外,Brook project on SourceForge的最新更新日期是2010年2月,所以这个项目也是死路一条。
OpenCL,尽管是开放标准,确实有专有的编译器(在nVidia的情况下,编译器与驱动程序捆绑在一起,对于AMD/ATI和英特尔,它可以单独下载)。当然可以开发免费的编译器,但据我所知,目前还没有开放的硬件GPGPU架构(最后一个被广泛使用的架构: nVidia和ATI都不向公众提供它们的架构细节)。我们可以确定命令集在不同的体系结构之间有很大的不同,所以对于每个想要支持的体系结构,都必须对其进行反向工程(我猜这可能会违反许可协议,尽管不确定)。我听说nouveau团队做了一些尝试,但没有任何明显的结果。
https://stackoverflow.com/questions/7608268
复制相似问题