Intel i7 with 8 cores - just one core computing - Printable Version +- hashcat Forum (https://hashcat.net/forum) +-- Forum: Support (https://hashcat.net/forum/forum-3.html) +--- Forum: hashcat (https://hashcat.net/forum/forum-45.html) +--- Thread: Intel i7 with 8 cores - just one core computing (/thread-9372.html) |
Intel i7 with 8 cores - just one core computing - bernd.lentes - 07-09-2020 Hi, i'm running hashcat 6.0.0 on an Ubuntu 16.04 box with an Intel i7 with 8 cores. While seraching for passwords with hashcat just one cpu is computing, the others are idle. Additionally i have a Geforce GTX 1050, which is computing. I installed Intel® CPU Runtime for OpenCL, and hashcat -I recognizes my CPU. What can i do that also the other cores are crontibuting ? Bernd RE: Intel i7 with 8 cores - just one core computing - philsmd - 07-09-2020 read the --help output and see how the different supported device types can be enabled (--opencl-device-types or short -D, uppercase D) Code: -D 1,2 it's not always guaranteed that the CPU makes much of a difference and that the overall speed is much faster when enabling CPU AND GPU. It depends on many factors, but if all your CPU cores are busy cracking hashes, you could have a counterproductive effect i.e. that your host/CPU can't keep up with provinding your GPU(s) enough work if all CPU cores are busy. Again, it depends a lot and you could just test it and see how the speed changes. RE: Intel i7 with 8 cores - just one core computing - bernd.lentes - 07-09-2020 Hi, thanks for your help. I'm struggling with the output of hashcat -I: CUDA Info: ========== CUDA.Version.: 11.0 Backend Device ID #1 (Alias: #2) Name...........: GeForce GTX 1050 Processor(s)...: 5 Clock..........: 1455 Memory.Total...: 1999 MB Memory.Free....: 1424 MB OpenCL Info: ============ OpenCL Platform ID #1 Vendor..: NVIDIA Corporation Name....: NVIDIA CUDA Version.: OpenCL 1.2 CUDA 11.0.185 Backend Device ID #2 (Alias: #1) Type...........: GPU Vendor.ID......: 32 Vendor.........: NVIDIA Corporation Name...........: GeForce GTX 1050 Version........: OpenCL 1.2 CUDA Processor(s)...: 5 Clock..........: 1455 Memory.Total...: 1999 MB (limited to 499 MB allocatable in one block) Memory.Free....: 1408 MB OpenCL.Version.: OpenCL C 1.2 Driver.Version.: 450.36.06 OpenCL Platform ID #2 Vendor..: Intel(R) Corporation Name....: Intel(R) CPU Runtime for OpenCL(TM) Applications Version.: OpenCL 2.1 LINUX Backend Device ID #3 Type...........: CPU Vendor.ID......: 8 Vendor.........: Intel(R) Corporation Name...........: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz Version........: OpenCL 2.1 (Build 0) Processor(s)...: 8 Clock..........: 3400 Memory.Total...: 64286 MB (limited to 16071 MB allocatable in one block) Memory.Free....: 64222 MB OpenCL.Version.: OpenCL C 2.0 Driver.Version.: 18.1.0.0920 It seems that i have two different OpenCL versions: one from CUDA (nVidia), one from Intel. Is that a problem ? And why is it reporting that the GeForce graphic adapter has 5 processors ? In the net i found that it has 640 processors. I try:./hashcat.bin -D 1,2 -m 7100 -a 3 macos.hash -1 ?l?u?d ?1?1?1?1?1?1 -D 1,2 shoud use GPU and CPU, right ? Output: CUDA API (CUDA 11.0) ==================== * Device #1: GeForce GTX 1050, 1424/1999 MB, 5MCU OpenCL API (OpenCL 1.2 CUDA 11.0.185) - Platform #1 [NVIDIA Corporation] ======================================================================== * Device #2: GeForce GTX 1050, skipped OpenCL API (OpenCL 2.1 LINUX) - Platform #2 [Intel(R) Corporation] ================================================================== * Device #3: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz, 64222/64286 MB (16071 MB allocatable), 8MCU All CPU cores are computing following top: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8608 root 20 0 15,163g 788848 161644 S 722,3 1,2 16:47.64 hashcat.bin You are right, it does not seem to be quicker. What is the difference between a backend device and a OpenCL device ? Thanks, Bernd RE: Intel i7 with 8 cores - just one core computing - philsmd - 07-11-2020 I'm not sure why you are confused about it, you actually stated above that: 1. "I installed Intel® CPU Runtime for OpenCL" 2. you have CUDA installed 3. you have installed the NVIDIA driver so it's perfectly fine that there is: 1. an "Intel(R) Corporation" platform for your CPU and 2. the alias of CUDA vs OpenCL for your GPU (you can choose between them, but only select one, because it's the same physical hardware, just different compilers/runtimes, there are some "minor" differences between CUDA and OpenCL, NVIDIA itself tries to focus more on CUDA, so OpenCL isn't treated/pushed that well by NVIDIA) 5 MCU doesn't mean that the GPU has 5 cores, it's a different unit and it seems correct for a NVIDIA GTX 1050. I'm not sure if I get your last question correctly. In general, a backend is a supported type of runtime/driver or better said a framework (a class of compilers/drivers/runtimes that support a specific GPGPU language), i.e. OpenCL or CUDA at the time of this writing. OpenCL is basically an instance of a backend, NVIDIA another one. If your question instead is what the differences between --opencl-device-types and --backend-devices is, the question is very simple. The former can be used to whitelist different device types (like CPU, GPU, etc), while the latter is used to select the already whitelisted devices (e.g. "from the huge list of my whitelisted devices I only want to use #1 and #2") |