Hashcat not recognizing my GPU
#1
Sad 
I am running debian with the the latest driver for my graphics card available. Hashcat doesn't seem to detect my card or use CUDA when it runs. Any advice?

Code:
$ nvidia-smi Thu May 21 22:07:32 2020      +-----------------------------------------------------------------------------+ | NVIDIA-SMI 440.82      Driver Version: 440.82      CUDA Version: 10.2    | |-------------------------------+----------------------+----------------------+ | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC | | Fan  Temp  Perf  Pwr:Usage/Cap|        Memory-Usage | GPU-Util  Compute M. | |===============================+======================+======================| |  0  GeForce GTX 1080    On  | 00000000:07:00.0  On |                  N/A | | 38%  57C    P0    42W / 180W |    395MiB /  8116MiB |      0%      Default | +-------------------------------+----------------------+----------------------+


Code:
$ hashcat -b hashcat (v5.1.0) 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 5 2600 Six-Core Processor, 4096/13984 MB allocatable, 12MCU Benchmark relevant options: =========================== * --optimized-kernel-enable
Reply
#2
here is the output of hashcat -I :

Code:
$ hashcat -I hashcat (v5.1.0) starting... OpenCL Info: Platform ID #1   Vendor  : The pocl project   Name    : Portable Computing Language   Version : OpenCL 1.2 pocl 1.5, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG   Device ID #1     Type          : CPU     Vendor ID      : 1     Vendor        : AuthenticAMD     Name          : pthread-AMD Ryzen 5 2600 Six-Core Processor     Version        : OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-znver1     Processor(s)  : 12     Clock          : 3400     Memory        : 4096/13984 MB allocatable     OpenCL Version : OpenCL C 1.2 pocl     Driver Version : 1.5

my nvidia card appears to be installed correctly with CUDA 10.2 - why isn't it being recognized?
Reply
#3
see: https://hashcat.net/faq/wrongdriver

also test with
Code:
clinfo
to test and make sure it's working with other tools and therefore is not a hashcat problem.
Reply
#4
(05-22-2020, 08:02 AM)philsmd Wrote: see: https://hashcat.net/faq/wrongdriver

also test with
Code:
clinfo
to test and make sure it's working with other tools and therefore is not a hashcat problem.


Thanks for responding phil - my driver appears to be correct (367.x or later for nvidia and I have 440.82) but clinfo isn't detecting my card at all!

clinfo has a lot of information about my CPU, here's the relevant info  -
Code:
  Number of platforms                              1   Platform Name                                  Portable Computing Language   Platform Vendor                                The pocl project   Platform Version                                OpenCL 1.2 pocl 1.5, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG   Platform Profile                                FULL_PROFILE   Platform Extensions                            cl_khr_icd   Platform Extensions function suffix            POCL ... ... clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No devices found in platform ...

and the output for hwinfo --gfx:

Code:
$ sudo hwinfo --gfx 22: PCI 700.0: 0300 VGA compatible controller (VGA)              [Created at pci.386]   Unique ID: aK5u.lDNs4rqucjC   Parent ID: w+J7.0TU4LKoL980   SysFS ID: /devices/pci0000:00/0000:00:03.1/0000:07:00.0   SysFS BusID: 0000:07:00.0   Hardware Class: graphics card   Model: "nVidia GP104 [GeForce GTX 1080]"   Vendor: pci 0x10de "nVidia Corporation"   Device: pci 0x1b80 "GP104 [GeForce GTX 1080]"   SubVendor: pci 0x196e "PNY"   SubDevice: pci 0x119e   Revision: 0xa1   Driver: "nvidia"   Driver Modules: "nvidia"   Memory Range: 0xf6000000-0xf6ffffff (rw,non-prefetchable)   Memory Range: 0xe0000000-0xefffffff (ro,non-prefetchable)   Memory Range: 0xf0000000-0xf1ffffff (ro,non-prefetchable)   I/O Ports: 0xe000-0xefff (rw)   Memory Range: 0x000c0000-0x000dffff (rw,non-prefetchable,disabled)   IRQ: 89 (1501922 events)   Module Alias: "pci:v000010DEd00001B80sv0000196Esd0000119Ebc03sc00i00"   Driver Info #0:     Driver Status: nouveau is not active     Driver Activation Cmd: "modprobe nouveau"   Driver Info #1:     Driver Status: nvidia_current_drm is not active     Driver Activation Cmd: "modprobe nvidia_current_drm"   Driver Info #2:     Driver Status: nvidia_current is not active     Driver Activation Cmd: "modprobe nvidia_current"   Config Status: cfg=new, avail=yes, need=no, active=unknown   Attached to: #8 (PCI bridge) Primary display adapter: #22

nvidia-current would be the NVIDIA driver 440.82, right?
Reply
#5
https://computergraphics.stackexchange.c...detect-gpu

running hashcat as root gives me this output:

Code:
$ sudo hashcat -I hashcat (v5.1.0) starting... OpenCL Info: Platform ID #1   Vendor  : NVIDIA Corporation   Name    : NVIDIA CUDA   Version : OpenCL 1.2 CUDA 10.2.159   Device ID #1     Type          : GPU     Vendor ID      : 32     Vendor        : NVIDIA Corporation     Name          : GeForce GTX 1080     Version        : OpenCL 1.2 CUDA     Processor(s)  : 20     Clock          : 1733     Memory        : 2029/8116 MB allocatable     OpenCL Version : OpenCL C 1.2     Driver Version : 440.82 Platform ID #2   Vendor  : The pocl project   Name    : Portable Computing Language   Version : OpenCL 1.2 pocl 1.5, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG   Device ID #2     Type          : CPU     Vendor ID      : 1     Vendor        : AuthenticAMD     Name          : pthread-AMD Ryzen 5 2600 Six-Core Processor     Version        : OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-znver1     Processor(s)  : 12     Clock          : 3400     Memory        : 4096/13984 MB allocatable     OpenCL Version : OpenCL C 1.2 pocl     Driver Version : 1.5


This is pretty close to fixing my problem, but I tried to follow the post in the stack exchange link above and couldn't find libOpenCL.so or libcl.so, even with root access...
Reply
#6
it's not clear what the problem now is.

Does clinfo only work (i.e. list your devices) with root ? that would be very bad and just proofs that your driver installation/configuration is broken. It would also proof that hashcat has nothing to do with the problem, if also other tools can't see your devices with non-root users.
Reply
#7
I don't know if that will help, but when i had this problem, i just deleted completly nvidia drivers, and used "sudo apt-get install -y nvidia-driver nvidia-cuda-toolkit" and it worked for me.
Reply
#8
"The pocl project"

That's not likely to work well. I've had terrible trouble with POCL getting in the way of my other OpenCL configs, and I've basically blacklisted it from my systems now, it's more trouble than it's worth. Uninstall anything listed by `dpkg -l |grep pocl`, if necessary install `ocl-icd-libopencl1`, and you'll almost certainly have a much better time.
Reply