我立即为一个非常愚蠢的问题道歉,但 OpenCL 与 DirectX、OpenGL、CUDA 有何不同?为什么有 DirectX 与 OpenGL 和 OpenCL 与 CUDA 的比较,但没有比较比如说 OpenCL 和 DirectX?我想它们是非常不同的,但据我了解,它们都允许您访问视频卡并加快计算速度。我想知道这些技术之间的区别以及是由什么负责的?
我立即为一个非常愚蠢的问题道歉,但 OpenCL 与 DirectX、OpenGL、CUDA 有何不同?为什么有 DirectX 与 OpenGL 和 OpenCL 与 CUDA 的比较,但没有比较比如说 OpenCL 和 DirectX?我想它们是非常不同的,但据我了解,它们都允许您访问视频卡并加快计算速度。我想知道这些技术之间的区别以及是由什么负责的?
OpenGL 与 DirectX
这是两个用于渲染图形的引擎。
DirectX 仅适用于 Windows,具有 C++ 和接口,封闭源代码。
OpenGL 是开放的,可用于许多不同的平台。里面的代码是用C风格写的。
原则上,任何游戏都可以在任何平台上编写。是的,您可以对它们进行计算,但不方便。
OpenCL 与 CUDA
这些是允许您使用视频卡进行计算的工具。作为第一个近似值,我们可以假设视频卡有很多很多可以执行相同类型计算的小型处理器。
CUDA 由 NVidia 开发。封闭排序,仅适用于 NVidia。OpenCL——开放,适用于各种显卡。
当然,你可以在它们上面写游戏,但是这些库(或者它们都是这样的框架吗?)不是为渲染图形而设计的。