Reputation: 2442
Working with an undisclosed API, I found a function that can set the number of "GPRs" allocated to a different phase of the graphics pipeline.
My guess is that GPR means "General Purpose Register", but I could not find really detailed documentation about their usage in widespread GPUs (also, their number, etc).
Does it mean something else ?
Upvotes: 3
Views: 2126
Reputation: 3165
Provided you have correctly guessed the meaning of "GPR":
For NVIDIA GPUs, the official source of such information used to be Appendix A to the CUDA Programming Guide. But if you don't feel like downloading a PDF just to look up the number of registers, go to Wikipedia and scroll down to the line "Number of 32-bit registers per multiprocessor".
In CUDA, registers are allocated dynamically. Without going much into details, the less registers your CUDA code needs, the more resident threads you can potentially have per multiprocessor, thus increasing utilization.
Upvotes: 3