After some reading and profiling I realized that as long as they ain't launched in different streams they'll be serialized. Sorry for the inconvenience
On Tue, Dec 4, 2012 at 11:51 AM, Leandro Demarco Vedelago <[email protected]> wrote: > Hi there. I have 2 kernels, one which must be launched only after the > first one has finished it's computations as it uses the results > computed by the first. > > My code looks something like: > > def main(): > ----- Something ------ > src = SourceModule(cudaCode) > f1 = src.get_function("f1") > f2 = src.get_function("f2") > f1(args1, res1, block=..., grid=...) > f2(args2, res2, block=..., grid=...) > ---- Something else ----- > > where res1 is contained in args2 > > So, I was wondering if in "normal" conditions (I'm using the same > context and just one stream for both launches) f2 is launched only > after f1 has ended or it's possible (maybe because of the Cuda > scheduler) that it's launched before f1 is done, in which case I > should seek a way to prevent this. > > Thanks in advance, Leandro Demarco. _______________________________________________ PyCUDA mailing list [email protected] http://lists.tiker.net/listinfo/pycuda
