cancel
Showing results for 
Search instead for 
Did you mean: 

PC Drivers & Software

Xiaoliang
Journeyman III

How to enable cl_ amd_bus_addressable_memory extension in Ubuntu 18.04 with Radeon pro WX8200?

Hi, all

I have got a Radeon Pro WX8200. I want to realize GPU-FPGA P2P transfer in OpenCL. I know Radeon Pro cards have DirectGMA functions. I have read all the related posts on such topic in this forum. Those helped me greatly. 

Now I have a problem that I can NOT find "cl_ amd_bus_addressable_memory" extension in clinfo report. I know such extension is the key for directGMA. But I do NOT know how to enable it. My system is Ubuntu18.04 with the latest Radeon Pro driver installed. I also installed rocm3.9.1. I know amdgpu drivers do NOT support the old command such as 'aticonfig'.

So any on can help me to handle it? Thanks.

7 Replies
mdclemen
Adept II

Have you tried to use the 'amdconfig' command?

0 Likes

@fsadough might be able assist you if possible.

0 Likes
fsadough
Moderator

  1. Is "Above 4G" and "Resizeable Bar" enabled in system BIOS?
  2. How do you get WX8200 with ROCm working? It is not supported at all.
  3. And all that on Ubuntu 18.04?

@fsadough None of that really answers the question. Installing the amdgpu driver doesn't give the 'aticonfig' nor the 'amdconfig' command

I have installed amdgpu-pro 21.10-1263777 on a CentosOS 7 system with a FirePro W5100 GPU and 'clinfo' does not show 'cl_ amd_bus_addressable_memory'. I have 'Above 4G' enable in my BIOS. How does one enable it without 'aticonfig' or 'amdconfig'?

0 Likes

We support DirectGMA only in OpenGL and not in OpenCL, since we moved to ROCm.

0 Likes

I guess it's back to NVIDIA and GPUDirect RDMA. This is why they are eating you guy's lunch.

0 Likes
mdclemen
Adept II

The way to do this without 'aticonfig' is to add "amdgpu.direct_gma_size=X" as a kernel boot parameter, where X is the size in MB to be allocated for DirectGMA/bus addressable memory (the maximum is typically 96MB). To verify this worked after adding the kernel parameter and rebooting is to run:

$ dmesg | grep -i gma

and then check clinfo for the "cl_amd_bus_addressable_memory" flag. I found the more detailed steps here: https://github.com/yadav26/radeonDGMA

I verified this on my setup:

OS: AlmaLinux 8.9

kernel: 4.18.0-240.el8.x86_64

amdgpu driver: amdgpu-pro-21.10-1263777-rhel-8.3

GPU: FirePro W5100

$ dmesg | grep -i gma

[ 4.086729] [drm] 96MB VRAM/GTT reserved for Direct GMA

$ clinfo | grep -i bus_add
Extensions: cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_image2d_from_buffer cl_amd_bus_addressable_memory cl_khr_spir cl_khr_gl_event