-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Closed
Labels
tir:transformTIR transforms: src/tir/transforms and python/tvm/tir/transformsTIR transforms: src/tir/transforms and python/tvm/tir/transformstype:rfc-trackingRFC progress tracking. Ref: https://github.com/apache/tvm-rfcsRFC progress tracking. Ref: https://github.com/apache/tvm-rfcsvert:microMicroTVM: src/runtime/micro, src/runtime/crt, apps/microtvmMicroTVM: src/runtime/micro, src/runtime/crt, apps/microtvm
Description
This is the tracking issue for the changes proposed in the USMP RFC.
Steps
- Introduction and integration of tir.allocate_const (similiar to tir.allocate). The integration would be a refactor of current link-params implementation to lower from tir.allocate_consts.
- Introduce tir.allocate_const TIR construct with tvmscript based tests. : [TIR] Introduce tir.allocate_const to TIR #8472
- Integrate tir.allocate_const to the compilation pipeline to support link-param s : [TIR] Tir constants integration into compilation pipeline #8509
- Analysis Passes and data structures
- Introduce annotations for tir.allocate node : Adding annotations for tir.allocate #9168
- Extract BufferInfo for tir.allocate s with liveness conflicts : [TIR][USMP] Added buffer info extraction pass #8468
- Extract BufferInfo for tir.allocate_const : [USMP] Adding support for U1 usecase for constant pools #10189
- Transform Passes with data structures
- Convert parallel for loops to serial for loops (Optional) : [TIR][USMP] Add a parallel to serial for loop converter pass #8469
- Replace TIR main and operator PrimFuncs tir.allocate with offsets to workspace pools. This is run after running a memory planning algorithm on extracted BufferInfo objects. : [TIR][USMP] adding the pass to convert to pool offsets #9418
- Replace TIR main and operator PrimFuncs tir.allocate_const s with offsets to parameter pools. This is run after running a memory planning algorithm on extracted BufferInfo objects.
- Memory Planning Algorithms (with Array<BufferInfo> interface)
- Greedy by Size Algorithm Implementation : [TIR][USMP] Greedy memory planning algorithm #9214
- Hill climb Algorithm implementation : [USMP] Hill Climb allocator #9704
- USMP integration to AoT executor codegen for U1 with workspace pool : [TIR][USMP] Integrating USMP to AoT Executor #9565
- USMP support for U1 for constant pools : [USMP] Adding support for U1 usecase for constant pools #10189
- USMP support for U2 & U3 for workspace pools with relay.build API : [USMP] adding support for U2 and U3 usecases #10193
- TVMC integration of --workspace-pools arguments : [TVMC] Workspace Pools Parameters #11427
- USMP support for U3 for constant pools : [usmp] U3 use case #11015
- TVMC integration of --constant-pools arguments
- USMP support for U4 -- re-using I/O space : [USMP] Adding support for U4 usecase #10785
Metadata
Metadata
Assignees
Labels
tir:transformTIR transforms: src/tir/transforms and python/tvm/tir/transformsTIR transforms: src/tir/transforms and python/tvm/tir/transformstype:rfc-trackingRFC progress tracking. Ref: https://github.com/apache/tvm-rfcsRFC progress tracking. Ref: https://github.com/apache/tvm-rfcsvert:microMicroTVM: src/runtime/micro, src/runtime/crt, apps/microtvmMicroTVM: src/runtime/micro, src/runtime/crt, apps/microtvm