Hi Andreas, Unfortunately that does not seem to work.
Cheers, Matthew On Oct 11, 2011, at 6:27 PM, Andreas Kloeckner wrote: > On Tue, 11 Oct 2011 17:41:56 -0700, Matthew Graham <m...@cacr.caltech.edu> > wrote: >> Hi, >> >> I'm making successive calls to a function with each call requiring an >> initialization and a release of the CUDA context. However, memory on the >> device is not getting freed between calls. What I have in a call is: >> >> driver.init() >> dev = driver.Device(num) >> context = dev.make_context() >> print driver.mem_get_info() >> mod = compiler.SourceModule(code) >> ... # application logic here >> context.pop() >> >> and this is showing: >> >> Obj 1 >> (195731456, 265945088) >> (182132736, 265945088) >> (168099840, 265945088) >> (154075136, 265945088) >> Obj 2 >> (140050432, 265945088) >> (126025728, 265945088) >> (112001024, 265945088) >> (98009088, 265945088) >> Obj 3 >> (83984384, 265945088) >> Obj 4 >> (69959680, 265945088) >> (55934976, 265945088) >> (41517056, 265945088) >> (26443776, 265945088) >> Obj 5 >> [11/Oct/2011:16:23:57] HTTP Traceback (most recent call last): >> File >> "/Library/Frameworks/Python.framework/Versions/6.0.0/lib/python2.6/site-packages/cherrypy/_cprequest.py", >> line 606, in respond >> cherrypy.response.body = self.handler() >> File >> "/Library/Frameworks/Python.framework/Versions/6.0.0/lib/python2.6/site-packages/cherrypy/_cpdispatch.py", >> line 25, in __call__ >> return self.callable(*self.args, **self.kwargs) >> File "/Users/mjg/Projects/python/kiss/culsp.py", line 203, in culsp >> context = dev.make_context() >> MemoryError: cuCtxCreate failed: out of memory >> >> I've tried to put in del calls for the gpuarrays used after popping the >> context (as per the 2DFFT and MultipleThreads example codes) but this is not >> doing anything. How can I release the memory on the device between calls? > > Try pycuda.tools.clear_context_caches(). > > Andreas _______________________________________________ PyCUDA mailing list PyCUDA@tiker.net http://lists.tiker.net/listinfo/pycuda