【发布时间】:2019-08-16 01:37:15
【问题描述】:
我有一台配备 AMD Ryzen 5 2500u(集成 radeon vega 8 移动 GPU)处理器并使用 Ubuntu 18.04.2 的笔记本电脑。我想在 CPU 和 GPU 上使用 C++ 运行一些 OpenCL 计算。我的问题是我不确定opencl如何识别cpu。
我已经从 amd 网站和 AMD APP SDK 3.0 安装了 amdgpu-pro。运行 clinfo 后,我得到以下输出:
平台数量 2
平台名称 Clover
平台供应商台面
平台版本 OpenCL 1.1 Mesa 18.2.8
平台配置文件 FULL_PROFILE
平台扩展 cl_khr_icd
平台扩展功能后缀MESA
平台名称 AMD 加速
并行处理 平台供应商 Advanced Micro Devices, Inc.
平台版本 OpenCL 2.1 AMD-APP (2671.3)
平台配置文件 FULL_PROFILE
平台扩展 cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
平台主机定时器分辨率 1ns
Platform Extensions 函数后缀 AMD
平台名称 Clover
设备数量 1
设备名称 AMD RAVEN(DRM 3.26.0、4.18.0-16-generic、LLVM 7.0.0)
设备供应商 AMD
设备供应商 ID 0x1002
设备版本 OpenCL 1.1 Mesa 18.2.8
驱动程序版本 18.2.8
设备 OpenCL C 版本 OpenCL C 1.1
设备类型 GPU
设备配置文件 FULL_PROFILE
设备可用是
编译器可用是的
最大计算单元 8
最大时钟频率 1100MHz
最大工作项尺寸 3
最大工作项大小为 256x256x256
最大工作组大小 256
首选工作组大小为 64 倍
首选/原生矢量大小
字符 16 / 16
短 8 / 8
整数 4 / 4
长 2 / 2
半 8 / 8 (cl_khr_fp16) 浮动 4 / 4
双 2 / 2 (cl_khr_fp64)半精度浮点支持 (cl_khr_fp16)
...
平台名称 AMD 加速并行处理
设备数量 1
设备名称 gfx902
设备供应商 Advanced Micro Devices, Inc.
设备供应商 ID 0x1002
设备版本 OpenCL 1.2 AMD-APP (2671.3)
驱动程序版本 2671.3(PAL、HSAIL)
设备 OpenCL C 版本 OpenCL C 1.2
设备类型 GPU
设备板名称 (AMD) 未知 AMD GPU
设备拓扑 (AMD) PCI-E,05:00.0
设备配置文件 FULL_PROFILE
.......
NULL 平台行为
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) 无平台
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) 无平台
clCreateContext(NULL, ...) [默认] 无平台
clCreateContext(NULL, ...) [其他] 成功 [MESA]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) 成功(1)
Platform Name Clover Device Name AMD RAVEN (DRM 3.26.0, 4.18.0-16-generic, LLVM 7.0.0)clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) 在平台上找不到设备
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) 成功(1)
Platform Name Clover Device Name AMD RAVEN (DRM 3.26.0, 4.18.0-16-generic, LLVM 7.0.0)clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) 在平台中找不到设备
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) 在平台中找不到设备
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) 成功(1)
Platform Name Clover Device Name AMD RAVEN (DRM 3.26.0, 4.18.0-16-generic, LLVM 7.0.0)
带有设备“AMD RAVEN (DRM 3.26.0, 4.18.0-16-generic, LLVM 7.0.0)”的第一个平台“Clover”的设备类型为“GPU”,第二个平台的设备类型为“gfx902”似乎也是我系统的 GPU。
所以我的问题是:我必须安装什么才能让 opencl 也识别我系统的 cpu?
感谢您的帮助!
【问题讨论】:
-
迟来的评论:平台名称
Clover表示您使用 OpenCL 的 Mesa 实现。你不需要这个......你也不需要AMD APP SDK。你应该删除它们。amdgpu-pro在 Ubuntu 18.04 上应该足够了
标签: ubuntu opencl linux-device-driver amd ubuntu-18.04