Compare commits
2 Commits
01bdb8f398
...
a25881bc3e
| Author | SHA1 | Date |
|---|---|---|
|
|
a25881bc3e | 2 years ago |
|
|
9b31cc4257 | 2 years ago |
Binary file not shown.
@ -0,0 +1,152 @@
|
||||
# Kernel Boot Params
|
||||
|
||||
## Updating Grub
|
||||
|
||||
To select the `AMDGPU` driver / module.
|
||||
|
||||
https://askubuntu.com/a/1314983
|
||||
|
||||
I'll add the following flags to the appropriate line in `/etc/default/grub`
|
||||
|
||||
```
|
||||
GRUB_CMDLINE_LINUX_DEFAULT="radeon.si_support=0 radeon.cik_support=0 amdgpu.si_support=1 amdgpu.cik_support=1 amdgpu.dc=1 amdgpu.dpm=1 amdgpu.modeset=1"
|
||||
```
|
||||
|
||||
Then run
|
||||
|
||||
```
|
||||
sudo update-grub
|
||||
```
|
||||
|
||||
and reboot, selecting Ubuntu 20.04 per this branch of the debugging tree.
|
||||
|
||||
## Rebooting
|
||||
|
||||
After rebooting, `OpenCL` detects the GPU! But it hangs and does not return from the call
|
||||
|
||||
```
|
||||
sudo clinfo -l
|
||||
```
|
||||
|
||||
The call without the `sudo` yields just the CPU and `Number of devices: 0` as before.
|
||||
|
||||
Here's the glorious output:
|
||||
|
||||
```
|
||||
$ sudo clinfo -l
|
||||
[sudo] password for arcologos:
|
||||
Number of platforms: 1
|
||||
Platform Profile: FULL_PROFILE
|
||||
Platform Version: OpenCL 2.1 AMD-APP (3558.0)
|
||||
Platform Name: AMD Accelerated Parallel Processing
|
||||
Platform Vendor: Advanced Micro Devices, Inc.
|
||||
Platform Extensions: cl_khr_icd cl_amd_event_callback
|
||||
|
||||
|
||||
Platform Name: AMD Accelerated Parallel Processing
|
||||
Number of devices: 1
|
||||
Device Type: CL_DEVICE_TYPE_GPU
|
||||
Vendor ID: 1002h
|
||||
Board name: AMD Radeon (TM) R9 390 Series
|
||||
Device Topology: PCI[ B#3, D#0, F#0 ]
|
||||
Max compute units: 40
|
||||
Max work items dimensions: 3
|
||||
Max work items[0]: 1024
|
||||
Max work items[1]: 1024
|
||||
Max work items[2]: 1024
|
||||
Max work group size: 256
|
||||
Preferred vector width char: 4
|
||||
Preferred vector width short: 2
|
||||
Preferred vector width int: 1
|
||||
Preferred vector width long: 1
|
||||
Preferred vector width float: 1
|
||||
Preferred vector width double: 1
|
||||
Native vector width char: 4
|
||||
Native vector width short: 2
|
||||
Native vector width int: 1
|
||||
Native vector width long: 1
|
||||
Native vector width float: 1
|
||||
Native vector width double: 1
|
||||
Max clock frequency: 1005Mhz
|
||||
Address bits: 64
|
||||
Max memory allocation: 7301444400
|
||||
Image support: Yes
|
||||
Max number of images read arguments: 128
|
||||
Max number of images write arguments: 8
|
||||
Max image 2D width: 16384
|
||||
Max image 2D height: 16384
|
||||
Max image 3D width: 16384
|
||||
Max image 3D height: 16384
|
||||
Max image 3D depth: 8192
|
||||
Max samplers within kernel: 26545
|
||||
Max size of kernel argument: 1024
|
||||
Alignment (bits) of base address: 1024
|
||||
Minimum alignment (bytes) for any datatype: 128
|
||||
Single precision floating point capability
|
||||
Denorms: No
|
||||
Quiet NaNs: Yes
|
||||
Round to nearest even: Yes
|
||||
Round to zero: Yes
|
||||
Round to +ve and infinity: Yes
|
||||
IEEE754-2008 fused multiply-add: Yes
|
||||
Cache type: Read/Write
|
||||
Cache line size: 64
|
||||
Cache size: 16384
|
||||
Global memory size: 8589934592
|
||||
Constant buffer size: 7301444400
|
||||
Max number of constant args: 8
|
||||
Local memory type: Scratchpad
|
||||
Local memory size: 65536
|
||||
Max pipe arguments: 16
|
||||
Max pipe active reservations: 16
|
||||
Max pipe packet size: 3006477104
|
||||
Max global variable size: 7301444400
|
||||
Max global variable preferred total size: 8589934592
|
||||
Max read/write image args: 64
|
||||
Max on device events: 1024
|
||||
Queue on device max size: 8388608
|
||||
Max on device queues: 1
|
||||
Queue on device preferred size: 262144
|
||||
SVM capabilities:
|
||||
Coarse grain buffer: Yes
|
||||
Fine grain buffer: Yes
|
||||
Fine grain system: No
|
||||
Atomics: No
|
||||
Preferred platform atomic alignment: 0
|
||||
Preferred global atomic alignment: 0
|
||||
Preferred local atomic alignment: 0
|
||||
```
|
||||
|
||||
## Add User to Video Group
|
||||
|
||||
Per this response
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/issues/482#issuecomment-410551357
|
||||
|
||||
I add the current user to the `video` group. I forget where I first read that this was necessary, but next also
|
||||
is to try the `render` group.
|
||||
|
||||
```
|
||||
sudo usermod -G video -a $USER
|
||||
|
||||
```
|
||||
|
||||
## Logging Out and Back In
|
||||
|
||||
The groupd `video` doesn't show up in the group list,
|
||||
|
||||
```
|
||||
$ id
|
||||
uid=1000(arcologos) gid=1000(arcologos) groups=1000(arcologos),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),120(lpadmin),133(lxd),134(sambashare)
|
||||
```
|
||||
|
||||
but now we get an additional line at the end of `clinfo` before it hangs.
|
||||
|
||||
```
|
||||
ERROR: clCreateKernel(-6)
|
||||
```
|
||||
|
||||
Next is to try adding to the `render` group, and then installing
|
||||
`libnuma-dev` as recommended in the above GitHub Issue thread comment.
|
||||
|
||||
## Add User to Render Group
|
||||
@ -0,0 +1,133 @@
|
||||
# Kernel Boot Params
|
||||
|
||||
## Updating Grub
|
||||
|
||||
To select the `AMDGPU` driver / module.
|
||||
|
||||
https://askubuntu.com/a/1314983
|
||||
|
||||
I'll add the following flags to the appropriate line in `/etc/default/grub`
|
||||
|
||||
```
|
||||
GRUB_CMDLINE_LINUX_DEFAULT="radeon.si_support=0 radeon.cik_support=0 amdgpu.si_support=1 amdgpu.cik_support=1 amdgpu.dc=1 amdgpu.dpm=1 amdgpu.modeset=1"
|
||||
```
|
||||
|
||||
Then run
|
||||
|
||||
```
|
||||
sudo update-grub
|
||||
```
|
||||
|
||||
and reboot, selecting Ubuntu 20.04 per this branch of the debugging tree.
|
||||
|
||||
## Rebooting
|
||||
|
||||
After rebooting, `OpenCL` detects the GPU! But it hangs and does not return from the call
|
||||
|
||||
```
|
||||
sudo clinfo -l
|
||||
```
|
||||
|
||||
The call without the `sudo` yields just the CPU and `Number of devices: 0` as before.
|
||||
|
||||
Here's the glorious output:
|
||||
|
||||
```
|
||||
$ sudo clinfo -l
|
||||
[sudo] password for arcologos:
|
||||
Number of platforms: 1
|
||||
Platform Profile: FULL_PROFILE
|
||||
Platform Version: OpenCL 2.1 AMD-APP (3558.0)
|
||||
Platform Name: AMD Accelerated Parallel Processing
|
||||
Platform Vendor: Advanced Micro Devices, Inc.
|
||||
Platform Extensions: cl_khr_icd cl_amd_event_callback
|
||||
|
||||
|
||||
Platform Name: AMD Accelerated Parallel Processing
|
||||
Number of devices: 1
|
||||
Device Type: CL_DEVICE_TYPE_GPU
|
||||
Vendor ID: 1002h
|
||||
Board name: AMD Radeon (TM) R9 390 Series
|
||||
Device Topology: PCI[ B#3, D#0, F#0 ]
|
||||
Max compute units: 40
|
||||
Max work items dimensions: 3
|
||||
Max work items[0]: 1024
|
||||
Max work items[1]: 1024
|
||||
Max work items[2]: 1024
|
||||
Max work group size: 256
|
||||
Preferred vector width char: 4
|
||||
Preferred vector width short: 2
|
||||
Preferred vector width int: 1
|
||||
Preferred vector width long: 1
|
||||
Preferred vector width float: 1
|
||||
Preferred vector width double: 1
|
||||
Native vector width char: 4
|
||||
Native vector width short: 2
|
||||
Native vector width int: 1
|
||||
Native vector width long: 1
|
||||
Native vector width float: 1
|
||||
Native vector width double: 1
|
||||
Max clock frequency: 1005Mhz
|
||||
Address bits: 64
|
||||
Max memory allocation: 7301444400
|
||||
Image support: Yes
|
||||
Max number of images read arguments: 128
|
||||
Max number of images write arguments: 8
|
||||
Max image 2D width: 16384
|
||||
Max image 2D height: 16384
|
||||
Max image 3D width: 16384
|
||||
Max image 3D height: 16384
|
||||
Max image 3D depth: 8192
|
||||
Max samplers within kernel: 26545
|
||||
Max size of kernel argument: 1024
|
||||
Alignment (bits) of base address: 1024
|
||||
Minimum alignment (bytes) for any datatype: 128
|
||||
Single precision floating point capability
|
||||
Denorms: No
|
||||
Quiet NaNs: Yes
|
||||
Round to nearest even: Yes
|
||||
Round to zero: Yes
|
||||
Round to +ve and infinity: Yes
|
||||
IEEE754-2008 fused multiply-add: Yes
|
||||
Cache type: Read/Write
|
||||
Cache line size: 64
|
||||
Cache size: 16384
|
||||
Global memory size: 8589934592
|
||||
Constant buffer size: 7301444400
|
||||
Max number of constant args: 8
|
||||
Local memory type: Scratchpad
|
||||
Local memory size: 65536
|
||||
Max pipe arguments: 16
|
||||
Max pipe active reservations: 16
|
||||
Max pipe packet size: 3006477104
|
||||
Max global variable size: 7301444400
|
||||
Max global variable preferred total size: 8589934592
|
||||
Max read/write image args: 64
|
||||
Max on device events: 1024
|
||||
Queue on device max size: 8388608
|
||||
Max on device queues: 1
|
||||
Queue on device preferred size: 262144
|
||||
SVM capabilities:
|
||||
Coarse grain buffer: Yes
|
||||
Fine grain buffer: Yes
|
||||
Fine grain system: No
|
||||
Atomics: No
|
||||
Preferred platform atomic alignment: 0
|
||||
Preferred global atomic alignment: 0
|
||||
Preferred local atomic alignment: 0
|
||||
```
|
||||
|
||||
## Add User to Video Group
|
||||
|
||||
Per this response
|
||||
|
||||
https://github.com/RadeonOpenCompute/ROCm/issues/482#issuecomment-410551357
|
||||
|
||||
I add the current user to the `video` group. I forget where I first read that this was necessary, but next also
|
||||
is to try the `render` group.
|
||||
|
||||
```
|
||||
sudo usermod -G video -a $USER
|
||||
|
||||
```
|
||||
|
||||
@ -0,0 +1,19 @@
|
||||
## Logging Out and Back In
|
||||
|
||||
The groupd `video` doesn't show up in the group list,
|
||||
|
||||
```
|
||||
$ id
|
||||
uid=1000(arcologos) gid=1000(arcologos) groups=1000(arcologos),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),120(lpadmin),133(lxd),134(sambashare)
|
||||
```
|
||||
|
||||
but now we get an additional line at the end of `clinfo` before it hangs.
|
||||
|
||||
```
|
||||
ERROR: clCreateKernel(-6)
|
||||
```
|
||||
|
||||
Next is to try adding to the `render` group, and then installing
|
||||
`libnuma-dev` as recommended in the above GitHub Issue thread comment.
|
||||
|
||||
## Add User to Render Group
|
||||
Loading…
Reference in new issue