StanfordLegion / legion

The Legion Parallel Programming System
https://legion.stanford.edu
Apache License 2.0
689 stars 144 forks source link

Realm: Decouple control and effects for asynchronous execution in realm #1776

Open apryakhin opened 1 month ago

apryakhin commented 1 month ago

In the current Realm implementation, the concept of control and effects are conflated. If the execution lifetime of a task or copy is coupled to it actually finishing its execution (as is the case for tasks and copies running on CPUs) this is a reasonable implementation. However, when the execution lifetime of a task or a copy is unrelated to when it finishes running (as can be the case with GPU tasks and copies) then this can potentially expose unnecessary latency in the execution of Realm programs. Original written by @lightsighter

I am filing this for tracking as a possible TODO item on the list. Most likely it won't be worked on until a compelling use case presents itself. However, I do plan to estimate the scope of work and a do a design proposal while fresh on the details of the events state machine.