[APPack] Tuned Up APPack Code - #3231
Conversation
This is the second PR that brings in private tunings for the Triple-AP work into VTR master. These are all the tuning changes to the APPack algorithm. This comes with changes to the max displacement threshold values, improved fall-back logic, and better unrelated clustering logic. Also fixed a small issue in the delay derivative calculation of the analytical solver to explicitly handle boundary conditions of the derivative.
f1bde67 to
1aa0b1f
Compare
|
Results on Titan (no fixed blocks, where baseline is the AP flow before this change):
Notice that the post FL CPD and WL did not change; however, the final CPD and WL improved by 2-3%. The cost of this is a 3% increase in run time. Looking at the run time breakdown, we can see that all of the time was lost in detailed placement (in the anneal). I attribute this to the number of LABs increasing by 7%. The optimizations that I have added to APPack allowed the packing to become less dense without becoming unfittable. This allows us to play more to the strengths of the annealer, while still packing things together based on the AP global placer. Overall these changes are a win. I am ok with the run time hit in this case, since if we really want the run time back we can reduce the inner_num by 8%. @vaughnbetz FYI |
|
@amin1377 Please review when you have a moment. This is the last major change that I have locally to the AP flow. The only change left behind is the checkpointing change to the annealer, which I wanted to bring in a separate PR since I know it will be a bit contentious. |
amin1377
left a comment
There was a problem hiding this comment.
Thanks, Alex! Overall, it looks good to me. I just mainly asked to expand on some comments so that a novice like me can also understand what’s going on :)
amin1377
left a comment
There was a problem hiding this comment.
Thanks, Alex! It looks good to me. Feel free to merge it once you’ve completed all the changes you wanted to make.
This is the second PR that brings in private tunings for the Triple-AP work into VTR master.
These are all the tuning changes to the APPack algorithm. This comes with changes to the max displacement threshold values, improved fall-back logic, and better unrelated clustering logic.
Also fixed a small issue in the delay derivative calculation of the analytical solver to explicitly handle boundary conditions of the derivative.