We need to integrate a memory hierarchy estimator for single-CGRA/multi-CGRA for array partition/mapping.
Goal
- A Memory Hierarchy Estimator
This simulator takes the mapping result of a single kernel as input and estimates the extra latency brought by the memory hierarchy.
The estimator should be able to support the following memory hierarchy:
- SRAM
- Cache
- Configurable Shard Memory (SRAM + Cache)
- A Multi-CGRA Scheduler for A Single Kernel
Based on the estimation, we are able to determine the optimal array partition/schedule method of this single kernel on a multi-CGRA system. For example, equally distributing the whole fir kernel on a multi-CGRA system would explore more parallelism than deploying it on a single CGRA.