I'm working on some multi GPU software, and I've run into a snag on
OSX. (Note that this works on Linux.) Here's some sample code:
import pycuda.driver as drv
drv.init() ## COMMENT THIS LINE AND IT RUNS FINE
thd = multiprocessing.Process(target=tar)
This code produces the following error:
LogicError: cuDeviceGet failed: not initialized
I want to be able to keep the first "drv.init()" so that my code will
play nice with other pycuda software on the host thread. My guess is
the source of the issue is related to how multiprocessing clones the
parent process. It probably does something weird to pycuda.
Any suggestions? Thanks a ton in advanced for your help!!