Enable backtrack mapping strategy#73
Conversation
tancheng
left a comment
There was a problem hiding this comment.
Thanks for the awesome work~! I just have one concern:
The CGRA-mapper repo's heuristic is exactly your backtrackMap with max_location_to_try = All & max_backtrack_depth = 1, while its exhaustive is exactly your backtrackMap with max_location_to_try = All & max_backtrack_depth = All.
So for this repo, can we deprecate the current heuristic, but wrap your max_location_to_try = All & max_backtrack_depth = 1 as the new heuristic and treat your max_location_to_try = All & max_backtrack_depth = All as the new exhaustive?
|
Hi @ShangkunLi, re: #59 We didn't touch the placement tile selection, or prioritize anything related to utilization. This PR just enables backtrack and everything works as expected, right? How many minutes we can get a valid mapping solution with your new algorithm? And how many times the If it is fast enough, we can close that issue, instead, we can create new ones if compilation time is bottleneck in the future. |
I only added the backtracking functionality in this pr. The mapper can only map the former ~10 operations (most are For now, I set |
Sure, will add it soon! |
In fact, in current heuristic, the Anyway, I will set |
Enable backtrack mapping strategy
In this pr, we add the following features to enable backtrack mapping. And we can achieve
CompiledII = 4forbranch_for.mlirnow.Enable choosing different mapping strategies using the command line. e.g.,
--map-to-accelerator="mapping-strategy=backtrack_mapping"Support backtrack mapping. Users can specify some parameters in
include/Mapping/BacktrackMapping/BacktrackMapping.hfor this mapping strategy:max_location_to_try: The MAX number of candidate locations for each op to try.max_backtrack_depth: The MAX depth of backtrack.TODO:
neura.constantfor each function argument.