OpenGL代码可以在x86 CPU上运行吗?

时间:2014-03-30 19:47:33

标签: opengl x86 opencl

据我所知,AMD创建了一个在x86 CPU上运行的另一个implementation OpenCL。从简化调试的角度来看,这非常有用。不幸的是,OpenCL对我来说不是一个选择。

是否存在任何Open GL x86实施?当然,这会以一些CPU时间为代价,大大简化我的开发过程。然后,我会在GPU上运行相同的代码,之后无需更改。

2 个答案:

答案 0 :(得分:4)

Mesa可能是您的选择。

从他们的网站:

  

Mesa是由Intel,AMD和NVIDIA以及VMware虚拟GPU制造的几种硬件的OpenGL实现。 还有一些基于软件的渲染器:swrast(传统的Mesa光栅化器),softpipe(镓参考驱动程序)和llvmpipe(基于LLVM / JIT的高速光栅化器)。

使用Mesa时,您可以设置LIBGL_ALWAYS_SOFTWARE环境变量,这将导致Mesa "始终使用软件渲染"

答案 1 :(得分:0)

OpenGL不是指令集,也不是库。它是用于与GPU连接的绘图API(是的,有基于软件的光栅化器,如Mesa softpipe)。这些天你可以找到的大多数计算机都支持OpenGL。

当您使用OpenGL API时,它不像您的OpenGL调用得到"翻译"进入GPU的特殊指令集,然后成为程序的一部分。 OpenGL操作只会创建最终在设备驱动程序中的调用,就像读取或写入文件一样。