tlc-pack / tvm-tensorir

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Meta Schedule Upstreaming

junrushao opened this issue · comments

Based on this commit: af69e7a. We need to upstream 228 file changes and 28472 lines of code.

Part 1. Scheduling

@vinx13 @jinhongyii

include/tvm/arith/iter_affine_map.h
include/tvm/tir/schedule/instruction.h
include/tvm/tir/schedule/schedule.h
src/tir/schedule/analysis.h
src/tir/schedule/analysis/analysis.cc
src/tir/schedule/analysis/layout.cc
src/tir/schedule/concrete_schedule.cc
src/tir/schedule/concrete_schedule.h
src/tir/schedule/instruction.cc
src/tir/schedule/instruction_traits.h
src/tir/schedule/primitive.h
src/tir/schedule/primitive/annotate.cc
src/tir/schedule/primitive/block_annotate.cc
src/tir/schedule/primitive/blockize_tensorize.cc
src/tir/schedule/primitive/compute_at.cc
src/tir/schedule/primitive/compute_inline.cc
src/tir/schedule/primitive/for_kind.cc
src/tir/schedule/primitive/layout_transformation.cc
src/tir/schedule/primitive/read_write_at.cc
src/tir/schedule/primitive/sampling.cc
src/tir/schedule/schedule.cc
src/tir/schedule/state.cc
src/tir/schedule/trace.cc
src/tir/schedule/traced_schedule.cc
src/tir/schedule/traced_schedule.h
src/tir/schedule/transform.cc
src/tir/schedule/utils.h
tests/python/unittest/test_tir_schedule_analysis.py
tests/python/unittest/test_tir_schedule_blockize.py
tests/python/unittest/test_tir_schedule_compute_inline.py
tests/python/unittest/test_tir_schedule_read_write_at.py
tests/python/unittest/test_tir_schedule_tensorize.py
tests/python/unittest/test_tir_schedule_transform_layout.py
tests/python/unittest/test_tir_schedule_utilities.py
tests/python/unittest/test_tir_transform_inject_software_pipeline.py

Part 2. Builder & Runner

@junrushao1994

include/tvm/auto_scheduler/measure.h
include/tvm/meta_schedule/builder.h
python/tvm/meta_schedule/init.py
python/tvm/meta_schedule/builder/builder.py
python/tvm/meta_schedule/builder/local_builder.py
src/meta_schedule/builder/builder.cc
tests/python/unittest/test_meta_schedule_builder.py
python/tvm/meta_schedule/runner/local_runner.py
python/tvm/meta_schedule/runner/rpc_runner.py

Part 3. Database

@junrushao1994

include/tvm/meta_schedule/database.h
python/tvm/meta_schedule/database/database.py
src/meta_schedule/database/database.cc
src/meta_schedule/database/json_database.cc

Part 4. Cost model

@junrushao1994

include/tvm/auto_scheduler/cost_model.h
include/tvm/meta_schedule/cost_model.h
python/tvm/meta_schedule/cost_model/init.py
python/tvm/meta_schedule/cost_model/cost_model.py
python/tvm/meta_schedule/cost_model/metric.py
python/tvm/meta_schedule/cost_model/random_model.py
python/tvm/meta_schedule/cost_model/xgb_model.py
src/meta_schedule/cost_model/cost_model.cc
tests/python/unittest/test_meta_schedule_cost_model.py

Part 5. Feature extraction

@junrushao1994

include/tvm/meta_schedule/feature_extractor.h
python/tvm/meta_schedule/feature_extractor/init.py
python/tvm/meta_schedule/feature_extractor/feature_extractor.py
python/tvm/meta_schedule/feature_extractor/per_store_feature.py
python/tvm/meta_schedule/feature_extractor/random_feature_extractor.py
src/meta_schedule/feature_extractor/feature_extractor.cc
src/meta_schedule/feature_extractor/per_store_feature.cc
tests/python/unittest/test_meta_schedule_feature_extractor.py
tests/python/unittest/test_meta_schedule_feature_extractor_per_store_feature.py

Part 5. Measure Callbacks

@zxybazh

include/tvm/meta_schedule/measure_callback.h
python/tvm/meta_schedule/measure_callback/init.py
python/tvm/meta_schedule/measure_callback/add_to_database.py
python/tvm/meta_schedule/measure_callback/echo_statistics.py
python/tvm/meta_schedule/measure_callback/measure_callback.py
python/tvm/meta_schedule/measure_callback/remove_build_artifact.py
python/tvm/meta_schedule/measure_callback/update_cost_model.py
src/meta_schedule/measure_callback/add_to_database.cc
src/meta_schedule/measure_callback/echo_statistics.cc
src/meta_schedule/measure_callback/measure_callback.cc
src/meta_schedule/measure_callback/remove_build_artifact.cc
src/meta_schedule/measure_callback/update_cost_model.cc
tests/python/unittest/test_meta_schedule_measure_callback.py

Part 6. Task Scheduler

@zxybazh

include/tvm/meta_schedule/task_scheduler.h
python/tvm/meta_schedule/task_scheduler/round_robin.py
python/tvm/meta_schedule/task_scheduler/task_scheduler.py
src/meta_schedule/task_scheduler/round_robin.cc
src/meta_schedule/task_scheduler/task_scheduler.cc
tests/python/unittest/test_meta_schedule_task_scheduler.py

Part 7. Search Strategy

@zxybazh

include/tvm/meta_schedule/search_strategy.h
python/tvm/meta_schedule/search_strategy/init.py
python/tvm/meta_schedule/search_strategy/evolutionary_search.py
python/tvm/meta_schedule/search_strategy/replay_func.py
python/tvm/meta_schedule/search_strategy/replay_trace.py
python/tvm/meta_schedule/search_strategy/search_strategy.py
src/meta_schedule/search_strategy/evolutionary_search.cc
src/meta_schedule/search_strategy/replay_func.cc
src/meta_schedule/search_strategy/replay_trace.cc
tests/python/unittest/test_meta_schedule_search_strategy.py

Part 8. Space Generator

@zxybazh

python/tvm/meta_schedule/space_generator/init.py
python/tvm/meta_schedule/space_generator/post_order_apply.py
python/tvm/meta_schedule/space_generator/space_generator.py
include/tvm/meta_schedule/space_generator.h
src/meta_schedule/space_generator/post_order_apply.cc
tests/python/unittest/test_meta_schedule_space_generator.py
tests/python/unittest/test_meta_schedule_post_order_apply.py

Part 9. Tune Context

@zxybazh

include/tvm/meta_schedule/tune_context.h
python/tvm/meta_schedule/tune_context.py
src/meta_schedule/tune_context.cc
python/tvm/auto_scheduler/search_task.py
python/tvm/auto_scheduler/workload_registry.py

Part 10. Schedule Rules

@spectrometerHBH @MasterJH5574 @jinhongyii @Hzfengsy

include/tvm/meta_schedule/schedule_rule.h
python/tvm/meta_schedule/schedule_rule/init.py
python/tvm/meta_schedule/schedule_rule/auto_inline.py
python/tvm/meta_schedule/schedule_rule/multi_level_tiling.py
python/tvm/meta_schedule/schedule_rule/parallel_vectorize_unroll.py
python/tvm/meta_schedule/schedule_rule/random_compute_location.py
python/tvm/meta_schedule/schedule_rule/schedule_rule.py
src/meta_schedule/schedule_rule/auto_inline.cc
src/meta_schedule/schedule_rule/multi_level_tiling.cc
src/meta_schedule/schedule_rule/parallel_vectorize_unroll.cc
src/meta_schedule/schedule_rule/random_compute_location.cc
src/meta_schedule/schedule_rule/schedule_rule.cc
tests/python/unittest/test_meta_schedule_schedule_rule.py
tests/python/unittest/test_meta_schedule_schedule_rule_auto_inline.py
tests/python/unittest/test_meta_schedule_schedule_rule_multi_level_tiling.py
tests/python/unittest/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py
tests/python/unittest/test_meta_schedule_schedule_rule_random_compute_location.py

Part 11. Post-Processors

@spectrometerHBH @MasterJH5574 @jinhongyii @Hzfengsy

include/tvm/meta_schedule/postproc.h
python/tvm/meta_schedule/postproc/init.py
python/tvm/meta_schedule/postproc/disallow_dynamic_loop.py
python/tvm/meta_schedule/postproc/postproc.py
python/tvm/meta_schedule/postproc/rewrite_cooperative_fetch.py
python/tvm/meta_schedule/postproc/rewrite_parallel_vectorize_unroll.py
python/tvm/meta_schedule/postproc/rewrite_reduction_block.py
python/tvm/meta_schedule/postproc/rewrite_tensor_core.py
python/tvm/meta_schedule/postproc/rewrite_unbound_block.py
python/tvm/meta_schedule/postproc/verify_gpu_code.py
src/meta_schedule/postproc/disallow_dynamic_loop.cc
src/meta_schedule/postproc/postproc.cc
src/meta_schedule/postproc/rewrite_cooperative_fetch.cc
src/meta_schedule/postproc/rewrite_parallel_vectorize_unroll.cc
src/meta_schedule/postproc/rewrite_reduction_block.cc
src/meta_schedule/postproc/rewrite_tensor_core.cc
src/meta_schedule/postproc/rewrite_unbound_block.cc
src/meta_schedule/postproc/verify_gpu_code.cc
tests/python/unittest/test_meta_schedule_postproc.py
tests/python/unittest/test_meta_schedule_postproc_disallow_dynamic_loop.py
tests/python/unittest/test_meta_schedule_postproc_rewrite_cooperative_fetch.py
tests/python/unittest/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py
tests/python/unittest/test_meta_schedule_postproc_rewrite_reduction_block.py
tests/python/unittest/test_meta_schedule_postproc_rewrite_tensor_core.py
tests/python/unittest/test_meta_schedule_postproc_rewrite_unbound_block.py
tests/python/unittest/test_meta_schedule_postproc_verify_gpu_code.py

Part 12. Mutator

@spectrometerHBH @MasterJH5574 @jinhongyii @Hzfengsy

include/tvm/meta_schedule/mutator.h
python/tvm/meta_schedule/mutator/init.py
python/tvm/meta_schedule/mutator/mutate_compute_location.py
python/tvm/meta_schedule/mutator/mutate_parallel.py
python/tvm/meta_schedule/mutator/mutate_tile_size.py
python/tvm/meta_schedule/mutator/mutate_unroll.py
python/tvm/meta_schedule/mutator/mutator.py
src/meta_schedule/mutator/mutate_compute_location.cc
src/meta_schedule/mutator/mutate_parallel.cc
src/meta_schedule/mutator/mutate_tile_size.cc
src/meta_schedule/mutator/mutate_unroll.cc
src/meta_schedule/mutator/mutator.cc
tests/python/unittest/test_meta_schedule_mutator.py
tests/python/unittest/test_meta_schedule_mutator_mutate_compute_location.py
tests/python/unittest/test_meta_schedule_mutator_mutate_parallel.py
tests/python/unittest/test_meta_schedule_mutator_mutate_tile_size.py
tests/python/unittest/test_meta_schedule_mutator_mutate_unroll.py

Part 13. Build, TE, TIR, TVMScript

@vinx13

include/tvm/tir/transform.h
include/tvm/tir/function.h
include/tvm/tir/stmt.h
include/tvm/tir/stmt_functor.h
python/tvm/tir/transform/transform.py
src/tir/transforms/convert_blocks_to_opaque.cc
src/tir/transforms/inject_software_pipeline.cc
src/tir/transforms/lower_cross_thread_reduction.cc
src/tir/transforms/unify_thread_binding.cc
python/tvm/driver/build_module.py
src/driver/driver_api.cc
python/tvm/relay/build_module.py
python/tvm/tir/init.py
python/tvm/tir/function.py
python/tvm/tir/schedule/init.py
python/tvm/tir/schedule/analysis.py
python/tvm/tir/schedule/schedule.py
python/tvm/script/tir/scope_handler.py
python/tvm/script/tir/special_stmt.py
src/printer/text_printer.h
src/te/operation/create_primfunc.cc
src/tir/analysis/verify_gpu_code.cc
src/tir/ir/function.cc
src/tir/ir/stmt_functor.cc
tests/python/unittest/test_te_create_primfunc.py

Part 14. User-facing API

@vinx13

python/tvm/meta_schedule/tune.py
tests/python/unittest/test_meta_schedule_tune_relay.py
tests/python/unittest/test_meta_schedule_tune_te.py
tests/python/unittest/test_meta_schedule_tune_tir.py

Part 15. Utils & Misc

@vinx13

include/tvm/support/random_engine.h
src/meta_schedule/utils.h
src/runtime/library_module.h
src/support/array.h
src/support/nd_int_set.h
src/target/tag.cc
src/target/target_kind.cc
python/tvm/meta_schedule/utils.py
gallery/how_to/extend_tvm/bring_your_own_datatypes.py

Part 16. Testing

python/tvm/meta_schedule/testing/init.py
python/tvm/meta_schedule/testing/byoc_trt.py
python/tvm/meta_schedule/testing/relay_workload.py
python/tvm/meta_schedule/testing/run_ansor.sh
python/tvm/meta_schedule/testing/run_meta_schedule.sh
python/tvm/meta_schedule/testing/schedule_rule.py
python/tvm/meta_schedule/testing/space_generation.py
python/tvm/meta_schedule/testing/te_workload.py
python/tvm/meta_schedule/testing/test_ansor_cpu.py
python/tvm/meta_schedule/testing/test_tune_te_cpu.py
python/tvm/meta_schedule/testing/tir_tensor_intrin.py

Part 17. Performance testing

tests/python/meta_schedule/run_ansor_cpu.sh
tests/python/meta_schedule/run_ansor_cuda.sh
tests/python/meta_schedule/run_meta_schedule_cpu.sh
tests/python/meta_schedule/run_meta_schedule_cuda.sh
tests/python/meta_schedule/test_ansor.py
tests/python/meta_schedule/test_debug_ansor.py
tests/python/meta_schedule/test_debug_meta_schedule.py
tests/python/meta_schedule/test_meta_schedule.py

Part 18. Others

tests/python/unittest/test_meta_schedule_byoc.py
tests/python/unittest/test_meta_schedule_sketch_cpu.py
tests/python/unittest/test_meta_schedule_sketch_cuda.py
tests/python/unittest/test_meta_schedule_task_extraction.py

@zxybazh correct. These are just typos fixed by you