I have modified the rop.c file to include support for multiple gpus since that version only checks for the first GPU. You can find it attached here as ropmulti.txt rename it to ropmulti.c. To compile just do gcc -o ropmulti ropmulti.c and then run ./ropmulti
ropmulti.txt (12.8 KB)
You should see output like this:
— Processing GPU 0 /dev/nvidia0 —
GPU 0 ROP unit count: 22
GPU 0 ROP operations factor: 8
GPU 0 ROP operations count: 176
— Processing GPU 1 /dev/nvidia1 —
GPU 1 ROP unit count: 22
GPU 1 ROP operations factor: 8
GPU 1 ROP operations count: 176
— Processing GPU 2 /dev/nvidia2 —
GPU 2 ROP unit count: 14
GPU 2 ROP operations factor: 8
GPU 2 ROP operations count: 112
— Processing GPU 3 /dev/nvidia3 —
GPU 3 ROP unit count: 22
GPU 3 ROP operations factor: 8
GPU 3 ROP operations count: 176
Found 4 NVIDIA device(s).
I also created another version ropnvml.txt rename it to ropnvml.c which you have to compile linking against nvidia-ml to get the card name like this: gcc -o ropnvml ropnvml.c -lnvidia-ml
You will need to ensure you have the nvml.h header file installed as well.
Then just run ./ropnvml
ropnvml.txt (11.2 KB)
You should see output like this:
— Processing GPU 0 /dev/nvidia0 —
Name: NVIDIA GeForce RTX 5090
ROP unit count: 22
ROP operations factor: 8
ROP operations count: 176
— Processing GPU 1 /dev/nvidia1 —
Name: NVIDIA GeForce RTX 4090
ROP unit count: 22
ROP operations factor: 8
ROP operations count: 176
— Processing GPU 2 /dev/nvidia2 —
Name: NVIDIA GeForce RTX 3090
ROP unit count: 14
ROP operations factor: 8
ROP operations count: 112
— Processing GPU 3 /dev/nvidia3 —
Name: NVIDIA GeForce RTX 5090
ROP unit count: 22
ROP operations factor: 8
ROP operations count: 176
Found 4 NVIDIA device(s).