hashcat / GPU / macOS High Sierra
#1
I'm trying to run hashcat using an older Mac Pro I have. It has 12 CPU cores so running it in CPU mode works, but it's working at a speed that is going to wake WAYY too long to succeed. 

This very same Mac Pro has an RX480 8GB in it, a pretty decent card. Definitely way better than all my other machines, that all have intel integrated graphics. 

But alas, when I try to use the GPU, I get errors about:
"Outdated or broken Apple OpenCL driver '1.2' detected!"

Is there a solution for this? Are there AMD OpenCL drivers I can install? Or a way to run Hashcat on Metal? Or something else? 

Or am I just S.O.L.? I know I could try installing windows on this machine but that could that would be such a time consuming hassle, I feel like I'm probably better off just using hashcat slowly on CPU. But using it on the RX480 on macOS would be ideal!
Reply
#2
You have to tell hashcat which device to use (-d). On my MacBook Pro with RX5500 this is device #3. Check with hashcat -I the number of your GPU and then address it:
hashcat -D1,2 -d3
Reply
#3
Yes that's what I'm doing but depending on the context, I'm getting the error above, or I'm getting this error:

Unsupported Apple Metal runtime version '125.30' detected! Falling back to OpenCL...

But then it says No devices found.
Reply
#4
It also says "See hashcat.net for officially supported Apple OpenCL drivers." but I'm not seeing any apple opencl drivers on hashcat.net :/
Reply
#5
I think metal is only suppoerted since macOS13, so you have to use OpenCL.
I think I once  had hashcat with High Sierra on this MAcBook Pro with OpenCL running. Apple does not support OpenCL anymore, so maybe you try an older version of hashcat, I do not remember which one it was but for sure not 6.
Reply
#6
what does hashcat -I tells?

is your card recognized by metal

according to this thread metal can be used but is skipped for opencl, which in your case is broken
https://hashcat.net/forum/thread-11702-post-59586.html

As long as you cannot update the broken opencl driver (newer macos or via homebrew) and your card is not recognized by metal api, yeah seems bad
Reply
#7
(11-29-2023, 01:39 PM)Snoopy Wrote: what does hashcat -I tells?

Quote:hashcat (v6.2.6-846-g4d412c8e0) starting in backend information mode


Unsupported Apple Metal runtime version '125.30' detected! Falling back to OpenCL...

* Device #2: This device's local mem size is too small.

OpenCL Info:
============

OpenCL Platform ID #1
  Vendor..: Apple
  Name....: Apple
  Version.: OpenCL 1.2 (May  7 2020 00:10:14)

  Backend Device ID #1
    Type...........: CPU
    Vendor.ID......: 8
    Vendor.........: Intel
    Name...........: Intel(R) Xeon(R) CPU           X5680  @ 3.33GHz
    Version........: OpenCL 1.2 
    Processor(s)...: 12
    Clock..........: 3330
    Memory.Total...: 32768 MB (limited to 4096 MB allocatable in one block)
    Memory.Free....: 16352 MB
    Local.Memory...: 32 KB
    OpenCL.Version.: OpenCL C 1.2 
    Driver.Version.: 1.1

  Backend Device ID #2
    Type...........: GPU
    Vendor.ID......: 32
    Vendor.........: NVIDIA
    Name...........: GeForce GT 120
    Version........: OpenCL 1.0 
    Processor(s)...: 4
    Clock..........: 1400
    Memory.Total...: 512 MB (limited to 128 MB allocatable in one block)
    Memory.Free....: 384 MB
    Local.Memory...: 16 KB
    OpenCL.Version.: OpenCL C 1.0 
    Driver.Version.: 10.4.14 310.90.30.05b27

  Backend Device ID #3
    Type...........: GPU
    Vendor.ID......: 1
    Vendor.........: AMD
    Name...........: AMD Radeon RX 480 Compute Engine
    Version........: OpenCL 1.2 
    Processor(s)...: 36
    Clock..........: 1291
    Memory.Total...: 8192 MB (limited to 2048 MB allocatable in one block)
    Memory.Free....: 1920 MB
    Local.Memory...: 32 KB
    OpenCL.Version.: OpenCL C 1.2 
    Driver.Version.: 1.2 (Oct 30 2020 14:22:17)

Obviously the RX480 is the one I want to use, not the nvidia.
Reply
#8
(11-29-2023, 01:38 PM)ManuB1G Wrote: I think metal is only suppoerted since macOS13, so you have to use OpenCL.
I think I once  had hashcat with High Sierra on this MAcBook Pro with OpenCL running. Apple does not support OpenCL anymore, so maybe you try an older version of hashcat, I do not remember which one it was but for sure not 6.

Where might one find older versions of hashcat? High Sierra was 2017 to 2018, so a version from 2018 should do the trick if you are remembering correctly. As long as the 2018 version supports -m16700 aka filevault.

EDIT: found old versions, running 5.1 now and it does appear to be running on my GPU. I'll know more in a minute. The benchmark was about 26x faster than the CPU benchmark Smile Makes me wish I put two RX480's in this Mac Pro, which was my original plan Big Grin

EDIT EDIT: From 70 day ETA via CPU, to 3 day ETA via GPU. The fan volume is going to be annoying but it's also going to be very short lived so I can deal with it.
Reply
#9
Sounds good!
How many H/s does the RX480 make on 16700?
Reply
#10
In my experience, all the 16700 benchmarks are reliably about 5x faster than real life cracking. So the actual speed is about 4100h/s. And it benchmarks at about 20000h/s. Not the fastest thing in the world but fast enough to get the job done. Thinking about adding an RX460 to the mix. That should add about another 2000h/s while only costing $30 maybe.
Reply