最近朋友开了个矿池,想随便用家里的 AMD 显卡(型号 6800 XT)跑跑挖矿程序。
A 卡上面一般用 TeamRedMiner,但是并不能直接在风滚草上运行,因为它依赖 OpenCL,而目前默认源里面 amdgpu 开源驱动包括 Mesa-libOpenCL 对这款显卡都是没有 OpenCL 支持的。
A 卡想添加 OpenCL 支持有两种方式。第一是安装 AMD 新的 ROCm 平台,ROCm 平台提供了针对 SLES 和 openSUSE 的 rpm 包,这种方式下直接 zypper 添加 rocm 新的软件源并安装相关包即可。然而很可惜,TeamRedMiner 不支持 ROCm 平台下的 OpenCL。
所以我们只能采用第二种方式,也就是 Arch Linux 的 AUR 里面 opencl-amd 这个包所采用的方式:将闭源的 amdgpu-pro 驱动里面几个 OpenCL 相关的包里面的 so 文件和相关配置文件摘出来,安装到自己的机器上。虽然 amdgpu-pro OpenCL 是闭源驱动的一部分,实际上也可以在开源驱动上面正常运行。
按照类似 AUR 里面的打包方式,我在 OBS 上建立了 amdgpu-pro-opencl 包:Show home:nuklly / amdgpu-pro-opencl - openSUSE Build Service 。安装好之后就可以正常使用 OpenCL 特性和挖矿程序了。