CL_UNKNOWN_ERROR on mode 26900 (SNMPv3 HMAC-SHA384-256)
#1
Bug 
I'm currently running a few benchmarks on a couple machines for a (very dumb and poorly coded) python comparison script I'm writing.

I was testing runs without CUDA/only OpenCL when I came across this error, but only in one of the machines. The machine has an AMD Ryzen 7 3700X, a NVIDIA GTX 1660 and is running Arch Linux with nvidia-dkms-575.64 drivers.

I initially found the error when running "--benchmark-all", but it can be reproduced with "hashcat -m 26900 -b --backend-ignore-cuda" as well. Using the CUDA backend throws no errors.

Code:
hashcat (v6.2.6) starting in benchmark mode

* 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 
OpenCL API (OpenCL 3.0 CUDA 12.9.90) - Platform #1 [NVIDIA Corporation]
=======================================================================
* Device #1: NVIDIA GeForce GTX 1660, 5056/5745 MB (1436 MB allocatable), 22MCU

Benchmark relevant options:
===========================
* --optimized-kernel-enable
* --workload-profile=4

---------------------------------------------------------------
* Hash-Mode 26900 (SNMPv3 HMAC-SHA384-256) [Iterations: 1048576]
----------------------------------------------------------------

clWaitForEvents(): CL_UNKNOWN_ERROR

clWaitForEvents(): CL_UNKNOWN_ERROR

clWaitForEvents(): CL_UNKNOWN_ERROR

clWaitForEvents(): CL_UNKNOWN_ERROR

clFlush(): CL_UNKNOWN_ERROR

* Device #1: skipped, due to kernel autotune failure (-6).

Aborting session due to kernel autotune failures, for all active devices.

You can use --force to override this, but do not report related errors.

Started: Sat Jul  8 11:31:12 2025
Stopped: Sat Jul  8 11:31:13 2025

Is there any way to debug the error with more information? There are no "verbose" options in the help and debug is only present for rules.
Reply
#2
Nevermind, I updated to the git version and this specific error went away. I had other errors, but none of them fully stopped the run of the full benchmark suite as this one was doing.

Results can be viewed in (JSON format) here:
https://gist.github.com/whoisroot/315d5b...23bf9d0362

Some hash types are missing because of errors while running the benchmarks, but I think most of the relevant types are there.

Interesting results (YMMV):
NetNTLMv2 (NT) -> 40.78% better without CUDA
NTLM -> 17.16% better without CUDA
WPA-PMK-PMKID+EAPOL -> 37.89% better without CUDA
Cisco-IOS $9$ (scrypt) -> 62.51% better without CUDA
md5(utf16le($pass)) -> 18.60% better without CUDA
md5(utf16le($pass).$salt) -> 31.25% better without CUDA

I'll post the full "tools" later, but they are just a couple hacky Python scripts that ingest "--machine-readable" logs.
Reply