Multiple GPUs and instances
#1
Hey

i'm planning on buying a server with two GPUs, and that server would be shared between two teams.
Question: is it possible to force hashcat to use a specific GPU rather than both of them?
how?

i couldn't find a clear answer.
Reply
#2
In this instance each attack would use -d not -D.

-D will choose between types of devices (CPU, GPU, Etc.)
-d will choose between devices detected.

Here is an example:

CUDA API (CUDA 12.0)
====================
* Device #1: NVIDIA GeForce RTX 3090, 23320/24575 MB, 82MCU
* Device #2: NVIDIA GeForce RTX 3090, 23320/24575 MB, 82MCU
* Device #3: NVIDIA GeForce RTX 3090, 23320/24575 MB, 82MCU
* Device #4: NVIDIA GeForce RTX 3090, 23320/24575 MB, 82MCU

Here is a list of devices relating with their #'s. To choose only 2 cards you can apply -d to your command line such as like this:

Code:
hashcat.exe -m 22000 -a 3 -d 2,3 capture.hc22000 ?d?d?d?d?d?d?d?d?d?d

So now devices 2,3 will be used in this instance and you could run a separate attack still using the 2 other available cards.

Code:
hashcat.exe -m 22000 -a 3 -d 1,4 capture2.hc22000 ?d?d?d?d?d?d?d?d?d?d

This can be broken down into as many instances as you want, you can always split the workload on the GPU as well running double instances on it but that would also equate to lost hashrate making your attacks less efficient if power and time is of the essence.

Hope this helps.
Reply