Dynamic compute graph using Genstage?

Thanks! This sounds a very interesting problem. I would still like to challenge you to think about this problem first functionally and then introduce processes. Most of the ability to modify the computations live can happen at the module/function level. For example, you mentioned hot code swapping, and that’s the level it operates. I believe if you focus first on the functional problem and then introduce the stages, the final solution may be simpler.

That’s also what Flow does. It abstract the computation from the stage placement so it can find the best process placement based on the operations you describe. In fact, Flow does its best to skip introduce stages, and does so only when necessary (for example because you need to partition data to be processed always by the same stage).

5 Likes