What dose the CUDA SASS instruction 'GETCRSPTR' mean?

Hi, how to understand the function of the instruction ‘GETCRSPTR’ ?
The instruction instance is ’ GETCRSPTR R0; ’
Thanks !

I cannot find this in official documentation, and if it is not in there, NVIDIA has likely no inclination to enlighten us. It seems to have been around for some time (possibly back to the Kepler architecture) and appears to belong to a cluster of instructions that also includes GETLMEMBASE.

How does the need for a description of this instruction arise? If you post a piece of CUDA that causes this instruction to be generated, it might be possible to make an educated guess as to its purpose. I don’t recall ever coming across it, and I have looked at plenty of SASS disassembly over the past 15 years. Speculating wildly, one might hypothesize that CRS is the “constant register space”.

The GETCRSPTR instruction is available since compute capability Kepler 3.5 up till Maxwell 6.2. (The GET/SETLMEMBASE instructions are still available with newer ccs). There is also SETCRSPTR and SETLMEMBASE = “Set Local Memory Base Address” (and the GETLMEMBASE = “Get Local Memory Base Address” mentioned by njuffa). Also have a look at that article talking about constant memory space on pages 12-14: https://ubm-twvideo01.s3.amazonaws.com/o1/vault/GD_Mag_Archives/GDM_April_2001.pdf on DirectX - not sure, if it is related.