Hashcat 4.1.0 not using AMD RX 570 & amdconfig: command not found
I'm trying install hashcat on a fresh ubuntu 18.04 installation. I'm using an AMD Radeon RX 570. Both my desktop monitors are connected to the GPU (not sure if that matters or makes a difference).

Immediately after installing Ubuntu, I updated:

$ apt-get update && apt-get dist-upgrade && reboot

Then began following the install instructions as per the hashcat FAQ:

$ sudo find / -name libOpenCL\* -print0 | xargs -0 rm -rf && reboot

$ sudo apt-get install ocl-icd-libopencl1 opencl-headers clinfo && reboot

Then I downloaded what I think is the correct driver:

$ wget https://www2.ati.com/drivers/linux/ubuntu/18.04/amdgpu-pro-18.20-606296.tar.xz

Unpacked it and ran the following:

$ ./amdgpu-install --version="1.6.180"

No installation errors reported. I ran it again for this forum post, here's the output:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
amdgpu is already the newest version (18.20-606296).
amdgpu-lib32 is already the newest version (18.20-606296).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

Then rebooted again.

$ sudo mv ~/.hashcat/kernels /tmp/old_kernels

Then rebooted again. Using `clinfo` only reports 1 platform and its my CPU. After downloading hashcat and unpacking it, I ran it with:

$ ./hashcat64.bin -b -m2500

But hashcat only uses the CPU. Looking again at the FAQ, I tried the `amdconfig` command but its not found.

$ amdconfig --adapter=all --initial -f
amdconfig: command not found

Where did I go wrong? I could really use some help.
According to askubuntu, AMDconfig uses fglrx. to install fglrx, please type 
sudo apt-get install fglrx
(06-17-2018, 06:09 AM)vigilantbag Wrote: According to askubuntu, AMDconfig uses fglrx. to install fglrx, please type 
sudo apt-get install fglrx

Thanks, but

$sudo apt-get install fglrx

Reading package lists... Done
Building dependency tree      
Reading state information... Done
E: Unable to locate package fglrx

It doesn't seem to be available in the latest LTS of Ubuntu.
Try: https://packages.ubuntu.com/search?keywords=fglrx
I appreciate the suggestion but I'd be worried about installing older/unsupported packages like that. I need this machine to be stable. Any other suggestions for me?
Use rocm instead of amdgpu-pro.
(06-17-2018, 10:49 AM)atom Wrote: Use rocm instead of amdgpu-pro.

Thanks @atom, I forgot to mention I tried the ROCm stuff before amdgpu. But I installed it again. Still no luck getting hashcat to see the GPU.

$ apt-get autoremove amdgpu* -V

Reading package lists... Done
Building dependency tree      
Reading state information... Done
Note, selecting 'amdgpu-pro-core' for glob 'amdgpu*'
Note, selecting 'amdgpu-core' for glob 'amdgpu*'
Note, selecting 'amdgpu-lib32' for glob 'amdgpu*'
Note, selecting 'amdgpu' for glob 'amdgpu*'
Note, selecting 'amdgpu-pro-lib32' for glob 'amdgpu*'
Note, selecting 'amdgpu-dkms' for glob 'amdgpu*'
Note, selecting 'amdgpu-pro' for glob 'amdgpu*'
Package 'amdgpu-pro' is not installed, so not removed
Package 'amdgpu-pro-lib32' is not installed, so not removed
The following packages will be REMOVED:
   amdgpu (18.20-606296)
   amdgpu-core (18.20-606296)
   amdgpu-dkms (18.20-606296)
   amdgpu-lib32 (18.20-606296)
   amdgpu-pro-core (18.20-606296)
   clinfo-amdgpu-pro (18.20-606296)
   glamor-amdgpu (1.19.0-606296)
   gst-omx-amdgpu (
   ids-amdgpu (1.0.0-606296)
   libbsd0:i386 (0.8.7-1)
   libdrm-amdgpu-amdgpu1 (1:2.4.91-606296)
   libdrm-amdgpu-amdgpu1:i386 (1:2.4.91-606296)
   libdrm-amdgpu1:i386 (2.4.91-2)
   libdrm-nouveau2:i386 (2.4.91-2)
   libdrm-radeon1:i386 (2.4.91-2)
   libdrm2:i386 (2.4.91-2)
   libdrm2-amdgpu (1:2.4.91-606296)
   libdrm2-amdgpu:i386 (1:2.4.91-606296)
   libedit2:i386 (3.1-20170329-1)
   libegl1-amdgpu-mesa (1:18.0.0-606296)
   libegl1-amdgpu-mesa:i386 (1:18.0.0-606296)
   libegl1-amdgpu-mesa-drivers (1:18.0.0-606296)
   libegl1-amdgpu-mesa-drivers:i386 (1:18.0.0-606296)
   libelf1:i386 (0.170-0.4)
   libexpat1:i386 (2.2.5-3)
   libffi6:i386 (3.2.1-8)
   libgbm1-amdgpu (1:18.0.0-606296)
   libgbm1-amdgpu:i386 (1:18.0.0-606296)
   libgl1-amdgpu-mesa-dri (1:18.0.0-606296)
   libgl1-amdgpu-mesa-dri:i386 (1:18.0.0-606296)
   libgl1-amdgpu-mesa-glx (1:18.0.0-606296)
   libgl1-amdgpu-mesa-glx:i386 (1:18.0.0-606296)
   libglapi-amdgpu-mesa (1:18.0.0-606296)
   libglapi-amdgpu-mesa:i386 (1:18.0.0-606296)
   libgles1-amdgpu-mesa (1:18.0.0-606296)
   libgles1-amdgpu-mesa:i386 (1:18.0.0-606296)
   libgles2-amdgpu-mesa (1:18.0.0-606296)
   libgles2-amdgpu-mesa:i386 (1:18.0.0-606296)
   libllvm6.0:i386 (1:6.0-1ubuntu2)
   libllvm6.0-amdgpu (1:6.0-606296)
   libllvm6.0-amdgpu:i386 (1:6.0-606296)
   libomxil-bellagio-bin (0.9.3-4)
   libomxil-bellagio0 (0.9.3-4)
   libopencl1-amdgpu-pro (18.20-606296)
   libosmesa6-amdgpu (1:18.0.0-606296)
   libosmesa6-amdgpu:i386 (1:18.0.0-606296)
   libsensors4:i386 (1:3.4.0-4)
   libstdc++6:i386 (8-20180414-1ubuntu2)
   libva2:i386 (2.1.0-3)
   libvdpau1:i386 (1.1.1-3ubuntu1)
   libwayland-amdgpu-client0 (1.14.0-606296)
   libwayland-amdgpu-client0:i386 (1.14.0-606296)
   libwayland-amdgpu-egl1-mesa (1:18.0.0-606296)
   libwayland-amdgpu-egl1-mesa:i386 (1:18.0.0-606296)
   libwayland-amdgpu-server0 (1.14.0-606296)
   libwayland-amdgpu-server0:i386 (1.14.0-606296)
   libx11-6:i386 (2:1.6.4-3)
   libx11-xcb1:i386 (2:1.6.4-3)
   libxatracker2-amdgpu (1:18.0.0-606296)
   libxatracker2-amdgpu:i386 (1:18.0.0-606296)
   libxau6:i386 (1:1.0.8-1)
   libxcb-dri2-0:i386 (1.13-1)
   libxcb-dri3-0:i386 (1.13-1)
   libxcb-glx0:i386 (1.13-1)
   libxcb-present0:i386 (1.13-1)
   libxcb-sync1:i386 (1.13-1)
   libxcb-xfixes0:i386 (1.13-1)
   libxcb1:i386 (1.13-1)
   libxdamage1:i386 (1:1.1.4-3)
   libxdmcp6:i386 (1:1.1.2-3)
   libxext6:i386 (2:1.3.3-1)
   libxfixes3:i386 (1:5.0.3-1)
   libxshmfence1:i386 (1.3-1)
   libxxf86vm1:i386 (1:1.1.4-1)
   mesa-amdgpu-omx-drivers (1:18.0.0-606296)
   mesa-amdgpu-va-drivers (1:18.0.0-606296)
   mesa-amdgpu-va-drivers:i386 (1:18.0.0-606296)
   mesa-amdgpu-vdpau-drivers (1:18.0.0-606296)
   mesa-amdgpu-vdpau-drivers:i386 (1:18.0.0-606296)
   mesa-vdpau-drivers:i386 (18.0.0~rc5-1ubuntu1)
   opencl-amdgpu-pro-dev (18.20-606296)
   vdpau-driver-all:i386 (1.1.1-3ubuntu1)
   xserver-xorg-amdgpu-video-amdgpu (1:1.4.0-606296)
0 upgraded, 0 newly installed, 83 to remove and 1 not upgraded.
After this operation, 562 MB disk space will be freed.
Do you want to continue? [Y/n] y

$ apt-get purge amdgpu* -V

Reading package lists... Done
Building dependency tree      
Reading state information... Done
Note, selecting 'amdgpu-pro-core' for glob 'amdgpu*'
Note, selecting 'amdgpu-core' for glob 'amdgpu*'
Note, selecting 'amdgpu-lib32' for glob 'amdgpu*'
Note, selecting 'amdgpu' for glob 'amdgpu*'
Note, selecting 'amdgpu-pro-lib32' for glob 'amdgpu*'
Note, selecting 'amdgpu-dkms' for glob 'amdgpu*'
Note, selecting 'amdgpu-pro' for glob 'amdgpu*'
Package 'amdgpu' is not installed, so not removed
Package 'amdgpu-core' is not installed, so not removed
Package 'amdgpu-lib32' is not installed, so not removed
Package 'amdgpu-pro' is not installed, so not removed
Package 'amdgpu-pro-core' is not installed, so not removed
Package 'amdgpu-pro-lib32' is not installed, so not removed
The following packages will be REMOVED:
   amdgpu-dkms* (18.20-606296)
0 upgraded, 0 newly installed, 1 to remove and 1 not upgraded.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]
(Reading database ... 189250 files and directories currently installed.)
Purging configuration files for amdgpu-dkms (18.20-606296) ...

Then I rebooted.

$ apt install libnuma-dev

Reading package lists... Done
Building dependency tree      
Reading state information... Done
libnuma-dev is already the newest version (2.0.11-2.1).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

Rebooted again.

$ wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add -

$ sudo sh -c 'echo deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main > /etc/apt/sources.list.d/rocm.list'

I'm using Bionic (Ubuntu 18) but the radeon repo doesn't have support for bionic so I used the Xenial.

$ sudo apt update && apt install rocm-dkms

Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following additional packages will be installed:
  hcc hip_base hip_doc hip_hcc hip_samples hsa-amd-aqlprofile hsa-ext-rocr-dev hsa-rocr-dev hsakmt-roct hsakmt-roct-dev rock-dkms rocm-clang-ocl
  rocm-dev rocm-device-libs rocm-opencl rocm-opencl-dev rocm-smi rocm-utils rocminfo
The following NEW packages will be installed:
  hcc hip_base hip_doc hip_hcc hip_samples hsa-amd-aqlprofile hsa-ext-rocr-dev hsa-rocr-dev hsakmt-roct hsakmt-roct-dev rock-dkms rocm-clang-ocl
  rocm-dev rocm-device-libs rocm-dkms rocm-opencl rocm-opencl-dev rocm-smi rocm-utils rocminfo
0 upgraded, 20 newly installed, 0 to remove and 1 not upgraded.
Need to get 373 MB of archives.
After this operation, 1,843 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hsa-ext-rocr-dev amd64 1.1.8-15-ge851b7a [9,165 kB]
Get:2 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hsakmt-roct amd64 1.0.8-1-ge3dd067 [48.9 kB]                                            
Get:3 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hsakmt-roct-dev amd64 1.0.8-1-ge3dd067 [23.5 kB]                                        
Get:4 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hsa-rocr-dev amd64 1.1.8-15-ge851b7a [386 kB]                                            
Get:5 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocminfo amd64 1.0.0 [18.4 kB]                                                          
Get:6 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-opencl amd64 1.2.0-2018053053 [40.0 MB]                                            
Get:7 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-opencl-dev amd64 1.2.0-2018053053 [16.7 MB]                                        
Get:8 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-clang-ocl amd64 0.3.0-c1b678e [1,570 B]                                            
Get:9 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-utils amd64 1.8.151 [766 B]                                                        
Get:10 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hcc amd64 1.2.18184 [294 MB]                                                            
Get:11 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hip_base amd64 1.5.18151 [248 kB]                                                      
Get:12 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hip_doc amd64 1.5.18151 [630 kB]                                                        
Get:13 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hip_hcc amd64 1.5.18151 [5,495 kB]                                                      
Get:14 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hip_samples amd64 1.5.18151 [64.6 kB]                                                  
Get:15 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 hsa-amd-aqlprofile amd64 1.0.0 [55.8 kB]                                                
Get:16 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rock-dkms all 1.8-151 [5,279 kB]                                                        
Get:17 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-device-libs amd64 0.0.1 [720 kB]                                                  
Get:18 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-smi amd64 1.0.0-42-g0ae1c36 [9,114 B]                                              
Get:19 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-dev amd64 1.8.151 [828 B]                                                          
Get:20 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 rocm-dkms amd64 1.8.151 [1,000 B]                                                      
Fetched 373 MB in 16min 35s (375 kB/s)                                                                                                                  
Selecting previously unselected package hsa-ext-rocr-dev.
(Reading database ... 189250 files and directories currently installed.)
Preparing to unpack .../00-hsa-ext-rocr-dev_1.1.8-15-ge851b7a_amd64.deb ...
Unpacking hsa-ext-rocr-dev (1.1.8-15-ge851b7a) ...
Selecting previously unselected package hsakmt-roct.
Preparing to unpack .../01-hsakmt-roct_1.0.8-1-ge3dd067_amd64.deb ...
Unpacking hsakmt-roct (1.0.8-1-ge3dd067) ...
Selecting previously unselected package hsakmt-roct-dev.
Preparing to unpack .../02-hsakmt-roct-dev_1.0.8-1-ge3dd067_amd64.deb ...
Unpacking hsakmt-roct-dev (1.0.8-1-ge3dd067) ...
Selecting previously unselected package hsa-rocr-dev.
Preparing to unpack .../03-hsa-rocr-dev_1.1.8-15-ge851b7a_amd64.deb ...
Unpacking hsa-rocr-dev (1.1.8-15-ge851b7a) ...
Selecting previously unselected package rocminfo.
Preparing to unpack .../04-rocminfo_1.0.0_amd64.deb ...
Unpacking rocminfo (1.0.0) ...
Selecting previously unselected package rocm-opencl.
Preparing to unpack .../05-rocm-opencl_1.2.0-2018053053_amd64.deb ...
Unpacking rocm-opencl (1.2.0-2018053053) ...
Selecting previously unselected package rocm-opencl-dev.
Preparing to unpack .../06-rocm-opencl-dev_1.2.0-2018053053_amd64.deb ...
Unpacking rocm-opencl-dev (1.2.0-2018053053) ...
Selecting previously unselected package rocm-clang-ocl.
Preparing to unpack .../07-rocm-clang-ocl_0.3.0-c1b678e_amd64.deb ...
Unpacking rocm-clang-ocl (0.3.0-c1b678e) ...
Selecting previously unselected package rocm-utils.
Preparing to unpack .../08-rocm-utils_1.8.151_amd64.deb ...
Unpacking rocm-utils (1.8.151) ...
Selecting previously unselected package hcc.
Preparing to unpack .../09-hcc_1.2.18184_amd64.deb ...
Unpacking hcc (1.2.18184) ...
Selecting previously unselected package hip_base.
Preparing to unpack .../10-hip%5fbase_1.5.18151_amd64.deb ...
Unpacking hip_base (1.5.18151) ...
Selecting previously unselected package hip_doc.
Preparing to unpack .../11-hip%5fdoc_1.5.18151_amd64.deb ...
Unpacking hip_doc (1.5.18151) ...
Selecting previously unselected package hip_hcc.
Preparing to unpack .../12-hip%5fhcc_1.5.18151_amd64.deb ...
Unpacking hip_hcc (1.5.18151) ...
Selecting previously unselected package hip_samples.
Preparing to unpack .../13-hip%5fsamples_1.5.18151_amd64.deb ...
Unpacking hip_samples (1.5.18151) ...
Selecting previously unselected package hsa-amd-aqlprofile.
Preparing to unpack .../14-hsa-amd-aqlprofile_1.0.0_amd64.deb ...
Unpacking hsa-amd-aqlprofile (1.0.0) ...
Selecting previously unselected package rock-dkms.
Preparing to unpack .../15-rock-dkms_1.8-151_all.deb ...
Unpacking rock-dkms (1.8-151) ...
Selecting previously unselected package rocm-device-libs.
Preparing to unpack .../16-rocm-device-libs_0.0.1_amd64.deb ...
Unpacking rocm-device-libs (0.0.1) ...
Selecting previously unselected package rocm-smi.
Preparing to unpack .../17-rocm-smi_1.0.0-42-g0ae1c36_amd64.deb ...
Unpacking rocm-smi (1.0.0-42-g0ae1c36) ...
Selecting previously unselected package rocm-dev.
Preparing to unpack .../18-rocm-dev_1.8.151_amd64.deb ...
Unpacking rocm-dev (1.8.151) ...
Selecting previously unselected package rocm-dkms.
Preparing to unpack .../19-rocm-dkms_1.8.151_amd64.deb ...
Unpacking rocm-dkms (1.8.151) ...
Setting up rocm-smi (1.0.0-42-g0ae1c36) ...
Setting up rocm-device-libs (0.0.1) ...
Setting up hip_base (1.5.18151) ...
Setting up rock-dkms (1.8-151) ...
Loading new amdgpu-1.8-151 DKMS files...
Building for 4.15.0-23-generic
Building for architecture x86_64
Building initial module for 4.15.0-23-generic
Error! Bad return status for module build on kernel: 4.15.0-23-generic (x86_64)
Consult /var/lib/dkms/amdgpu/1.8-151/build/make.log for more information.
Setting up hsa-ext-rocr-dev (1.1.8-15-ge851b7a) ...
Setting up hsakmt-roct (1.0.8-1-ge3dd067) ...
Setting up rocminfo (1.0.0) ...
Setting up hsa-amd-aqlprofile (1.0.0) ...
Setting up hip_doc (1.5.18151) ...
Setting up hip_samples (1.5.18151) ...
Setting up hsakmt-roct-dev (1.0.8-1-ge3dd067) ...
Setting up hsa-rocr-dev (1.1.8-15-ge851b7a) ...
Setting up rocm-opencl (1.2.0-2018053053) ...
Setting up rocm-opencl-dev (1.2.0-2018053053) ...
Setting up rocm-clang-ocl (0.3.0-c1b678e) ...
Setting up rocm-utils (1.8.151) ...
Setting up hcc (1.2.18184) ...
Setting up hip_hcc (1.5.18151) ...
Setting up rocm-dev (1.8.151) ...
Setting up rocm-dkms (1.8.151) ...
KERNEL=="kfd", MODE="0666"
Processing triggers for libc-bin (2.27-3ubuntu1) ..

$ sudo usermod -a -G video $LOGNAME

Rebooted again. Rocminfo is installed but the command wasn't found.

$ apt-cache policy rocminfo
  Installed: 1.0.0
  Candidate: 1.0.0
  Version table:
*** 1.0.0 500
        500 http://repo.radeon.com/rocm/apt/debian xenial/main amd64 Packages
        100 /var/lib/dpkg/status

$ rocminfo
rocminfo: command not found

$ whereis rocminfo
rocminfo: /opt/rocm/bin/rocminfo

$ /opt/rocm/bin/rocminfo
hsa api call failure at line 900, file: /home/jenkins/jenkins-root/workspace/compute-rocm-rel-1.8/rocminfo/rocminfo.cc. Call returned 4104

Which brought me to this Git issue. The user gstoner (who I think is a dev) says: "you are both using custom kernel driver, you mostly seeing an issue that the driver did not load correctly". Which kernel driver or kernel version should I be using? When I installed Bionic, I ran dist-upgrade which gave me the following kernel version:

$ uname -a
Linux d5y9nu 4.15.0-23-generic #25-Ubuntu SMP Wed May 23 18:02:16 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

More info below someone may find helpful for debugging (I don't know what most of it means):

$ clinfo

Number of platforms                               1
  Platform Name                                   Portable Computing Language
  Platform Vendor                                 The pocl project
  Platform Version                                OpenCL 1.2 pocl 1.1 None+Asserts, LLVM 6.0.0, SPIR, SLEEF, DISTRO, POCL_DEBUG
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd
  Platform Extensions function suffix             POCL

  Platform Name                                   Portable Computing Language
Number of devices                                 1
  Device Name                                     pthread-AMD Ryzen 7 1700 Eight-Core Processor
  Device Vendor                                   AuthenticAMD
  Device Vendor ID                                0x1022
  Device Version                                  OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-znver1
  Driver Version                                  1.1
  Device OpenCL C Version                         OpenCL C 1.2 pocl
  Device Type                                     CPU
  Device Profile                                  FULL_PROFILE
  Device Available                                Yes
  Compiler Available                              Yes
  Linker Available                                Yes
  Max compute units                               16
  Max clock frequency                             3000MHz
  Device Partition                                (core)
    Max number of sub-devices                     16
    Supported partition types                     equally, by counts
  Max work item dimensions                        3
  Max work item sizes                             4096x4096x4096
  Max work group size                             4096
  Preferred work group size multiple              8
  Preferred / native vector sizes                
    char                                                16 / 16      
    short                                               16 / 16      
    int                                                  8 / 8      
    long                                                 4 / 4      
    half                                                 0 / 0        (n/a)
    float                                                8 / 8      
    double                                               4 / 4        (cl_khr_fp64)
  Half-precision Floating-point support           (n/a)
  Single-precision Floating-point support         (core)
    Denormals                                     Yes
    Infinity and NANs                             Yes
    Round to nearest                              Yes
    Round to zero                                 Yes
    Round to infinity                             Yes
    IEEE754-2008 fused multiply-add               Yes
    Support is emulated in software               No
    Correctly-rounded divide and sqrt operations  Yes
  Double-precision Floating-point support         (cl_khr_fp64)
    Denormals                                     Yes
    Infinity and NANs                             Yes
    Round to nearest                              Yes
    Round to zero                                 Yes
    Round to infinity                             Yes
    IEEE754-2008 fused multiply-add               Yes
    Support is emulated in software               No
  Address bits                                    64, Little-Endian
  Global memory size                              14665801728 (13.66GiB)
  Error Correction support                        No
  Max memory allocation                           4294967296 (4GiB)
  Unified memory for Host and Device              Yes
  Minimum alignment for any data type             128 bytes
  Alignment of base address                       1024 bits (128 bytes)
  Global Memory cache type                        Read/Write
  Global Memory cache size                        8388608 (8MiB)
  Global Memory cache line size                   64 bytes
  Image support                                   Yes
    Max number of samplers per kernel             16
    Max size for 1D images from buffer            268435456 pixels
    Max 1D or 2D image array size                 2048 images
    Max 2D image size                             16384x16384 pixels
    Max 3D image size                             2048x2048x2048 pixels
    Max number of read image args                 128
    Max number of write image args                128
  Local memory type                               Global
  Local memory size                               4194304 (4MiB)
  Max number of constant args                     8
  Max constant buffer size                        4194304 (4MiB)
  Max size of kernel argument                     1024
  Queue properties                                
    Out-of-order execution                        No
    Profiling                                     Yes
  Prefer user sync for interop                    Yes
  Profiling timer resolution                      1ns
  Execution capabilities                          
    Run OpenCL kernels                            Yes
    Run native kernels                            Yes
    SPIR versions                                 1.2
  printf() buffer size                            1048576 (1024KiB)
  Built-in kernels                                
  Device Extensions                               cl_khr_byte_addressable_store 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_3d_image_writes cl_khr_spir cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp64

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  No platform
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   No platform
  clCreateContext(NULL, ...) [default]            No platform
  clCreateContext(NULL, ...) [other]              Success [POCL]
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT)  Success (1)
    Platform Name                                 Portable Computing Language
    Device Name                                   pthread-AMD Ryzen 7 1700 Eight-Core Processor
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  Success (1)
    Platform Name                                 Portable Computing Language
    Device Name                                   pthread-AMD Ryzen 7 1700 Eight-Core Processor
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  Success (1)
    Platform Name                                 Portable Computing Language
    Device Name                                   pthread-AMD Ryzen 7 1700 Eight-Core Processor

$ lsmod | grep kfd
amdkfd                180224  1
amd_iommu_v2           20480  1 amdkfd

$ modinfo amdkfd
filename:       /lib/modules/4.15.0-23-generic/kernel/drivers/gpu/drm/amd/amdkfd/amdkfd.ko
version:        0.7.2
license:        GPL and additional rights
description:    Standalone HSA driver for AMD's GPUs
author:         AMD Inc. and others
srcversion:     D5D2914DA1F162B1DF38AF3
depends:        amd_iommu_v2
retpoline:      Y
intree:         Y
name:           amdkfd
vermagic:       4.15.0-23-generic SMP mod_unload
signat:         PKCS#7
sig_hashalgo:   md4
parm:           sched_policy:Scheduling policy (0 = HWS (Default), 1 = HWS without over-subscription, 2 = Non-HWS (Used for debugging only) (int)
parm:           max_num_of_queues_per_device:Maximum number of supported queues per device (1 = Minimum, 4096 = default) (int)
parm:           send_sigterm:Send sigterm to HSA process on unhandled exception (0 = disable, 1 = enable) (int)

$ modinfo amdgpu
filename:       /lib/modules/4.15.0-23-generic/kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
license:        GPL and additional rights
description:    AMD GPU
author:         AMD linux driver team
firmware:       amdgpu/raven_gpu_info.bin
firmware:       amdgpu/vega10_gpu_info.bin
firmware:       radeon/hawaii_k_smc.bin
firmware:       radeon/hawaii_smc.bin
firmware:       radeon/bonaire_k_smc.bin
firmware:       radeon/bonaire_smc.bin
firmware:       radeon/mullins_mec.bin
firmware:       radeon/mullins_rlc.bin
firmware:       radeon/mullins_ce.bin
firmware:       radeon/mullins_me.bin
firmware:       radeon/mullins_pfp.bin
firmware:       radeon/kabini_mec.bin
firmware:       radeon/kabini_rlc.bin
firmware:       radeon/kabini_ce.bin
firmware:       radeon/kabini_me.bin
firmware:       radeon/kabini_pfp.bin
firmware:       radeon/kaveri_mec2.bin
firmware:       radeon/kaveri_mec.bin
firmware:       radeon/kaveri_rlc.bin
firmware:       radeon/kaveri_ce.bin
firmware:       radeon/kaveri_me.bin
firmware:       radeon/kaveri_pfp.bin
firmware:       radeon/hawaii_mec.bin
firmware:       radeon/hawaii_rlc.bin
firmware:       radeon/hawaii_ce.bin
firmware:       radeon/hawaii_me.bin
firmware:       radeon/hawaii_pfp.bin
firmware:       radeon/bonaire_mec.bin
firmware:       radeon/bonaire_rlc.bin
firmware:       radeon/bonaire_ce.bin
firmware:       radeon/bonaire_me.bin
firmware:       radeon/bonaire_pfp.bin
firmware:       radeon/mullins_sdma1.bin
firmware:       radeon/mullins_sdma.bin
firmware:       radeon/kabini_sdma1.bin
firmware:       radeon/kabini_sdma.bin
firmware:       radeon/kaveri_sdma1.bin
firmware:       radeon/kaveri_sdma.bin
firmware:       radeon/hawaii_sdma1.bin
firmware:       radeon/hawaii_sdma.bin
firmware:       radeon/bonaire_sdma1.bin
firmware:       radeon/bonaire_sdma.bin
firmware:       radeon/si58_mc.bin
firmware:       radeon/oland_mc.bin
firmware:       radeon/verde_mc.bin
firmware:       radeon/pitcairn_mc.bin
firmware:       radeon/tahiti_mc.bin
firmware:       radeon/hainan_rlc.bin
firmware:       radeon/hainan_ce.bin
firmware:       radeon/hainan_me.bin
firmware:       radeon/hainan_pfp.bin
firmware:       radeon/oland_rlc.bin
firmware:       radeon/oland_ce.bin
firmware:       radeon/oland_me.bin
firmware:       radeon/oland_pfp.bin
firmware:       radeon/verde_rlc.bin
firmware:       radeon/verde_ce.bin
firmware:       radeon/verde_me.bin
firmware:       radeon/verde_pfp.bin
firmware:       radeon/pitcairn_rlc.bin
firmware:       radeon/pitcairn_ce.bin
firmware:       radeon/pitcairn_me.bin
firmware:       radeon/pitcairn_pfp.bin
firmware:       radeon/tahiti_rlc.bin
firmware:       radeon/tahiti_ce.bin
firmware:       radeon/tahiti_me.bin
firmware:       radeon/tahiti_pfp.bin
firmware:       radeon/banks_k_2_smc.bin
firmware:       radeon/hainan_k_smc.bin
firmware:       radeon/hainan_smc.bin
firmware:       radeon/oland_k_smc.bin
firmware:       radeon/oland_smc.bin
firmware:       radeon/verde_k_smc.bin
firmware:       radeon/verde_smc.bin
firmware:       radeon/pitcairn_k_smc.bin
firmware:       radeon/pitcairn_smc.bin
firmware:       radeon/tahiti_smc.bin
firmware:       amdgpu/topaz_mc.bin
firmware:       radeon/hawaii_mc.bin
firmware:       radeon/bonaire_mc.bin
firmware:       amdgpu/polaris12_mc.bin
firmware:       amdgpu/polaris10_mc.bin
firmware:       amdgpu/polaris11_mc.bin
firmware:       amdgpu/tonga_mc.bin
firmware:       amdgpu/vega10_asd.bin
firmware:       amdgpu/vega10_sos.bin
firmware:       amdgpu/raven_asd.bin
firmware:       amdgpu/polaris12_rlc.bin
firmware:       amdgpu/polaris12_mec2_2.bin
firmware:       amdgpu/polaris12_mec2.bin
firmware:       amdgpu/polaris12_mec_2.bin
firmware:       amdgpu/polaris12_mec.bin
firmware:       amdgpu/polaris12_me_2.bin
firmware:       amdgpu/polaris12_me.bin
firmware:       amdgpu/polaris12_pfp_2.bin
firmware:       amdgpu/polaris12_pfp.bin
firmware:       amdgpu/polaris12_ce_2.bin
firmware:       amdgpu/polaris12_ce.bin
firmware:       amdgpu/polaris10_rlc.bin
firmware:       amdgpu/polaris10_mec2_2.bin
firmware:       amdgpu/polaris10_mec2.bin
firmware:       amdgpu/polaris10_mec_2.bin
firmware:       amdgpu/polaris10_mec.bin
firmware:       amdgpu/polaris10_me_2.bin
firmware:       amdgpu/polaris10_me.bin
firmware:       amdgpu/polaris10_pfp_2.bin
firmware:       amdgpu/polaris10_pfp.bin
firmware:       amdgpu/polaris10_ce_2.bin
firmware:       amdgpu/polaris10_ce.bin
firmware:       amdgpu/polaris11_rlc.bin
firmware:       amdgpu/polaris11_mec2_2.bin
firmware:       amdgpu/polaris11_mec2.bin
firmware:       amdgpu/polaris11_mec_2.bin
firmware:       amdgpu/polaris11_mec.bin
firmware:       amdgpu/polaris11_me_2.bin
firmware:       amdgpu/polaris11_me.bin
firmware:       amdgpu/polaris11_pfp_2.bin
firmware:       amdgpu/polaris11_pfp.bin
firmware:       amdgpu/polaris11_ce_2.bin
firmware:       amdgpu/polaris11_ce.bin
firmware:       amdgpu/fiji_rlc.bin
firmware:       amdgpu/fiji_mec2.bin
firmware:       amdgpu/fiji_mec.bin
firmware:       amdgpu/fiji_me.bin
firmware:       amdgpu/fiji_pfp.bin
firmware:       amdgpu/fiji_ce.bin
firmware:       amdgpu/topaz_rlc.bin
firmware:       amdgpu/topaz_mec.bin
firmware:       amdgpu/topaz_me.bin
firmware:       amdgpu/topaz_pfp.bin
firmware:       amdgpu/topaz_ce.bin
firmware:       amdgpu/tonga_rlc.bin
firmware:       amdgpu/tonga_mec2.bin
firmware:       amdgpu/tonga_mec.bin
firmware:       amdgpu/tonga_me.bin
firmware:       amdgpu/tonga_pfp.bin
firmware:       amdgpu/tonga_ce.bin
firmware:       amdgpu/stoney_rlc.bin
firmware:       amdgpu/stoney_mec.bin
firmware:       amdgpu/stoney_me.bin
firmware:       amdgpu/stoney_pfp.bin
firmware:       amdgpu/stoney_ce.bin
firmware:       amdgpu/carrizo_rlc.bin
firmware:       amdgpu/carrizo_mec2.bin
firmware:       amdgpu/carrizo_mec.bin
firmware:       amdgpu/carrizo_me.bin
firmware:       amdgpu/carrizo_pfp.bin
firmware:       amdgpu/carrizo_ce.bin
firmware:       amdgpu/raven_rlc.bin
firmware:       amdgpu/raven_mec2.bin
firmware:       amdgpu/raven_mec.bin
firmware:       amdgpu/raven_me.bin
firmware:       amdgpu/raven_pfp.bin
firmware:       amdgpu/raven_ce.bin
firmware:       amdgpu/vega10_rlc.bin
firmware:       amdgpu/vega10_mec2.bin
firmware:       amdgpu/vega10_mec.bin
firmware:       amdgpu/vega10_me.bin
firmware:       amdgpu/vega10_pfp.bin
firmware:       amdgpu/vega10_ce.bin
firmware:       amdgpu/topaz_sdma1.bin
firmware:       amdgpu/topaz_sdma.bin
firmware:       amdgpu/polaris12_sdma1.bin
firmware:       amdgpu/polaris12_sdma.bin
firmware:       amdgpu/polaris11_sdma1.bin
firmware:       amdgpu/polaris11_sdma.bin
firmware:       amdgpu/polaris10_sdma1.bin
firmware:       amdgpu/polaris10_sdma.bin
firmware:       amdgpu/stoney_sdma.bin
firmware:       amdgpu/fiji_sdma1.bin
firmware:       amdgpu/fiji_sdma.bin
firmware:       amdgpu/carrizo_sdma1.bin
firmware:       amdgpu/carrizo_sdma.bin
firmware:       amdgpu/tonga_sdma1.bin
firmware:       amdgpu/tonga_sdma.bin
firmware:       amdgpu/raven_sdma.bin
firmware:       amdgpu/vega10_sdma1.bin
firmware:       amdgpu/vega10_sdma.bin
firmware:       amdgpu/vega10_uvd.bin
firmware:       amdgpu/polaris12_uvd.bin
firmware:       amdgpu/polaris11_uvd.bin
firmware:       amdgpu/polaris10_uvd.bin
firmware:       amdgpu/stoney_uvd.bin
firmware:       amdgpu/fiji_uvd.bin
firmware:       amdgpu/carrizo_uvd.bin
firmware:       amdgpu/tonga_uvd.bin
firmware:       radeon/mullins_uvd.bin
firmware:       radeon/hawaii_uvd.bin
firmware:       radeon/kaveri_uvd.bin
firmware:       radeon/kabini_uvd.bin
firmware:       radeon/bonaire_uvd.bin
firmware:       amdgpu/vega10_vce.bin
firmware:       amdgpu/polaris12_vce.bin
firmware:       amdgpu/polaris11_vce.bin
firmware:       amdgpu/polaris10_vce.bin
firmware:       amdgpu/stoney_vce.bin
firmware:       amdgpu/fiji_vce.bin
firmware:       amdgpu/carrizo_vce.bin
firmware:       amdgpu/tonga_vce.bin
firmware:       radeon/mullins_vce.bin
firmware:       radeon/hawaii_vce.bin
firmware:       radeon/kaveri_vce.bin
firmware:       radeon/kabini_vce.bin
firmware:       radeon/bonaire_vce.bin
firmware:       amdgpu/raven_vcn.bin
firmware:       amdgpu/vega10_acg_smc.bin
firmware:       amdgpu/vega10_smc.bin
firmware:       amdgpu/polaris12_smc.bin
firmware:       amdgpu/polaris11_k_smc.bin
firmware:       amdgpu/polaris11_smc_sk.bin
firmware:       amdgpu/polaris11_smc.bin
firmware:       amdgpu/polaris10_k_smc.bin
firmware:       amdgpu/polaris10_smc_sk.bin
firmware:       amdgpu/polaris10_smc.bin
firmware:       amdgpu/fiji_smc.bin
firmware:       amdgpu/tonga_k_smc.bin
firmware:       amdgpu/tonga_smc.bin
firmware:       amdgpu/topaz_k_smc.bin
firmware:       amdgpu/topaz_smc.bin
srcversion:     40BE22B7CE959BE6EDF5ABD
alias:          pci:v00001002d000015DDsv*sd*bc*sc*i*
alias:          pci:v00001002d0000687Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000686Csv*sd*bc*sc*i*
alias:          pci:v00001002d00006868sv*sd*bc*sc*i*
alias:          pci:v00001002d00006867sv*sd*bc*sc*i*
alias:          pci:v00001002d00006864sv*sd*bc*sc*i*
alias:          pci:v00001002d00006863sv*sd*bc*sc*i*
alias:          pci:v00001002d00006862sv*sd*bc*sc*i*
alias:          pci:v00001002d00006861sv*sd*bc*sc*i*
alias:          pci:v00001002d00006860sv*sd*bc*sc*i*
alias:          pci:v00001002d0000699Fsv*sd*bc*sc*i*
alias:          pci:v00001002d00006997sv*sd*bc*sc*i*
alias:          pci:v00001002d00006995sv*sd*bc*sc*i*
alias:          pci:v00001002d00006987sv*sd*bc*sc*i*
alias:          pci:v00001002d00006986sv*sd*bc*sc*i*
alias:          pci:v00001002d00006985sv*sd*bc*sc*i*
alias:          pci:v00001002d00006981sv*sd*bc*sc*i*
alias:          pci:v00001002d00006980sv*sd*bc*sc*i*
alias:          pci:v00001002d000067CFsv*sd*bc*sc*i*
alias:          pci:v00001002d000067CCsv*sd*bc*sc*i*
alias:          pci:v00001002d000067CAsv*sd*bc*sc*i*
alias:          pci:v00001002d000067C9sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C8sv*sd*bc*sc*i*
alias:          pci:v00001002d000067DFsv*sd*bc*sc*i*
alias:          pci:v00001002d000067D0sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C7sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C4sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C2sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C1sv*sd*bc*sc*i*
alias:          pci:v00001002d000067C0sv*sd*bc*sc*i*
alias:          pci:v00001002d000067E9sv*sd*bc*sc*i*
alias:          pci:v00001002d000067E7sv*sd*bc*sc*i*
alias:          pci:v00001002d000067E1sv*sd*bc*sc*i*
alias:          pci:v00001002d000067FFsv*sd*bc*sc*i*
alias:          pci:v00001002d000067EFsv*sd*bc*sc*i*
alias:          pci:v00001002d000067EBsv*sd*bc*sc*i*
alias:          pci:v00001002d000067E8sv*sd*bc*sc*i*
alias:          pci:v00001002d000067E3sv*sd*bc*sc*i*
alias:          pci:v00001002d000067E0sv*sd*bc*sc*i*
alias:          pci:v00001002d000098E4sv*sd*bc*sc*i*
alias:          pci:v00001002d00009877sv*sd*bc*sc*i*
alias:          pci:v00001002d00009876sv*sd*bc*sc*i*
alias:          pci:v00001002d00009875sv*sd*bc*sc*i*
alias:          pci:v00001002d00009874sv*sd*bc*sc*i*
alias:          pci:v00001002d00009870sv*sd*bc*sc*i*
alias:          pci:v00001002d0000730Fsv*sd*bc*sc*i*
alias:          pci:v00001002d00007300sv*sd*bc*sc*i*
alias:          pci:v00001002d00006939sv*sd*bc*sc*i*
alias:          pci:v00001002d00006938sv*sd*bc*sc*i*
alias:          pci:v00001002d00006930sv*sd*bc*sc*i*
alias:          pci:v00001002d0000692Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000692Bsv*sd*bc*sc*i*
alias:          pci:v00001002d00006929sv*sd*bc*sc*i*
alias:          pci:v00001002d00006928sv*sd*bc*sc*i*
alias:          pci:v00001002d00006921sv*sd*bc*sc*i*
alias:          pci:v00001002d00006920sv*sd*bc*sc*i*
alias:          pci:v00001002d00006907sv*sd*bc*sc*i*
alias:          pci:v00001002d00006903sv*sd*bc*sc*i*
alias:          pci:v00001002d00006902sv*sd*bc*sc*i*
alias:          pci:v00001002d00006901sv*sd*bc*sc*i*
alias:          pci:v00001002d00006900sv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Esv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Csv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Bsv*sd*bc*sc*i*
alias:          pci:v00001002d0000985Asv*sd*bc*sc*i*
alias:          pci:v00001002d00009859sv*sd*bc*sc*i*
alias:          pci:v00001002d00009858sv*sd*bc*sc*i*
alias:          pci:v00001002d00009857sv*sd*bc*sc*i*
alias:          pci:v00001002d00009856sv*sd*bc*sc*i*
alias:          pci:v00001002d00009855sv*sd*bc*sc*i*
alias:          pci:v00001002d00009854sv*sd*bc*sc*i*
alias:          pci:v00001002d00009853sv*sd*bc*sc*i*
alias:          pci:v00001002d00009852sv*sd*bc*sc*i*
alias:          pci:v00001002d00009851sv*sd*bc*sc*i*
alias:          pci:v00001002d00009850sv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Esv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Csv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Bsv*sd*bc*sc*i*
alias:          pci:v00001002d0000983Asv*sd*bc*sc*i*
alias:          pci:v00001002d00009839sv*sd*bc*sc*i*
alias:          pci:v00001002d00009838sv*sd*bc*sc*i*
alias:          pci:v00001002d00009837sv*sd*bc*sc*i*
alias:          pci:v00001002d00009836sv*sd*bc*sc*i*
alias:          pci:v00001002d00009835sv*sd*bc*sc*i*
alias:          pci:v00001002d00009834sv*sd*bc*sc*i*
alias:          pci:v00001002d00009833sv*sd*bc*sc*i*
alias:          pci:v00001002d00009832sv*sd*bc*sc*i*
alias:          pci:v00001002d00009831sv*sd*bc*sc*i*
alias:          pci:v00001002d00009830sv*sd*bc*sc*i*
alias:          pci:v00001002d000067BEsv*sd*bc*sc*i*
alias:          pci:v00001002d000067BAsv*sd*bc*sc*i*
alias:          pci:v00001002d000067B9sv*sd*bc*sc*i*
alias:          pci:v00001002d000067B8sv*sd*bc*sc*i*
alias:          pci:v00001002d000067B1sv*sd*bc*sc*i*
alias:          pci:v00001002d000067B0sv*sd*bc*sc*i*
alias:          pci:v00001002d000067AAsv*sd*bc*sc*i*
alias:          pci:v00001002d000067A9sv*sd*bc*sc*i*
alias:          pci:v00001002d000067A8sv*sd*bc*sc*i*
alias:          pci:v00001002d000067A2sv*sd*bc*sc*i*
alias:          pci:v00001002d000067A1sv*sd*bc*sc*i*
alias:          pci:v00001002d000067A0sv*sd*bc*sc*i*
alias:          pci:v00001002d0000665Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000665Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000665Csv*sd*bc*sc*i*
alias:          pci:v00001002d00006658sv*sd*bc*sc*i*
alias:          pci:v00001002d00006651sv*sd*bc*sc*i*
alias:          pci:v00001002d00006650sv*sd*bc*sc*i*
alias:          pci:v00001002d00006649sv*sd*bc*sc*i*
alias:          pci:v00001002d00006647sv*sd*bc*sc*i*
alias:          pci:v00001002d00006646sv*sd*bc*sc*i*
alias:          pci:v00001002d00006641sv*sd*bc*sc*i*
alias:          pci:v00001002d00006640sv*sd*bc*sc*i*
alias:          pci:v00001002d0000131Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000131Csv*sd*bc*sc*i*
alias:          pci:v00001002d0000131Bsv*sd*bc*sc*i*
alias:          pci:v00001002d00001318sv*sd*bc*sc*i*
alias:          pci:v00001002d00001317sv*sd*bc*sc*i*
alias:          pci:v00001002d00001316sv*sd*bc*sc*i*
alias:          pci:v00001002d00001315sv*sd*bc*sc*i*
alias:          pci:v00001002d00001313sv*sd*bc*sc*i*
alias:          pci:v00001002d00001312sv*sd*bc*sc*i*
alias:          pci:v00001002d00001311sv*sd*bc*sc*i*
alias:          pci:v00001002d00001310sv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Esv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Csv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Bsv*sd*bc*sc*i*
alias:          pci:v00001002d0000130Asv*sd*bc*sc*i*
alias:          pci:v00001002d00001309sv*sd*bc*sc*i*
alias:          pci:v00001002d00001307sv*sd*bc*sc*i*
alias:          pci:v00001002d00001306sv*sd*bc*sc*i*
alias:          pci:v00001002d00001305sv*sd*bc*sc*i*
alias:          pci:v00001002d00001304sv*sd*bc*sc*i*
alias:          pci:v00001002d0000666Fsv*sd*bc*sc*i*
alias:          pci:v00001002d00006667sv*sd*bc*sc*i*
alias:          pci:v00001002d00006665sv*sd*bc*sc*i*
alias:          pci:v00001002d00006664sv*sd*bc*sc*i*
alias:          pci:v00001002d00006663sv*sd*bc*sc*i*
alias:          pci:v00001002d00006660sv*sd*bc*sc*i*
alias:          pci:v00001002d0000683Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000683Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000683Bsv*sd*bc*sc*i*
alias:          pci:v00001002d00006839sv*sd*bc*sc*i*
alias:          pci:v00001002d00006838sv*sd*bc*sc*i*
alias:          pci:v00001002d00006837sv*sd*bc*sc*i*
alias:          pci:v00001002d00006835sv*sd*bc*sc*i*
alias:          pci:v00001002d00006831sv*sd*bc*sc*i*
alias:          pci:v00001002d00006830sv*sd*bc*sc*i*
alias:          pci:v00001002d0000682Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000682Dsv*sd*bc*sc*i*
alias:          pci:v00001002d0000682Csv*sd*bc*sc*i*
alias:          pci:v00001002d0000682Bsv*sd*bc*sc*i*
alias:          pci:v00001002d0000682Asv*sd*bc*sc*i*
alias:          pci:v00001002d00006829sv*sd*bc*sc*i*
alias:          pci:v00001002d00006828sv*sd*bc*sc*i*
alias:          pci:v00001002d00006827sv*sd*bc*sc*i*
alias:          pci:v00001002d00006826sv*sd*bc*sc*i*
alias:          pci:v00001002d00006825sv*sd*bc*sc*i*
alias:          pci:v00001002d00006824sv*sd*bc*sc*i*
alias:          pci:v00001002d00006823sv*sd*bc*sc*i*
alias:          pci:v00001002d00006822sv*sd*bc*sc*i*
alias:          pci:v00001002d00006821sv*sd*bc*sc*i*
alias:          pci:v00001002d00006820sv*sd*bc*sc*i*
alias:          pci:v00001002d00006631sv*sd*bc*sc*i*
alias:          pci:v00001002d00006623sv*sd*bc*sc*i*
alias:          pci:v00001002d00006621sv*sd*bc*sc*i*
alias:          pci:v00001002d00006620sv*sd*bc*sc*i*
alias:          pci:v00001002d00006617sv*sd*bc*sc*i*
alias:          pci:v00001002d00006613sv*sd*bc*sc*i*
alias:          pci:v00001002d00006611sv*sd*bc*sc*i*
alias:          pci:v00001002d00006610sv*sd*bc*sc*i*
alias:          pci:v00001002d00006608sv*sd*bc*sc*i*
alias:          pci:v00001002d00006607sv*sd*bc*sc*i*
alias:          pci:v00001002d00006606sv*sd*bc*sc*i*
alias:          pci:v00001002d00006605sv*sd*bc*sc*i*
alias:          pci:v00001002d00006604sv*sd*bc*sc*i*
alias:          pci:v00001002d00006603sv*sd*bc*sc*i*
alias:          pci:v00001002d00006602sv*sd*bc*sc*i*
alias:          pci:v00001002d00006601sv*sd*bc*sc*i*
alias:          pci:v00001002d00006600sv*sd*bc*sc*i*
alias:          pci:v00001002d00006819sv*sd*bc*sc*i*
alias:          pci:v00001002d00006818sv*sd*bc*sc*i*
alias:          pci:v00001002d00006817sv*sd*bc*sc*i*
alias:          pci:v00001002d00006816sv*sd*bc*sc*i*
alias:          pci:v00001002d00006811sv*sd*bc*sc*i*
alias:          pci:v00001002d00006810sv*sd*bc*sc*i*
alias:          pci:v00001002d00006809sv*sd*bc*sc*i*
alias:          pci:v00001002d00006808sv*sd*bc*sc*i*
alias:          pci:v00001002d00006806sv*sd*bc*sc*i*
alias:          pci:v00001002d00006802sv*sd*bc*sc*i*
alias:          pci:v00001002d00006801sv*sd*bc*sc*i*
alias:          pci:v00001002d00006800sv*sd*bc*sc*i*
alias:          pci:v00001002d0000679Fsv*sd*bc*sc*i*
alias:          pci:v00001002d0000679Esv*sd*bc*sc*i*
alias:          pci:v00001002d0000679Bsv*sd*bc*sc*i*
alias:          pci:v00001002d0000679Asv*sd*bc*sc*i*
alias:          pci:v00001002d00006799sv*sd*bc*sc*i*
alias:          pci:v00001002d00006798sv*sd*bc*sc*i*
alias:          pci:v00001002d00006792sv*sd*bc*sc*i*
alias:          pci:v00001002d00006791sv*sd*bc*sc*i*
alias:          pci:v00001002d00006790sv*sd*bc*sc*i*
alias:          pci:v00001002d0000678Asv*sd*bc*sc*i*
alias:          pci:v00001002d00006788sv*sd*bc*sc*i*
alias:          pci:v00001002d00006784sv*sd*bc*sc*i*
alias:          pci:v00001002d00006780sv*sd*bc*sc*i*
depends:        drm,drm_kms_helper,ttm,chash,i2c-algo-bit
retpoline:      Y
intree:         Y
name:           amdgpu
vermagic:       4.15.0-23-generic SMP mod_unload
signat:         PKCS#7
sig_hashalgo:   md4
parm:           vramlimit:Restrict VRAM for testing, in megabytes (int)
parm:           vis_vramlimit:Restrict visible VRAM for testing, in megabytes (int)
parm:           gartsize:Size of GART to setup in megabytes (32, 64, etc., -1=auto) (uint)
parm:           gttsize:Size of the GTT domain in megabytes (-1 = auto) (int)
parm:           moverate:Maximum buffer migration rate in MB/s. (32, 64, etc., -1=auto, 0=1=disabled) (int)
parm:           benchmark:Run benchmark (int)
parm:           test:Run tests (int)
parm:           audio:Audio enable (-1 = auto, 0 = disable, 1 = enable) (int)
parm:           disp_priority:Display Priority (0 = auto, 1 = normal, 2 = high) (int)
parm:           hw_i2c:hw i2c engine enable (0 = disable) (int)
parm:           pcie_gen2:PCIE Gen2 mode (-1 = auto, 0 = disable, 1 = enable) (int)
parm:           msi:MSI support (1 = enable, 0 = disable, -1 = auto) (int)
parm:           lockup_timeout:GPU lockup timeout in ms (default 0 = disable) (int)
parm:           dpm:DPM support (1 = enable, 0 = disable, -1 = auto) (int)
parm:           fw_load_type:firmware loading type (0 = direct, 1 = SMU, 2 = PSP, -1 = auto) (int)
parm:           aspm:ASPM support (1 = enable, 0 = disable, -1 = auto) (int)
parm:           runpm:PX runtime pm (1 = force enable, 0 = disable, -1 = PX only default) (int)
parm:           ip_block_mask:IP Block Mask (all blocks enabled (default)) (uint)
parm:           bapm:BAPM support (1 = enable, 0 = disable, -1 = auto) (int)
parm:           deep_color:Deep Color support (1 = enable, 0 = disable (default)) (int)
parm:           vm_size:VM address space size in gigabytes (default 64GB) (int)
parm:           vm_fragment_size:VM fragment size in bits (4, 5, etc. 4 = 64K (default), Max 9 = 2M) (int)
parm:           vm_block_size:VM page table size in bits (default depending on vm_size) (int)
parm:           vm_fault_stop:Stop on VM fault (0 = never (default), 1 = print first, 2 = always) (int)
parm:           vm_debug:Debug VM handling (0 = disabled (default), 1 = enabled) (int)
parm:           vm_update_mode:VM update using CPU (0 = never (default except for large BAR(LB)), 1 = Graphics only, 2 = Compute only (default for LB), 3 = Both (int)
parm:           vram_page_split:Number of pages after we split VRAM allocations (default 512, -1 = disable) (int)
parm:           exp_hw_support:experimental hw support (1 = enable, 0 = disable (default)) (int)
parm:           dc:Display Core driver (1 = enable, 0 = disable, -1 = auto (default)) (int)
parm:           dc_log:int
parm:           sched_jobs:the max number of jobs supported in the sw queue (default 32) (int)
parm:           sched_hw_submission:the max number of HW submissions (default 2) (int)
parm:           ppfeaturemask:all power features enabled (default)) (uint)
parm:           no_evict:Support pinning request from user space (1 = enable, 0 = disable (default)) (int)
parm:           direct_gma_size:Direct GMA size in megabytes (max 96MB) (int)
parm:           pcie_gen_cap:PCIE Gen Caps (0: autodetect (default)) (uint)
parm:           pcie_lane_cap:PCIE Lane Caps (0: autodetect (default)) (uint)
parm:           cg_mask:Clockgating flags mask (0 = disable clock gating) (uint)
parm:           pg_mask:Powergating flags mask (0 = disable power gating) (uint)
parm:           sdma_phase_quantum:SDMA context switch phase quantum (x 1K GPU clock cycles, 0 = no change (default 32)) (uint)
parm:           disable_cu:Disable CUs (se.sh.cu,...) (charp)
parm:           virtual_display:Enable virtual display feature (the virtual_display will be set like xxxx:xx:xx.x,x;xxxx:xx:xx.x,x) (charp)
parm:           ngg:Next Generation Graphics (1 = enable, 0 = disable(default depending on gfx)) (int)
parm:           prim_buf_per_se:the size of Primitive Buffer per Shader Engine (default depending on gfx) (int)
parm:           pos_buf_per_se:the size of Position Buffer per Shader Engine (default depending on gfx) (int)
parm:           cntl_sb_buf_per_se:the size of Control Sideband per Shader Engine (default depending on gfx) (int)
parm:           param_buf_per_se:the size of Off-Chip Pramater Cache per Shader Engine (default depending on gfx) (int)
parm:           job_hang_limit:how much time allow a job hang and not drop it (default 0) (int)
parm:           lbpw:Load Balancing Per Watt (LBPW) support (1 = enable, 0 = disable, -1 = auto) (int)
parm:           compute_multipipe:Force compute queues to be spread across pipes (1 = enable, 0 = disable, -1 = auto) (int)
parm:           si_support:SI support (1 = enabled, 0 = disabled (default)) (int)
parm:           cik_support:CIK support (1 = enabled, 0 = disabled (default)) (int)

$ dmesg | grep amdgpu
[    1.107654] [drm] amdgpu kernel modesetting enabled.
[    1.111923] fb: switching to amdgpudrmfb from EFI VGA
[    1.112393] amdgpu 0000:25:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff
[    1.112457] amdgpu 0000:25:00.0: VRAM: 4096M 0x000000F400000000 - 0x000000F4FFFFFFFF (4096M used)
[    1.112458] amdgpu 0000:25:00.0: GTT: 256M 0x0000000000000000 - 0x000000000FFFFFFF
[    1.112521] [drm] amdgpu: 4096M of VRAM memory ready
[    1.112522] [drm] amdgpu: 4096M of GTT memory ready.
[    1.112661] amdgpu 0000:25:00.0: amdgpu: using MSI.
[    1.112677] [drm] amdgpu: irq initialized.
[    1.112696] amdgpu: [powerplay] amdgpu: powerplay sw initialized
[    1.112886] amdgpu 0000:25:00.0: fence driver on ring 0 use gpu addr 0x0000000000400040, cpu addr 0x00000000041f9b8c
[    1.112924] amdgpu 0000:25:00.0: fence driver on ring 1 use gpu addr 0x00000000004000c0, cpu addr 0x000000004ee631af
[    1.112955] amdgpu 0000:25:00.0: fence driver on ring 2 use gpu addr 0x0000000000400140, cpu addr 0x000000001df7c0af
[    1.112984] amdgpu 0000:25:00.0: fence driver on ring 3 use gpu addr 0x00000000004001c0, cpu addr 0x00000000bead9566
[    1.113014] amdgpu 0000:25:00.0: fence driver on ring 4 use gpu addr 0x0000000000400240, cpu addr 0x0000000035366419
[    1.113043] amdgpu 0000:25:00.0: fence driver on ring 5 use gpu addr 0x00000000004002c0, cpu addr 0x00000000569c8719
[    1.113072] amdgpu 0000:25:00.0: fence driver on ring 6 use gpu addr 0x0000000000400340, cpu addr 0x00000000da96bbe2
[    1.113101] amdgpu 0000:25:00.0: fence driver on ring 7 use gpu addr 0x00000000004003c0, cpu addr 0x000000003c5b1034
[    1.113128] amdgpu 0000:25:00.0: fence driver on ring 8 use gpu addr 0x0000000000400440, cpu addr 0x00000000784ccffe
[    1.113143] amdgpu 0000:25:00.0: fence driver on ring 9 use gpu addr 0x00000000004004e0, cpu addr 0x00000000c76fa7dc
[    1.113538] amdgpu 0000:25:00.0: fence driver on ring 10 use gpu addr 0x0000000000400560, cpu addr 0x000000004a898060
[    1.113568] amdgpu 0000:25:00.0: fence driver on ring 11 use gpu addr 0x00000000004005e0, cpu addr 0x000000008a84ea45
[    1.114136] amdgpu 0000:25:00.0: fence driver on ring 12 use gpu addr 0x000000f4001e7a80, cpu addr 0x000000009b96c13f
[    1.114166] amdgpu 0000:25:00.0: fence driver on ring 13 use gpu addr 0x00000000004006e0, cpu addr 0x0000000029fb6953
[    1.114188] amdgpu 0000:25:00.0: fence driver on ring 14 use gpu addr 0x0000000000400760, cpu addr 0x00000000b5b896b2
[    1.114287] amdgpu 0000:25:00.0: fence driver on ring 15 use gpu addr 0x00000000004007e0, cpu addr 0x000000002be4c116
[    1.114310] amdgpu 0000:25:00.0: fence driver on ring 16 use gpu addr 0x0000000000400860, cpu addr 0x000000002668299d
[    1.893401] fbcon: amdgpudrmfb (fb0) is primary device
[    1.893478] amdgpu 0000:25:00.0: fb0: amdgpudrmfb frame buffer device
[    1.910230] amdgpu 0000:25:00.0: kfd not supported on this ASIC
[    1.910242] [drm] Initialized amdgpu 3.23.0 20150101 for 0000:25:00.0 on minor 0

$ ls lathrF /dev/kfd
crw-rw-rw- 1 root root 242, 0 Jun 17 07:24 /dev/kfd

$ ./hashcat -b -m2500
hashcat (v4.1.0-30-g124d1098) starting in benchmark mode...

Benchmarking uses hand-optimized kernel code by default.
You can use it in your cracking session by setting the -O option.
Note: Using optimized kernel code limits the maximum supported password length.
To disable the optimized kernel code in benchmark mode, use the -w option.

OpenCL Platform #1: The pocl project
* Device #1: pthread-AMD Ryzen 7 1700 Eight-Core Processor, 4096/13986 MB allocatable, 16MCU

Benchmark relevant options:
* --optimized-kernel-enable

Hashmode: 2500 - WPA/WPA2 (Iterations: 4096)

Speed.Dev.#1.....:     4230 H/s (60.41ms) @ Accel:512 Loops:128 Thr:1 Vec:8
I got that error as well when I've upgrade to latest rocm version:

$ /opt/rocm/bin/rocminfo
hsa api call failure at line 900, file: /home/jenkins/jenkins-root/workspace/compute-rocm-rel-1.8/rocminfo/rocminfo.cc. Call returned 4104

After that, I've purged all the rocm, hip and hsa stuff and switched to the kernel they tell us to use (linux-headers-4.13.0-32-generic). Here's a full documentation: https://rocm.github.io/ROCmInstall.html

After that, it worked.
(06-18-2018, 09:26 AM)atom Wrote: I got that error as well when I've upgrade to latest rocm version:

$ /opt/rocm/bin/rocminfo
hsa api call failure at line 900, file: /home/jenkins/jenkins-root/workspace/compute-rocm-rel-1.8/rocminfo/rocminfo.cc. Call returned 4104

After that, I've purged all the rocm, hip and hsa stuff and switched to the kernel they tell us to use (linux-headers-4.13.0-32-generic). Here's a full documentation: https://rocm.github.io/ROCmInstall.html

After that, it worked.

Hi atom, sorry for digging up this thread but this is the only helpful piece of info i could find.

May i ask what Ubuntu version you were using? I have tried your solution with installing the 4.13.0-32-generic kernel on Ubuntu 18.20 and Debian 9 and both times rocm (v1.8.199) didn't work after installing it according to their documentation

I still get the 4104 error when running $ /opt/rocm/bin/rocminfo and hashcat still does not recognize my AMD GPU when running with -I set