Làm cách nào để kích hoạt nền tảng CPU cho các ứng dụng OpenCL?


8

Tôi hiện đang chạy Ubuntu 16.04 trên một máy có APU AMD A8-5600K và Radeon R9 270X. Trình điều khiển amdgpu chưa hỗ trợ thẻ của tôi và do đó tôi không thể sử dụng OpenCL trên GPU của mình. Tuy nhiên, tôi thấy không có lý do tại sao các ứng dụng OpenCL không thể sử dụng CPU của tôi.

Tôi đã cài đặt mọi gói tôi có thể nghĩ đến - ocl-icd-libopencl1Cài đặt ocl-icd-libopencl1 , ocl-icd-opencl-devCài đặt ocl-icd-opencl-dev , v.v.

Tôi đã viết một ứng dụng đơn giản liệt kê các nền tảng OpenCL có sẵn và nó đã thất bại trong clGetPlatformIDs()cuộc gọi. Tôi đang thiếu gì?


Chỉnh sửa: Tôi đã cài đặt SDK AMD APP như được đề xuất trong câu trả lời của SE6 nhưng chưa có nền tảng nào hiển thị. Chạy stracecho thấy trình tải OpenCL ICD không thể tìm thấy libamdocl64.so.


Chỉnh sửa thêm: thành công! Tôi đã có thể làm cho nó hoạt động bằng cách sử dụng lệnh sau:

sudo ln -s '/opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libamdocl64.so' \
    /usr/lib/x86_64-linux-gnu/libamdocl64.so

(Thay thế /optbằng đường dẫn bạn đã cài đặt SDK APP của AMD.)


Trên CPU thực tế, hay iGPU?
Ciro Santilli 冠状 病毒 审查 事件 法轮功

Câu trả lời:


1

Cài đặt SDK APP AMD từ trang web AMD, sau đó bạn sẽ thấy CPU của mình có sẵn dưới dạng thiết bị OpenCL.


1
Tôi đã quản lý để cài đặt nó nhưng dường như ICD không hoạt động. Vẫn nhận được "không có nền tảng".
Nathan Osman

Tôi đã cập nhật câu hỏi để phản ánh sự tiến bộ trong việc gỡ lỗi này.
Nathan Osman

... Và cuối cùng là thành công!
Nathan Osman
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.