Hashcat and OpenCL installation issue xeon E5-4640
#1
Hi,

I am trying to get a DL380 Gen 8 with 4 x E5-4640 0 @ 2.40GHz working with hashcat under Linux 20.04LTS.

I have successfully installed “Intel® CPU Runtime for OpenCL™ Applications 18.1 for Linux* OS (64bit only)” and it sees my Intel CPUs but "clinfo" hangs when I run it. Also, when I try and run hashcat I receive an "clCreateContext(): CL_DEVICE_NOT_AVAILABLE " and also Device #1 "skipped"?

Any ideas what is wrong/missing?

thanks

ubuntu@ubuntu:~/hashcat/hashcat-6.2.4$ hashcat -I                                                                                               
hashcat (v5.1.0) starting...                                                                                                                             
                                                                                                                                                         
OpenCL Info:                                                                                                                                             
                                                                                                                                                         
Platform ID #1                                                                                                                                           
  Vendor  : Intel(R) Corporation                                                                                                                         
  Name    : Intel(R) CPU Runtime for OpenCL(TM) Applications                                                                                             
  Version : OpenCL 2.1 LINUX                                                                                                                             
                                                                                                                                                         
  Device ID #1                                                                                                                                           
    Type          : CPU                                                                                                                                 
    Vendor ID      : 8                                                                                                                                   
    Vendor        : Intel(R) Corporation                                                                                                                 
    Name          : Intel(R) Xeon(R) CPU E5-4640 0 @ 2.40GHz                                                                                             
    Version        : OpenCL 2.1 (Build 0)                                                                                                                 
    Processor(s)  : 64                                                                                                                                   
    Clock          : 2400                                                                                                                                 
    Memory        : 16089/64359 MB allocatable                                                                                                           
    OpenCL Version : OpenCL C 2.0                                                                                                                         
    Driver Version : 18.1.0.0920   



ubuntu@ubuntu:~/hashcat/hashcat-6.2.4$ ./hashcat.bin -m 0 -t 32 -a 7 --opencl-device-type 1 example0.hash ?a?a?a?a | more                                 
hashcat (v6.2.4) starting                                                                                                                                 
                                                                                                                                                         
clCreateContext(): CL_DEVICE_NOT_AVAILABLE                                                                                                               
                                                                                                                                                         
OpenCL API (OpenCL 2.1 LINUX) - Platform #1 [Intel(R) Corporation]                                                                                       
==================================================================                                                                                       
* Device #1: Intel(R) Xeon(R) CPU E5-4640 0 @ 2.40GHz, skipped                                                                                           
                                                                                                                                                         
Minimum password length supported by kernel: 0                                                                                                           
Maximum password length supported by kernel: 256     

clinfo:


Number of platforms                              1                                                                                                       
  Platform Name                                  Intel(R) CPU Runtime for OpenCL(TM) Applications                                                          Platform Vendor                                Intel(R) Corporation                                                                                      Platform Version                                OpenCL 2.1 LINUX                                                                                          Platform Profile                                FULL_PROFILE                                                                                              Platform Extensions                            cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64 cl_khr_image2d_from_buffer cl_intel_vec_len_hint                                                                                                         
  Platform Host timer resolution                  1ns                                                                                                     
  Platform Extensions function suffix            INTEL                                                                                                                                                                                                                                       
  Platform Name                                  Intel(R) CPU Runtime for OpenCL(TM) Applications                                                             
Number of devices                                1                                                                                                          Device Name                                    Intel(R) Xeon(R) CPU E5-4640 0 @ 2.40GHz                                                             
  Device Vendor                                  Intel(R) Corporation                                                                                      Device Vendor ID                                0x8086                                                                                                    Device Version                                  OpenCL 2.1 (Build 0)                                                                                      Driver Version                                  18.1.0.0920                                                                                             
  Device OpenCL C Version                        OpenCL C 2.0                                                                                           
  Device Type                                    CPU                                                                                                     
  Device Profile                                  FULL_PROFILE                                                                                           
  Device Available                                Yes                                                                                                     
  Compiler Available                              Yes                                                                                                     
  Linker Available                                Yes                                                                                                     
  Max compute units                              64                                                                                                     
  Max clock frequency                            2400MHz                                                                                                 
  Device Partition                                (core)                                                                                                 
    Max number of sub-devices                    64                                                                                                     
    Supported partition types                    by counts, equally, by names (Intel)                                                                   
    Supported affinity domains                    (n/a)                                                                                                   
  Max work item dimensions                        3                                                                                                       
  Max work item sizes                            8192x8192x8192                                                                                         
  Max work group size                            8192                                                                                                   
  Preferred work group size multiple              <getWGsizes:1171: create context : error -2>                                                           
  Max sub-groups per work group                  1                                                                                                       
  Preferred / native vector sizes                                                                                                                         
    char                                                1 / 16                                                                                           
    short                                                1 / 8                                                                                           
    int                                                  1 / 4                                                                                           
    long                                                1 / 2                                                                                           
    half                                                0 / 0        (n/a)                                                                               
    float                                                1 / 8                                                                                           
    double                                              1 / 4        (cl_khr_fp64)                                                                       
  Half-precision Floating-point support          (n/a)                                                                                                   
  Single-precision Floating-point support        (core)                                                                                                 
    Denormals                                    Yes                                                                                                     
    Infinity and NANs                            Yes                                                                                                     
    Round to nearest                              Yes                                                                                                     
    Round to zero                                No                                                                                                     
    Round to infinity                            No                                                                                                     
    IEEE754-2008 fused multiply-add              No                                                                                                     
    Support is emulated in software              No                                                                                                     
    Correctly-rounded divide and sqrt operations  No                                                                                                     
  Double-precision Floating-point support        (cl_khr_fp64)                                                                                           
    Denormals                                    Yes                                                                                                     
    Infinity and NANs                            Yes                                                                                                     
    Round to nearest                              Yes                                                                                                     
    Round to zero                                Yes                                                                                                     
    Round to infinity                            Yes                                                                                                     
    IEEE754-2008 fused multiply-add              Yes                                                                                                     
    Support is emulated in software              No                                                                                                     
  Address bits                                    64, Little-Endian                                                                                       
  Global memory size                              67485503488 (62.85GiB)                                                                                 
  Error Correction support                        No                                                                                                     
  Max memory allocation                          16871375872 (15.71GiB)                                                                                 
  Unified memory for Host and Device              Yes                                                                                                     
  Shared Virtual Memory (SVM) capabilities        (core)                                                                                                 
    Coarse-grained buffer sharing                Yes                                                                                                     
    Fine-grained buffer sharing                  Yes                                                                                                     
    Fine-grained system sharing                  Yes                                                                                                     
    Atomics                                      Yes                                                                                                     
  Minimum alignment for any data type            128 bytes                                                                                               
  Alignment of base address                      1024 bits (128 bytes)                                                                                   
  Preferred alignment for atomics                                                                                                                         
    SVM                                          64 bytes                                                                                               
    Global                                        64 bytes                                                                                               
    Local                                        0 bytes                                                                                                 
  Max size for global variable                    65536 (64KiB)                                                                                           
  Preferred total size of global vars            65536 (64KiB)                                                                                           
  Global Memory cache type                        Read/Write                                                                                             
  Global Memory cache size                        262144 (256KiB)                                                                                         
  Global Memory cache line size                  64 bytes                                                                                               
  Image support                                  Yes                                                                                                     
    Max number of samplers per kernel            480                                                                                                     
    Max size for 1D images from buffer            1054460992 pixels                                                                                       
    Max 1D or 2D image array size                2048 images                                                                                             
    Base address alignment for 2D image buffers  64 bytes                                                                                               
    Pitch alignment for 2D image buffers          64 pixels                                                                                               
    Max 2D image size                            16384x16384 pixels                                                                                     
    Max 3D image size                            2048x2048x2048 pixels                                                                                   
    Max number of read image args                480                                                                                                     
    Max number of write image args                480                                                                                                     
    Max number of read/write image args          480                                                                                                     
  Max number of pipe args                        16                                                                                                     
  Max active pipe reservations                    4095                                                                                                   
  Max pipe packet size                            1024         
  Global Memory cache type                        Read/Write                                                                                             
  Global Memory cache size                        262144 (256KiB)                                                                                         
  Global Memory cache line size                  64 bytes                                                                                               
  Image support                                  Yes                                                                                                     
    Max number of samplers per kernel            480                                                                                                     
    Max size for 1D images from buffer            1054460992 pixels                                                                                       
    Max 1D or 2D image array size                2048 images                                                                                             
    Base address alignment for 2D image buffers  64 bytes                                                                                               
    Pitch alignment for 2D image buffers          64 pixels                                                                                               
    Max 2D image size                            16384x16384 pixels                                                                                     
    Max 3D image size                            2048x2048x2048 pixels                                                                                   
    Max number of read image args                480                                                                                                     
    Max number of write image args                480                                                                                                     
    Max number of read/write image args          480                                                                                                     
  Max number of pipe args                        16                                                                                                     
  Max active pipe reservations                    4095                                                                                                   
  Max pipe packet size                            1024                                                                                                   
  Local memory type                              Global                                                                                                 
  Local memory size                              32768 (32KiB)                                                                                           
  Max number of constant args                    480                                                                                                     
  Max constant buffer size                        131072 (128KiB)                                                                                         
  Max size of kernel argument                    3840 (3.75KiB)                                                                                         
  Queue properties (on host)                                                                                                                             
    Out-of-order execution                        Yes                                                                                                     
    Profiling                                    Yes                                                                                                     
    Local thread execution (Intel)                Yes                                                                                                     
  Queue properties (on device)                                                                                                                           
    Out-of-order execution                        Yes                                                                                                     
    Profiling                                    Yes                                                                                                     
    Preferred size                                4294967295 (4GiB)                                                                                       
    Max size                                      4294967295 (4GiB)                                                                                       
  Max queues on device                            4294967295                                                                                             
  Max events on device                            4294967295                                                                                             
  Prefer user sync for interop                    No                                                                                                     
  Profiling timer resolution                      1ns                                                                                                     
  Execution capabilities                                                                                                                                 
    Run OpenCL kernels                            Yes                                                                                                     
    Run native kernels                            Yes                                                                                                     
    Sub-group independent forward progress        No                                                                                                     
    IL version                                    SPIR-V_1.0                                                                                             
    SPIR versions                                1.2                                                                                                     
  printf() buffer size                            1048576 (1024KiB)                                                                                       
  Built-in kernels                                (n/a)                                                                                                   
  Device Extensions                              cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64 cl_khr_image2d_from_buffer cl_intel_vec_len_hint     
<<<**** HANGS HERE *****>>>
Reply
#2
Have you tried using Hashcat with Windows? Hashcat was originally made for Windows and runs with a lot less problems. I was using Linux and I was having issues I read what I have told you and I was up and running in a few minutes.
Open a command prompt drop the Hashcat .exe into it then run it like you would on Linux.
From what your read out says you don't have a GPU so you should probably consider running it on a cloud service. Your going to spend days running only a few hash's it's not really going to be worth it.
With the GPU in the CPU it's bad real bad. so bad it's not worth it. Put it this way Rockyou would take hours with the dedicated GPU with an actual GPU it's about a minute and a half.
You can force it to run device one with -d1 your going to be crawling though.
Put it this way with the right equipment Hashcat runs so good I've been using it since 2019 and I just registered here because I hit a strange problem.
The CL_DEVICE_NOT_AVAILABLE I kept getting when I was trying to use my rig that has an AMD GPU I switched to the Nvidia rig problems all solved.
If you have a Nvidia GPU just install CUDA and your basically done. That CL_DEVICE_NOT_AVAILABLE will have you tearing your hair out.
Reply
#3
thanks for the prompt reply. I eventually got it working by locating the Intel OpenCL version 16.1.1 where I saw some blogs around getting the E5 4600 XEONs with Sandybridge needing this version.. . I have four E5 CPUs and am trying to crack some DES hashes and yes, although showing 64MCU, its slow... 27 years for 8 character password with 2 byte hash :-( Benchmark is:

Speed.#1.........: 17643.3 kH/s (58.78ms) @ Accel:16 Loops:1024 Thr:1 Vec:4

So back to the CL_DEVICE_NOT_AVAILABLE with the intel CPUs was caused by the newer intel OpenCL driver (18.1.1) not supporting the older CPUs.

I have a couple old Quadro 2000s lying around... I'l build up with these and see how I go..
Reply
#4
Your welcome.
Reply