Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在AMD APU上使用OpenCL,但在X服务器上使用离散GPU_Opencl_Gpgpu_Amd Processor - Fatal编程技术网

在AMD APU上使用OpenCL,但在X服务器上使用离散GPU

在AMD APU上使用OpenCL,但在X服务器上使用离散GPU,opencl,gpgpu,amd-processor,Opencl,Gpgpu,Amd Processor,是否可以在A10-7800上启用OpenCL而不将其用于X服务器?我有一个用于GPGPU编程的Linux设备。X服务器和运行我开发的OpenCL和Cuda程序都使用了离散的GEForce 740卡。我还想选择在APU的集成GPU内核上运行OpenCL代码 到目前为止,我读到的所有内容都暗示,如果我想在OpenCL中使用APU,我必须安装Catalyst,而且,好吧,这意味着在X服务器上使用它。这是真的吗?将APU用于我的X服务器并将GEForce单独用于GPGPU代码会有好处吗?我维护一台Lin

是否可以在A10-7800上启用OpenCL而不将其用于X服务器?我有一个用于GPGPU编程的Linux设备。X服务器和运行我开发的OpenCL和Cuda程序都使用了离散的GEForce 740卡。我还想选择在APU的集成GPU内核上运行OpenCL代码

到目前为止,我读到的所有内容都暗示,如果我想在OpenCL中使用APU,我必须安装Catalyst,而且,好吧,这意味着在X服务器上使用它。这是真的吗?将APU用于我的X服务器并将GEForce单独用于GPGPU代码会有好处吗?

我维护一台Linux服务器(OpenSUSE,但发行版不重要),其中包含NVIDIA和(一个离散的)AMD GPU。它是无头的,所以技术上我不知道X服务器是否会产生额外的问题,但我不这么认为。您始终可以将xorg.conf配置为完全使用所需的驱动程序。或者:安装Catalyst,但删除X服务器驱动程序文件本身,这与OpenCL所需的不同


然而,我注意到混合供应商系统存在一个问题:AMDs OpenCL驱动程序(ICD)将探索libGL.so库,我猜是为了实现OpenCL/OpenGL互操作。如果它发现任何NVIDIA提供的libGL.so的,它将变得混乱和挂起-至少在我的机器上。我通过删除所有libGL.so“解决”了这个问题(我不需要在无头计算服务器上使用它),但这可能不是您可以接受的解决方案。也许你可以安排AMD提供的libGL。让我们优先考虑,可能是最后安装AMD驱动程序。

我有一个类似的目标,所以我用AMD APU(4个常规内核+6个GPU)和Nvidia离散图形板构建了一个系统。很抱歉,让它工作起来并不容易,所以我在
Ask Ubuntu
论坛上问了一个问题,没有得到任何答案,对硬件和软件设置进行了大量实验,最后发布了我自己的问题答案

我将在这里再次描述我的设置-谁知道,我在
询问Ubuntu
上的自动回答问题会发生什么

首先,我必须通过BIOS标志启用集成图形硬件。此标志在我的主板(ASUS A88X-PRO)上称为
IGFX Multi-Monitor

第二步是找到低级图形驱动程序和高级OpenCL实现的正确组合。AMD处理器的低级驱动程序称为
AMD Catalyst
,文件名为
fglrx
。我没有从Ubuntu软件中心安装这个驱动程序,而是使用了直接从AMD网站下载的版本
15.302
。我必须为这个驱动程序安装大量的先决条件。最重要的发现是,在安装
fglrx
之后,我不得不跳过运行
aticonfig
命令-该命令实际上配置了X服务器以使用该驱动程序进行图形输出,我不希望这样

然后我安装了AMD SDK 3.0版(130.136版,早期版本不适用于我的
fglrx
),这是AMD的OpenCL实现。现在,
clinfo
命令报告具有正确内核数的CPU和GPU

所以,我有一个混合AMD处理器,由OpenCL支持,所有的图形输出,由一个带有Nvidia处理器的离散图形卡支持


祝你好运

如果x服务器是64位的,您可以尝试APU的32位驱动程序,这样x服务器就看不到它了?谢谢您的回答。你的情况与我的情况非常相似,你提供的信息肯定会让我在尝试时走得更远。否则会让我陷入更深的头脑中终于开始尝试赫克托的建议,并接近了。非常接近。当我启动时,我可以运行CLIFNT,它报告有两个平台可用——英伟达卡和APU。但随后尝试运行clinfo或OCLDevicequiry会导致SEGFULT。搜索网络表明,这可能是一个已知的问题。我确信运行LinuxMint并没有什么帮助,它并不是一个真正支持我所想做的事情的平台,但事实上我已经接近了,这给了我希望。