Ryzen + RX 580 only one device working
#1
Hi,

I'm testing a new system with Ryzen 1700x and a RX 580 GPU on a The-Distribution-Which-Does-Not-Handle-OpenCL-Well (Kali) Linux with kernel 4.18 (anyone has info on rocm realease date for compatibility with 4.19?), after installing rocm i tested hashcat. It finds two device: #1 the Ryzen and #2 the GPU, if I run hashcat with as root only #2 is used (220kh/s for -m 16800, around 10% lower than what I saw onlne) for hash cracking, if I run as user only the #1.

What's going on?

Thanks for help.
Reply
#2
I’m not quite sure what you’re asking, but 220kH/s is right on the money for an RX 580. You can use all the devices simultaneously with -d 1,2 in your command. Note that the RX 580 is literally a rebadged RX 480, sometimes with slightly higher clock speeds.
Reply
#3
-d 1,2 is not the correct thing you need.

You need to whitelist/select the device types with:
--opencl-device-types (or short -D), capital letter "D"

-D 1,2 means that both GPUs and CPUs are whitelisted
Reply
#4
(01-30-2019, 07:07 PM)philsmd Wrote: -D 1,2 means that both GPUs and CPUs are whitelisted

Thanks.

Anyway now I have confirmation that something is not working as it should.

The device #2 is the GPU and it works at 220kH/s.
The device #1 is the CPU (Ryzen 7 1700x 8 core OC @3.8Ghz) but it works at only 5kH/s (on a laptop a AMD A12-9720P work under windows at 20kH/s).

Where should I investigate?

Thanks in advance.
Reply
#5
Install Intel OpenCL runtime for CPU, this gives you a much better performance for AMD CPU. Not a joke.
Reply
#6
(01-31-2019, 09:56 AM)atom Wrote: Install Intel OpenCL runtime for CPU, this gives you a much better performance for AMD CPU. Not a joke.

Thank you very much for this 'strange/funny/weird' info.

How will the system 'choose' to use rocm only for the gpu and the Intel OpenCL for the CPU?
Reply
#7
Use -D 1,2 to enable both device types, then use in addition -d to pick the devices you want to use.
Reply
#8
Hi,

with the intent of improving the quality of my hashcat testing I switched to a Ubuntu 18.04 LTS workstation.
Situation hasn't changed.
Fresh OS install/update/upgrade, Installed hashcat (git clone for last version) rocm-dkms and Intel OpenCL runtime.
Hashcat pmkid benchmark is the same: around 220kH/s for the GPU and around 5kH/s for the CPU.
Maybe there's something I should do after installing the Intel runtime (i followed this: https://gist.github.com/Brainiarc7/1d13c...c83cd973d5 )?

hashcat (v5.1.0-42-g471a8ccc) starting in benchmark mode...

OpenCL Platform #1: Advanced Micro Devices, Inc.
================================================
* Device #1: gfx803, 6963/8192 MB allocatable, 36MCU

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

Benchmark relevant options:
===========================
* --opencl-device-types=1,2
* --workload-profile=3

Hashmode: 16800 - WPA-PMKID-PBKDF2 (Iterations: 4096)

Speed.#1.........:   224.3 kH/s (81.25ms) @ Accel:128 Loops:64 Thr:256 Vec:1
Speed.#2.........:     5062 H/s (50.39ms) @ Accel:512 Loops:128 Thr:1 Vec:8
Speed.#*.........:   229.4 kH/s

Thank you.
Reply
#9
Sure not, as I said. You need to install Intel OpenCL runtime for CPU, this gives you a much better performance for AMD CPU (and also faster than pocl).
Reply
#10
(02-05-2019, 09:53 AM)atom Wrote: Sure not, as I said. You need to install Intel OpenCL runtime for CPU, this gives you a much better performance for AMD CPU (and also faster than pocl).

So, the forementioned link doesn't refer to the installation of the Intel OpenCL runtime for CPU?

Should I start from here: https://github.com/intel/compute-runtime/releases and try to compile for my kernel? Are there ubuntu 4.15 source/packages anywhere?

Thanks.
Reply