This is fantastic, thank you @Miro256. At least, contrary to some trolls here, who are just big mouth but contributed nothing except unnecessary flamng, you found a solution.
Nice, would be cool to see more info in CPU-X.
Btw @zebcom, happy forum anniversary. ;)
Also, nvidia devs, you could have given us a pointer here. You might have a lot to do because of the 5000 series release but stillā¦
Hats off to @Miro256 for finding this.
ā¦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.
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
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).
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