7 Replies Latest reply on Mar 30, 2015 12:27 PM by billyc59

    OpenCL pipes communication: Parent and Child kernels

    billyc59

      Hi, I'm trying to get 2 kernels to communicate with each other using pipes.

      1 parent kernel writes to a pipe, and enqueues a child kernel.
      Meanwhile a child kernel reads from the pipe, and writes to another pipe, that will be read by the parent.
      There are 2 different pipes. 
      One is:  write end -> parent, read-end -> child.  The other is write-end -> child, read-end -> parent.  
      The call for the parent kernel to read from the child kernel write pipe is placed directly after the enqueue is performed.  The child does not enqueue the parent.
      My reserve ID is failing to return back a valid ID for the read.  What am I doing wrong? 

       

      Am I wrong to assume that the control flow returns back to the parent kernel after the child kernels finish executing? 
      If so, then what is the control flow?