[Discussion/Alignment] Memory Planning

Hi @aca88

thanks for your interest!

For the evaluated models, we just used a single schedule as given by TVM: tvm/memplan.py at tumeda_memplan · tum-ei-eda/tvm · GitHub

You are right that for more complex graphs, we would have to evaluate more schedules to find the optimal solution.

However, getting all topological sorts is a bit of a lazy overkill. I have not looked into this in detail yet, but some thoughts:

  • Only need to evaluate parallel paths independently
  • On nested parallel paths, work inside-out
  • The optimal order within parallel paths is dependent on the maximum and minimum usage of the individual nodes. I’m sure there is a good algorithm for this, better than the brute-force approach
1 Like