I'm compiling kernel(s) using NVRTC. Suppose I wrote one which uses more static shared memory than my GPU supports. Thus, when I try to cuModuleLoadDataEx()
the compiled module, I get an error.
The thing is, the error I get is CUDA_ERROR_INVALID_PTX
. That's not technically true, and regardless - it is not a good indication of the lack of sufficient shared memory.
What can I do - not having a PTX parser library myself - to automagically figure out the out-of-shared-memory issue?
Note: This question is about static memory only. Assume there is no use of dynamic shared memory, so we can completely ignore it.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…