Hi,
sorry for yet another nuisance about my experiences with the thread migration API, but i’m now getting really puzzled :
Page 118 of the reference manual, one can find that :
“If successful, cuCtxPopCurrent() passes back the context handle in *pctx. The context may then be made current to a different CPU thread by calling cuCtxPushCurrent().”
But using a single context, and poping it returns a NULL pointer (this is the case in the SDK thread migration example for instance). So there is obviously something wrong here… either in the documentation (for instance if the returned context is a pointer to the top of the context stack, ie. the context that was made current by poping), or in the implementation.
All these context stuff are pretty new, and i’m pretty sure not many people have tested them for now, but contexts are certainly a major improvement in CUDA 2.0 imho, so it would be great if they were working properly, or if they were properly documented.
Thanks for you time !
Cédric