tvm icon indicating copy to clipboard operation
tvm copied to clipboard

[Tracking Issue] TVMScript Metaprogramming

Open junrushao opened this issue 2 years ago • 0 comments

This issue is to track progress for [RFC-0079] TVMScript Metaprogramming.

Main author: @cyx-6 @yongwww.

A. Fix bugs/issues revealed by the new parser

  • A1. TIR operations that are forgotten previously to be exposed to python
    • [x] call_packed_lowered, call_cpacked_lowered, call_llvm_intrin, call_llvm_pure_intrin https://github.com/apache/tvm/pull/12425
    • [x] tvm_load_matrix_sync, tvm_mma_sync, tvm_bmma_sync, tvm_fill_fragment, tvm_store_matrix_sync https://github.com/apache/tvm/pull/12589
    • [x] ptx_mma, ptx_mma_sp, mma_store, mma_fill https://github.com/apache/tvm/pull/12623
    • [x] ptx_ldmatrix, ptx_cp_async, ptx_commit_group, ptx_wait_group https://github.com/apache/tvm/pull/12611
    • [x] tvm_stack_alloca, tvm_stack_make_shape, tvm_stack_make_array https://github.com/apache/tvm/pull/12429
    • [x] tvm_tuple, tvm_struct_get, tvm_struct_set https://github.com/apache/tvm/pull/12452
    • [x] tvm_thread_allreduce, tvm_access_ptr, tvm_throw_last_error, TVMBackendAllocWorkspace, TVMBackendFreeWorkspace https://github.com/apache/tvm/pull/12468
    • [x] shift_left, shift_right https://github.com/apache/tvm/pull/12584
    • [x] vectorlow, vectorhigh, vectorcombine https://github.com/apache/tvm/pull/12571
    • [x] address_of, infinity, reinterpret, lookup_param, isnullptr https://github.com/apache/tvm/pull/12466
    • [x] assume, undef, likely https://github.com/apache/tvm/pull/12435
  • [x] A2. Fix precision issue in FFI converting int/float to PrimExpr https://github.com/apache/tvm/pull/12417
  • [x] A3. Expose ScriptComplete in header https://github.com/apache/tvm/pull/12419
  • [x] A4. Conversion BufferRegion to vectorized BufferLoad https://github.com/apache/tvm/pull/12420
  • [x] A5. Bugfix on dtype in Cache-Read/Write https://github.com/apache/tvm/pull/12421
  • [x] A6. Allow tir.Buffer => BufferLoad/BufferRegion conversion https://github.com/apache/tvm/pull/12422
  • [x] A7. Wrong error checking logic https://github.com/apache/tvm/pull/12423
  • [x] A8. Avoid import * in TIR tensor intrinsic registration https://github.com/apache/tvm/pull/12424

B. IRBuilder

  • [x] B1. Basic IRBuilder and generic Frame https://github.com/apache/tvm/pull/12694
  • [x] B2. TIR IRBuilder: Block-related https://github.com/apache/tvm/pull/12748 https://github.com/apache/tvm/pull/12808
  • [x] B3. TIR IRBuilder: For-related https://github.com/apache/tvm/pull/12786 https://github.com/apache/tvm/pull/12815
  • [x] B4. TIR IRBuilder: PrimFunc-related https://github.com/apache/tvm/pull/12745 https://github.com/apache/tvm/pull/12755
  • [x] B5. TIR IRBuilder: Assert, Let, Realize, Evaluate, LaunchThread, EnvThread https://github.com/apache/tvm/pull/12830
  • [x] B6. TIR IRBuilder: Prefetch, Attr, While, Allocate, AllocateConst, If/Then/Else, BufferStore https://github.com/apache/tvm/pull/12831
  • [ ] B7. TIR IRBuilder: Import TIR operators into the IRBuilder namespace

C. Parser

  • [ ] C1. Doc AST, Source and diagnostics
  • [ ] C2. Evaluator, dispatch, core parser, var table
  • [ ] C3. Dispatch with tvm.ir
  • [ ] C4. Dispatch with tvm.tir

junrushao avatar Aug 15 '22 19:08 junrushao