cancel
Showing results for 
Search instead for 
Did you mean: 

Graphics Cards

mdclemen
Adept II

OpenCL 2.0 on FirePro S7150 on Linux

According to this datasheet: https://www.amd.com/system/files/documents/firepro-s-series-datasheet.pdf, the FirePro S7150 should be OpenCL 2.0 capable, but I've learned that often AMD doesn't necessarily support a lot of features with their Linux drivers (for example the FirePro W5100 is not OpenCL 2.0 capable on Linux, even though AMD advertises that it is: https://community.amd.com/t5/firepro-development/opencl-2-0-on-amd-firepro-w5100/m-p/683011#M747). Can anyone confirm that this GPU is OpenCL 2.0 capable on Linux? Thanks.

7 Replies
fsadough
Moderator

The question is why you need OpenCL 2.0. Which specific OpenCL extension are you looking for? Anything beyond OpenCL 1.2 is made optional.

 

fsadough_0-1720513592408.jpeg

 

I would like to use Shared Virtual Memory with atomic support, which is only available in OpenCL 2.0 and after.

0 Likes

From digging around the OpenCL 2.0 spec, and this directory of extensions, there should be an extension called something like cl_amd_shared_virtual_memory though it doesn't exist in the /amd/ directory (something similar exists in the /arm/ directory: cl_arm_shared_virtual_memory). I was able to add the extension cl_amd_bus_addressable_memory by adding amdgpu.direct_gma_size=96 as a kernel boot parameter. Is there something similar I can do here to enable SVM?

0 Likes
fsadough
Moderator

It's an extension to enable SVM on early versions of OpenCL. AMD doesn't need this extension, because we support OpenCL2.0:


registry.khronos.org/OpenCL/extensions/arm/cl_arm_shared_virtual_memory.txt

 

This extension enables the shared virtual memory features in versions prior to 2.0 as described in OpenCL version 2.0 section 3.

0 Likes

I'll be super explicit about what it is I am looking for. I currently have a FirePro W5100 on a linux machine (AlmaLinux 8.10, kernel 4.18.0-240.el8.x86_64) and here are some pertinent fields from clinfo:

 

$ clinfo
  Platform Version:				 OpenCL 2.1 AMD-APP (3224.4)
  Board name:					 AMD FirePro W5100
  SVM capabilities:				 
    Coarse grain buffer:			 No
    Fine grain buffer:				 No
    Fine grain system:				 No
    Atomics:					 No
  Device OpenCL C version:			 OpenCL C 1.2 
  Driver version:				 3224.4
  Version:					 OpenCL 1.2 AMD-APP (3224.4)

 

 Elsewhere on the forums @fsadough informed me that OpenCL 2.0 is not fully implemented in linux, even though AMD's own page for this GPU says it supports OpenCL 2.0. I'd like to figure out how to change the "No"s under SVM capablities to "Yes"s. Since you "support OpenCL2.0", how do I enable SVM capabilities on linux for GPUs which AMD says OpenCL 2.0 is supported (this would include the FirePro S7150)?

0 Likes

Where did you obtain the driver from? Can you please share the link?

0 Likes

I am using this driver: https://drivers.amd.com/drivers/linux/amdgpu-pro-21.10-1263777-rhel-8.3.tar.xz

Which I got from this page: https://www.amd.com/en/support/downloads/drivers.html/graphics/firepro/firepro-wx100-series/firepro-...

This the most up-to-date 64-bit linux driver that AMD offers for the FirePro series of GPUs.

 

I also dug around online and found that there is an extension called cl_amd_svm. Do you have any information on that extension? I found it referenced and used in this version of clinfo (used in Arch Linux): https://github.com/Oblomov/clinfo.

0 Likes