masahi commented on PR #80:
URL: https://github.com/apache/tvm-rfcs/pull/80#issuecomment-1165113653

   Summarizing the current situation of the proposal and discussion points so 
far:
   
   * The original goal was (and still is) to bring asynchronies in the TIR 
software pipeline. Two intrinsics were introduced specifically with this goal 
in mind: Rather than tackling a potentially more difficult problem of designing 
"general async semantics" for TIR, the machanics of the intrinsics are strongly 
tied to the software pipeline (in particular, the notion of "stage"). 
   
   * But @Lunderberg and @JosephTheOctonaut suggest that the proposed async 
semantics may not be too far from a "general" one, if we can decouple 
asynchrony from the "stage". 
   
   * So, what we can do instead, is first define more general semantics of 
commit / wait, and build async pipeline on top of it (rather than the other way 
around). I really like this way of thinking!
   
   * The exact semantics of "wait" probably needs more care. Currently, it is a 
bit ambiguous "who" gets to wait (main thread, or worker thread?). I was hoping 
that the current model allows worker-thread wait, but since the only HW that I 
can test for real is CUDA right now, my thinking has been unintentionally 
leaning toward the "main thread" model (despite the fact that I gave an example 
of multiple async stages which I intended to run "autonomously").
   
   @JosephTheOctonaut @Lunderberg @vinx13 @junrushao1994        


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to