Check the ROP unit count under Linux? Affects all RTX 50XX cards

oh yeah, happy anniversary @zebcom ! :)

…it uses the nvidia-smi command line… and that method is almost guaranteed to require the open kernel modules…

Absolutely unreal.

Edit: lmao you people are funny.

…it uses the nvidia-smi command line… and that method is almost guaranteed to require the open kernel modules…

Absolutely unreal.

I do not know why you insist on posting off-topic, apart from a desire to troll.

Since CPU-X reports infos on motherboard, CPU, GPU and more from many brands, it obviously does not rely on one software to gather the data, but on the contrary can tap in many APIs to display info.

PS: the author of CPU-X has validated the proposal. Feel free to approach him and explain to him how he is mistaken.

1 Like

Thank you very much @morgwai666 and @shelter for your kind words!

By the way the author of CPU-X on Github has tagged the proposal as ā€œFeatureā€ and ā€œGood first issueā€. I will see if he needs further info.

1 Like

It’s been 5 days. Why haven’t you submitted a PR?

I was on holiday. And I will need to look into the CPU-X code first, to learn how it is structured.

i was searching few hours for this info how find that ROPS count on linux , thanks super much you saved me installation of windows again : ) thanks for nice linux drivers nvidia, NOT : ( : ( : (

I’m running Nobara 41. the rop.c fails with this:
/dev/nvidiactl/dev/nvidia0Failed to open nvidiactlsetioctlprintffwritelibc.so.6GLIBC_2.2.5GLIBC_2.4GLIBC_2.34__gmon_start__<ui Fii
Failed to allocate client
Failed to open nvidia0
Failed to allocate device
Failed to allocate subdevice
Failed to get ROP count
ROP unit count: %d
ROP operations factor: %d
ROP operations count: %d

could you help me figure out what’s going on? i’m not a C programmer. all the utilities that it’s trying to call seem to be installed

Since I was asked about this, let me clarify the license. I am releasing this program under the MIT license, just like open-gpu-kernel-modules. Note that the data type declarations were copied verbatim from open-gpu-kernel-modules.

Attribution for my part is optional, however you should probably attribute NVIDIA for theirs.

Not sure. That output makes no sense to me. It’s like you dumped a bunch of strings from the executable instead of executing it. What are the exact steps you made since downloading the file?

I downloaded the rop.txt. Renamed it to rop.c. Ran gcc rop.c. That created the a.out file in the same folder. Ran cat a.out - among the unreadable symbols there was the snippet from the original post.
I posted the entire rop.txt into chatGPT and asked it to help me confirm I have all the necessary tools to run the rop.c - it looked like I do. The only change I had to make was to the Nvidia persistence daemon. For some reason on nobara it’s disabled by default and I had to create a user for it. But that didn’t help when I re-ran gcc rop.c

That’s not how you run an executable. Try ./a.out.

lol - duh! thank you so much!
╰─ ./a.out
ROP unit count: 14
ROP operations factor: 8
ROP operations count: 112

Note that a.out is the default output of gcc, You would rather use gcc roc.c -o roc_count to create an executable called roc_count (there is no meaning of ā€œ.exeā€ extension in Unix, so no reason to have one).

1 Like

Thanks for the app.

Picked up a 5070 (which is performing like a steaming pile at about 5% of expected performance with the current driver unfortunately) but here’s what it reports for me:
ROP unit count: 10
ROP operations factor: 8
ROP operations count: 80

Yes this is the correct count for 5070 non-Ti.

1 Like

Zotac AMP 4090

ROP unit count: 22
ROP operations factor: 8
ROP operations count: 176

There is something here because my 4090 has this

ROP unit count: 22
ROP operations factor: 8
ROP operations count: 176

And your 5090 HAS to have more.

No, they both have 176.

For real? Then would that mean at the raster performance the 4090 and 5090 are the same?

I don’t know why I thought the 5090 had 25% more rop. My fault.