NvAPI GPU_NOT_POWERED Errors
#1
Hello, 

I recently purchased a Dell Precision 3581 laptop which has a NVIDIA RTX 2000 Ada Generation Laptop GPU, which does not seem to work at all with hashcat. When attempting to crack passwords, a number of NvAPI functions return the following error:

Code:
NVAPI_GPU_NOT_POWERED

And the progress remains at zero.

If I attempt to benchmark the card, it seems to output as expected. 

Hashcat say that all new cards are supported by default, but I recently found out that the RTX 2000 Ada is not in the list of CUDA GPUs found here https://developer.nvidia.com/cuda-gpus

Could this be the reason that my card does not function correctly at all?
Reply
#2
I have reinstalled hashcat, the drivers, and had the graphics card/motherboard replaced, and the issues persists.

For clarity, this is my terminal output when I attempt to crack the example hashes:

Code:
> .\hashcat.exe -m0 .\example0.hash
hashcat (v6.2.6) starting

Successfully initialized the NVIDIA main driver CUDA runtime library.

Failed to initialize NVIDIA RTC library.

* Device #1: CUDA SDK Toolkit not installed or incorrectly installed.
            CUDA SDK Toolkit required for proper device support and utilization.
            Falling back to OpenCL runtime.

* Device #1: WARNING! Kernel exec timeout is not disabled.
            This may cause "CL_OUT_OF_RESOURCES" or related errors.
            To disable the timeout, see: https://hashcat.net/q/timeoutpatch
nvmlDeviceGetFanSpeed(): Not Supported

OpenCL API (OpenCL 3.0 CUDA 12.0.151) - Platform #1 [NVIDIA Corporation]
========================================================================
* Device #1: NVIDIA RTX 2000 Ada Generation Laptop GPU, 7424/8187 MB (2046 MB allocatable), 24MCU

OpenCL API (OpenCL 3.0 ) - Platform #2 [Intel(R) Corporation]
=============================================================
* Device #2: Intel(R) Iris(R) Xe Graphics, 6432/12981 MB (2047 MB allocatable), 96MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 256

Hashes: 6494 digests; 6494 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1

Optimizers applied:
* Zero-Byte
* Early-Skip
* Not-Salted
* Not-Iterated
* Single-Salt
* Raw-Hash

ATTENTION! Pure (unoptimized) backend kernels selected.
Pure kernels can crack longer passwords, but drastically reduce performance.
If you want to switch to optimized kernels, append -O to your commandline.
See the above message to find out about the exact limits.

Watchdog: Temperature abort trigger set to 90c

Host memory required for this attack: 1756 MB

Starting attack in stdin mode

Driver temperature threshold met on GPU #1. Expect reduced performance.
Driver temperature threshold met on GPU #1. Expect reduced performance.
Driver temperature threshold met on GPU #1. Expect reduced performance.

Session..........: hashcat
Status...........: Running
Hash.Mode........: 0 (MD5)
Hash.Target......: .\example0.hash
Time.Started.....: Fri Jan 05 09:35:11 2024 (10 secs)
Time.Estimated...: Fri Jan 05 09:35:21 2024 (0 secs)
Kernel.Feature...: Pure Kernel
Guess.Base.......: Pipe
Speed.#1.........:        0 H/s (0.00ms) @ Accel:1024 Loops:1 Thr:64 Vec:1
Speed.#2.........:        0 H/s (0.00ms) @ Accel:128 Loops:1 Thr:64 Vec:1
Speed.#*.........:        0 H/s
Recovered........: 0/6494 (0.00%) Digests (total), 0/6494 (0.00%) Digests (new)
Remaining........: 6494 (100.00%) Digests
Recovered/Time...: CUR:N/A,N/A,N/A AVG:N/A,N/A,N/A (Min,Hour,Day)
Progress.........: 0
Rejected.........: 0
Restore.Point....: 0
Restore.Sub.#1...: Salt:0 Amplifier:0-0 Iteration:0-1
Restore.Sub.#2...: Salt:0 Amplifier:0-0 Iteration:0-1
Candidate.Engine.: Device Generator
Candidates.#1....: [Copying]
Candidates.#2....: [Copying]
Hardware.Mon.#1..: Temp: 55c Util:  0% Core: 210MHz Mem: 405MHz Bus:8
Hardware.Mon.#2..: N/A

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

nvmlDeviceGetUtilizationRates(): Unknown Error

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesInfo(): NVAPI_GPU_NOT_POWERED

NvAPI_GPU_GetPerfPoliciesStatus(): NVAPI_GPU_NOT_POWERED

Session..........: hashcat
Status...........: Running
Hash.Mode........: 0 (MD5)
Hash.Target......: .\example0.hash
Time.Started.....: Fri Jan 05 09:35:11 2024 (20 secs)
Time.Estimated...: Fri Jan 05 09:35:31 2024 (0 secs)
Kernel.Feature...: Pure Kernel
Guess.Base.......: Pipe
Speed.#1.........:        0 H/s (0.00ms) @ Accel:1024 Loops:1 Thr:64 Vec:1
Speed.#2.........:        0 H/s (0.00ms) @ Accel:128 Loops:1 Thr:64 Vec:1
Speed.#*.........:        0 H/s
Recovered........: 0/6494 (0.00%) Digests (total), 0/6494 (0.00%) Digests (new)
Remaining........: 6494 (100.00%) Digests
Recovered/Time...: CUR:N/A,N/A,N/A AVG:N/A,N/A,N/A (Min,Hour,Day)
Progress.........: 0
Rejected.........: 0
Restore.Point....: 0
Restore.Sub.#1...: Salt:0 Amplifier:0-0 Iteration:0-1
Restore.Sub.#2...: Salt:0 Amplifier:0-0 Iteration:0-1
Candidate.Engine.: Device Generator
Candidates.#1....: [Copying]
Candidates.#2....: [Copying]
Hardware.Mon.#1..: Temp: 55c Core: 210MHz Mem: 405MHz Bus:8
Hardware.Mon.#2..: N/A

Driver temperature threshold met on GPU #1. Expect reduced performance.
ATTENTION! Read timeout in stdin mode. Password candidates input is too slow:
* Are you sure you are using the correct attack mode (--attack-mode or -a)?
* Are you sure you want to use input from standard input (stdin)?
* If using stdin, are you sure it is working correctly, and is fast enough?
Reply
#3
Hascat is telling you anything you need, but you need to read.

FIRST:
Failed to initialize NVIDIA RTC library.

* Device #1: CUDA SDK Toolkit not installed or incorrectly installed.
            CUDA SDK Toolkit required for proper device support and utilization.
            Falling back to OpenCL runtime.

You missed to install the CUDA SDK, so hashcat will not use CUDA but turning to opencl

See also the warning regarding missing timeoutpatch

SECOND:
Laptops are not made for cracking, see the lines with:

Driver temperature threshold met on GPU #1

This means your graphicscard instantly hit the maximum temperature and to prevent damage, the driver and hashcat throttle your gpu down and/or stops the attack

this is due to the fact, that laptops and their "cooling performance" isnt build for maximum workloads over a longer time

Third:
please use complete commandlines for running hashcat

Guess.Base.......: Pipe but not providing input over pipe
try
.\hashcat.exe -a3 -m0 .\example0.hash ?a?a?a?a
or
.\hashcat.exe -a0 -m0 .\example0.hash your-dictionary.txt
Reply
#4
(01-05-2024, 02:55 PM)Snoopy Wrote: Hascat is telling you anything you need, but you need to read.

FIRST:
Failed to initialize NVIDIA RTC library.

* Device #1: CUDA SDK Toolkit not installed or incorrectly installed.
            CUDA SDK Toolkit required for proper device support and utilization.
            Falling back to OpenCL runtime.

You missed to install the CUDA SDK, so hashcat will not use CUDA but turning to opencl

See also the warning regarding missing timeoutpatch

SECOND:
Laptops are not made for cracking, see the lines with:

Driver temperature threshold met on GPU #1

This means your graphicscard instantly hit the maximum temperature and to prevent damage, the driver and hashcat throttle your gpu down and/or stops the attack

this is due to the fact, that laptops and their "cooling performance" isnt build for maximum workloads over a longer time

Third:
please use complete commandlines for running hashcat

Guess.Base.......: Pipe but not providing input over pipe
try
.\hashcat.exe -a3 -m0 .\example0.hash ?a?a?a?a
or
.\hashcat.exe -a0 -m0 .\example0.hash your-dictionary.txt

First:
I have also tried installing the SDK and I think the warning may have went away, but I still did not have any kind of performance whatsoever. As in I would have expected it to work even a little bit using OpenCL.

Second:
Similar to my reply above; I have used laptops to crack passwords before and whilst it's not ideal, there is still some performance. I was stuck at 0 hashes and it seemed to make no attempt to crack passwords.

Regarding the temperature, I have run hardware monitoring tools whilst running hashcat and my temperature is no where near 90c. The temperature warning seems to be coming up immediately and innaccurately. While running the benchmarking tool, I get a "Not Supported" error from a function that retrieves the temperature of the GPU, so this would also contradict the temperature warning. 

This warning may be the reason that hashcat is refusing to work, to protect my card by not doing anything (incorrectly thinking my card is overheating). 

Also worth nothing that even when I use the --hwmon-disable flag to ignore temperature warnings, hashcat still doesn't attempt to crack anything and hangs at zero progression.

Third:
It seemed like this has actually resolved my issue. I don't understand why, but if I use full and complete commands then the temperature warning (bug?) goes away and it seems to crack fine. 

I seem to have another strange issue where if I try to use -a3 (brute), it loads the guess masks as single guesses instead of actual masks. I'll look into this now and raise a separate ticket if I need help here.

Thanks for your help
Reply