Issues Installing OpenCL
#1
I am running hashcat v6.1.1 on MXLinux 19.3 (debian based).

First I ran "hashcat -I" to see what devices are available:


Code:
hashcat (v6.1.1-120-g15bf8b730) starting...

CUDA Info:
==========

CUDA.Version.: 10.1

Backend Device ID #1
  Name...........: Quadro M2000M
  Processor(s)...: 5
  Clock..........: 1137
  Memory.Total...: 4043 MB
  Memory.Free....: 4006 MB

It seems that hashcat can use my GPU, but I want to benchmark both my GPU and CPU to see which will be faster.

Here is the output of "lscpu":

Code:
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
Address sizes:      39 bits physical, 48 bits virtual
CPU(s):              8
On-line CPU(s) list: 0-7
Thread(s) per core:  2
Core(s) per socket:  4
Socket(s):          1
NUMA node(s):        1
Vendor ID:          GenuineIntel
CPU family:          6
Model:              94
Model name:          Intel(R) Xeon(R) CPU E3-1505M v5 @ 2.80GHz
Stepping:            3
CPU MHz:            1358.352
CPU max MHz:        3700.0000
CPU min MHz:        800.0000
BogoMIPS:            5616.00
Virtualization:      VT-x
L1d cache:          32K
L1i cache:          32K
L2 cache:            256K
L3 cache:            8192K
NUMA node0 CPU(s):  0-7
Flags:              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d

So I installed OpenCL driver Intel® CPU Runtime for OpenCL™ Applications 18.1 for Linux* OS (64bit only) at https://software.intel.com/content/www/u...pu-section

Then I ran "hashcat -I" again and saw errors:

Code:
hashcat (v6.1.1-120-g15bf8b730) starting...

* Device #2: Outdated POCL OpenCL driver detected!

clCreateContext(): CL_DEVICE_NOT_AVAILABLE

I thought that maybe the driver was not compatible with MX, so I searched my repositories with "apt-cache search opencl" and found the following:

Code:
asl-doc - documentation for ASL
asl-tools - command-line tools for ASL
libasl-dev - development files for ASL
libasl0 - multiphysics simulation software
beignet - OpenCL library for Intel GPUs - transitional dummy package
beignet-dev - OpenCL for Intel GPUs (development files and documentation)
beignet-opencl-icd - OpenCL library for Intel GPUs
clblas-client - client program for clBLAS
libclblas-dev - development files for clBLAS
libclblas-doc - documentation for clBLAS
libclblas2 - OpenCL BLAS library
clfft-client - client program for clFFT
libclfft-dev - development files for clFFT
libclfft-doc - documentation for clFFT
libclfft2 - OpenCL FFT library
clinfo - Query OpenCL system information
erlang-cl - Erlang OpenCL bindings
forge-doc - documentation for forge
libforge-dev - development files for forge
libforge1 - high-performance OpenGL visualization
gdb - GNU Debugger
gdb-minimal - GNU Debugger (minimal version)
gdb-multiarch - GNU Debugger (with support for multiple architectures)
gdb-source - GNU Debugger (source)
gdbserver - GNU Debugger (remote server)
python-gpyfft - Wrapper for the OpenCL FFT library clFFT (Python 2)
python-gpyfft-dbg - Wrapper for the OpenCL FFT library clFFT (Python 2 debug)
python-gpyfft-doc - Wrapper for the OpenCL FFT library clFFT (common documentation)
python3-gpyfft - Wrapper for the OpenCL FFT library clFFT (Python 3)
python3-gpyfft-dbg - Wrapper for the OpenCL FFT library clFFT (Python 3 debug)
gr-fosphor - gnuradio fosphor block (GPU spectrum display)
libgnuradio-fosphor3.7.12 - gnuradio fosphor block (GPU spectrum display) (library)
libigdgmm-dev - Intel Graphics Memory Management Library -- development files
libigdgmm5 - Intel Graphics Memory Management Library -- shared library
opencl-clhpp-headers - C++ headers for OpenCL development
opencl-clhpp-headers-doc - documentation for C++ OpenCL headers
opencl-c-headers - OpenCL (Open Computing Language) C header files
opencl-headers - OpenCL (Open Computing Language) header files
opencl-1.2-html-doc - OpenCL 1.2 documentation - html pages
opencl-1.2-man-doc - OpenCL 1.2 documentation - man pages (experimental)
libclc-amdgcn - OpenCL C language implementation - amdgcn support
libclc-dev - OpenCL C language implementation - development files
libclc-ptx - OpenCL C language implementation - ptx support
libclc-r600 - OpenCL C language implementation - r600 support
libgpuarray-dev - development files for libgpuarray
libgpuarray-doc - documentation for libgpuarray
libgpuarray3 - library to manipulate tensors on the GPU
python-pygpu - language bindings for libgpuarray (Python 2)
python-pygpu-dbg - debug extensions for pygpu (Python 2)
python3-pygpu - language bindings for libgpuarray (Python 3)
python3-pygpu-dbg - debug extensions for pygpu (Python 3)
librandom123-dev - parallel random numbers library
librandom123-doc - documentation and examples of parallel random numbers library
libreoffice - office productivity suite (metapackage)
mesa-opencl-icd - free implementation of the OpenCL API -- ICD runtime
ocl-icd-dev - Development files to build a ICD Loader
ocl-icd-libopencl1 - Generic OpenCL ICD Loader
ocl-icd-opencl-dev - OpenCL development files
liboclgrind-18.3 - core library for Oclgrind
liboclgrind-dev - development files for Oclgrind
oclgrind - OpenCL device simulator
openclipart - Open Clip Art Library
openclipart-libreoffice - clip art for OpenOffice.org/LibreOffice gallery
openclipart-png - clip art in PNG format
openclipart-svg - clip art in SVG format
openclonk - multiplayer game of strategy, action and skill
openclonk-data - multiplayer game of strategy, action and skill - data
libopentk-cil-dev - Open Toolkit wrapper for OpenGL, OpenAL and OpenCL - Dev files
libopentk1.1-cil - Open Toolkit wrapper for OpenGL, OpenAL and OpenCL - Assemblies
monodoc-opentk-manual - Open Toolkit wrapper for OpenGL, OpenAL and OpenCL - Docs
piglit - Open-source test suite for OpenGL and OpenCL implementations
libpocl-dev - development files for the pocl library
libpocl2 - Portable Computing Language library
libpocl2-common - common files for the pocl library
pocl-doc - documentation for the pocl library
pocl-opencl-icd - pocl ICD
python-pyfftw - Pythonic wrapper around FFTW - Python 2
python-pyfftw-doc - Pythonic wrapper around FFTW - docs
python3-pyfftw - Pythonic wrapper around FFTW - Python 3
python-pyopencl - Python module to access OpenCL parallel computation API
python-pyopencl-dbg - Python module to access OpenCL API (debug extensions)
python-pyopencl-doc - module to access OpenCL parallel computation API (documentation)
python3-pyopencl - Python 3 module to access OpenCL parallel computation API
python3-pyopencl-dbg - Python 3 module to access OpenCL API (debug extensions)
pyrit - GPGPU-driven WPA/WPA2-PSK key cracker
pyrit-opencl - OpenCL extension module for Pyrit
python-dtcwt - Dual-Tree Complex Wavelet Transform library for Python 2
python-dtcwt-doc - documentation for dtcwt
python3-dtcwt - Dual-Tree Complex Wavelet Transform library for Python 3
python-pytools - big bag of things supplementing Python standard library
python-pytools-doc - big bag of things supplementing Python library (documentation)
python3-pytools - big bag of things supplementing Python 3 standard library
libsocl-1.2-0 - Task scheduler for heterogeneous multicore machines
suricata - Next Generation Intrusion Detection and Prevention Tool
libufo-data - Library for high-performance, GPU-based computing - data
ufo-filters - Set of plugins for ufo-core - runtime
ufo-filters-data - Library for high-performance, GPU-based computing - data
libviennacl-dev - Scientific computing library written in C++ based on OpenCL
libviennacl-doc - ViennaCL API and user documentation
boinc-client-opencl - metapackage for AMD/ATI OpenCL-savvy BOINC client and manager
hashcat-nvidia - Installs hashcat and its dependencies for users with NVIDIA GPU
libsocl-contrib-1.2-0 - Task scheduler for heterogeneous multicore machines
nvidia-cuda-doc - NVIDIA CUDA and OpenCL documentation
nvidia-opencl-dev - NVIDIA OpenCL development files
nvidia-profiler - NVIDIA Profiler for CUDA and OpenCL
nvidia-visual-profiler - NVIDIA Visual Profiler for CUDA and OpenCL
nvidia-libopencl1 - NVIDIA OpenCL ICD Loader library
nvidia-opencl-common - NVIDIA OpenCL driver - common files
nvidia-opencl-icd - NVIDIA OpenCL installable client driver (ICD)
nvidia-legacy-340xx-opencl-icd - NVIDIA OpenCL installable client driver (ICD) (340xx legacy version)
nvidia-legacy-390xx-opencl-icd - NVIDIA OpenCL installable client driver (ICD) (390xx legacy version)
nvidia-tesla-opencl-icd - NVIDIA OpenCL installable client driver (ICD) (Tesla version)

Not sure where to proceed at this point.  What package should I install so that hashcat will recognize my CPU?
Reply
#2
remove pocl
Reply
#3
(01-25-2021, 06:34 PM)undeath Wrote: remove pocl

i ran this command with output:

Code:
apt list --installed | grep pocl

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libpocl2-common/stable,stable,now 1.2-5 all [installed,auto-removable]
libpocl2/stable,now 1.2-5 amd64 [installed,auto-removable]

so then I ran "sudo apt autoremove"  to remove those two results.  I verified they were removed by running "apt list --installed | grep pocl" again. Then I ran the installer for OpenCL from Intel, then "hashcat -I" and got this error message:

Code:
hashcat (v6.1.1-120-g15bf8b730) starting...

clCreateContext(): CL_DEVICE_NOT_AVAILABLE

It will then hang after that.
Reply
#4
Do you have the nvidia driver and/or cuda sdk installed? Also make sure you didn't accidentally remove the ICD loader.
Reply