From 80cea6acb66dafb0d2d21f73cbae5105b6880ba2 Mon Sep 17 00:00:00 2001 From: Siyuan Feng Date: Mon, 13 Nov 2023 13:35:13 +0800 Subject: [PATCH] [CI] Refactor unittest folder The current unittest folder is too large and contains too many files and too many components. This PR refactors the unittest folder by moving the files to the corresponding folders. --- .github/workflows/main.yml | 6 ++-- conftest.py | 2 +- docs/contribute/pull_request.rst | 2 +- python/tvm/testing/plugin.py | 2 +- src/auto_scheduler/transform_step.cc | 2 +- src/runtime/hexagon/profiler/README.md | 2 +- tests/lint/pylint.sh | 4 +-- .../test_arith_canonical_simplify.py | 0 .../test_arith_const_int_bound.py | 0 .../test_arith_deduce_bound.py | 0 .../test_arith_detect_clip_bound.py | 0 .../test_arith_detect_cse.py | 0 .../test_arith_detect_linear_equation.py | 0 .../test_arith_domain_touched.py | 0 .../{unittest => arith}/test_arith_intset.py | 0 .../test_arith_iter_affine_map.py | 0 .../test_arith_modular_set.py | 0 .../test_arith_narrow_predicate_expression.py | 0 .../test_arith_rewrite_simplify.py | 0 .../test_arith_simplify.py | 0 .../test_arith_solve_linear_equations.py | 0 .../test_arith_solve_linear_inequality.py | 0 .../test_auto_scheduler_compute_dag.py | 0 .../test_auto_scheduler_cost_model.py | 0 ...test_auto_scheduler_evolutionary_search.py | 0 .../test_auto_scheduler_feature.py | 0 .../test_auto_scheduler_layout_rewrite.py | 0 .../test_auto_scheduler_loop_state.py | 0 .../test_auto_scheduler_measure.py | 0 .../test_auto_scheduler_search_policy.py | 0 .../test_auto_scheduler_search_task.py | 0 .../test_auto_scheduler_sketch_generation.py | 0 .../test_auto_scheduler_task_scheduler.py | 0 .../test_autotvm_database.py | 0 .../test_autotvm_dispatch_context.py | 0 .../test_autotvm_droplet_tuner.py | 0 .../test_autotvm_feature.py | 0 .../test_autotvm_flop_calculator.py | 0 .../test_autotvm_ga_tuner.py | 0 .../test_autotvm_graph_tuner_core.py | 0 .../test_autotvm_graph_tuner_utils.py | 0 .../test_autotvm_index_tuner.py | 0 .../test_autotvm_measure.py | 0 .../test_autotvm_record.py | 0 .../test_autotvm_space.py | 0 .../test_autotvm_xgboost_model.py | 0 .../test_gpu_codegen_allreduce.py} | 0 .../test_inject_ptx_ldg32.py | 0 .../test_target_codegen_aarch64.py | 0 .../test_target_codegen_arm.py | 0 .../test_target_codegen_blob.py | 0 .../test_target_codegen_bool.py | 0 .../test_target_codegen_c_host.py | 0 .../test_target_codegen_cross_llvm.py | 0 .../test_target_codegen_cuda.py | 0 .../test_target_codegen_device.py | 0 .../test_target_codegen_extern.py | 0 .../test_target_codegen_hexagon.py | 0 .../test_target_codegen_llvm.py | 0 .../test_target_codegen_metal.py | 0 .../test_target_codegen_opencl.py | 0 .../test_target_codegen_rocm.py | 0 .../test_target_codegen_static_init.py | 0 .../test_target_codegen_vm_basic.py | 0 .../test_target_codegen_vulkan.py | 0 .../test_target_codegen_x86.py | 0 .../test_target_texture_codegen_opencl.py | 0 tests/python/conftest.py | 10 +++---- .../test_container_structural_equal.py | 0 .../{unittest => ir}/test_datatype_nv_fp8.py | 0 .../python/{unittest => ir}/test_ir_attrs.py | 0 .../{unittest => ir}/test_ir_container.py | 0 tests/python/{unittest => ir}/test_ir_type.py | 0 .../{unittest => ir}/test_node_reflection.py | 0 .../{unittest => ir}/test_object_path.py | 0 .../test_roundtrip_runtime_module.py | 0 .../test_meta_schedule_arg_info.py | 0 .../test_meta_schedule_builder.py | 0 .../test_meta_schedule_byoc_tensorrt.py | 0 .../test_meta_schedule_cost_model.py | 0 .../test_meta_schedule_cpu_dot_product.py | 0 .../test_meta_schedule_database.py | 0 .../test_meta_schedule_feature_extractor.py | 0 ...ule_feature_extractor_per_store_feature.py | 0 .../test_meta_schedule_measure_callback.py | 0 ...schedule_mma_m16n8k8_auto_tensorization.py | 0 .../test_meta_schedule_multi_anchor.py | 0 ...chedule_mutator_mutate_compute_location.py | 0 ...t_meta_schedule_mutator_mutate_parallel.py | 0 ..._schedule_mutator_mutate_thread_binding.py | 0 ..._meta_schedule_mutator_mutate_tile_size.py | 0 ...est_meta_schedule_mutator_mutate_unroll.py | 0 .../test_meta_schedule_post_order_apply.py | 0 ...ostproc_disallow_async_strided_mem_copy.py | 0 ...schedule_postproc_disallow_dynamic_loop.py | 0 ...dule_postproc_rewrite_cooperative_fetch.py | 0 ...t_meta_schedule_postproc_rewrite_layout.py | 0 ...tproc_rewrite_parallel_vectorize_unroll.py | 0 ...hedule_postproc_rewrite_reduction_block.py | 0 ...eta_schedule_postproc_rewrite_tensorize.py | 0 ...schedule_postproc_rewrite_unbound_block.py | 0 ..._meta_schedule_postproc_verify_gpu_code.py | 0 ...eta_schedule_postproc_verify_vtcm_limit.py | 0 .../test_meta_schedule_profiler.py | 0 .../test_meta_schedule_relay_integration.py | 0 .../test_meta_schedule_relay_tir_compute.py | 0 .../test_meta_schedule_runner.py | 0 ...schedule_schedule_cuda_layout_transform.py | 0 ...meta_schedule_schedule_rule_add_rfactor.py | 0 ...chedule_schedule_rule_apply_custom_rule.py | 0 ...t_meta_schedule_schedule_rule_auto_bind.py | 0 ...meta_schedule_schedule_rule_auto_inline.py | 0 ...le_schedule_rule_cross_thread_reduction.py | 0 .../test_meta_schedule_schedule_rule_mlt.py | 0 ..._meta_schedule_schedule_rule_mlt_intrin.py | 0 ...test_meta_schedule_schedule_rule_mlt_tc.py | 0 ...schedule_rule_parallel_vectorize_unroll.py | 0 ...e_schedule_rule_random_compute_location.py | 0 .../test_meta_schedule_search_strategy.py | 0 .../test_meta_schedule_space_cpu.py | 0 .../test_meta_schedule_space_cpu_winograd.py | 0 .../test_meta_schedule_space_cuda.py | 0 .../test_meta_schedule_space_cuda_async.py | 0 ...pace_cuda_async_multiple_initialization.py | 0 .../test_meta_schedule_space_cuda_winograd.py | 0 .../test_meta_schedule_space_generator.py | 0 .../test_meta_schedule_task_scheduler.py | 0 .../test_meta_schedule_trace_apply.py | 0 .../test_meta_schedule_tune_context.py | 0 .../test_meta_schedule_tune_tir.py | 0 .../test_aot_legalize_packed_call.py | 0 tests/python/{unittest => micro}/test_crt.py | 0 .../test_micro_model_library_format.py | 0 .../test_micro_ms_tuning.py | 0 .../test_micro_project_api.py | 0 .../test_micro_transport.py | 0 .../test_custom_datatypes.py | 0 .../{unittest => relay}/test_link_params.py | 0 .../test_pass_div_to_mul.py} | 0 .../{unittest => relay}/test_roofline.py | 0 .../test_set_input_zero_copy.py | 0 .../test_evaluator_with_preproc.py | 0 .../{unittest => runtime}/test_rpc_base.py | 0 .../test_runtime_container.py | 0 .../test_runtime_dlpack.py | 0 .../test_runtime_error.py | 0 .../test_runtime_extension.py | 0 .../test_runtime_graph.py | 0 .../test_runtime_graph_cuda_graph.py | 0 .../test_runtime_graph_debug.py | 0 .../test_runtime_heterogeneous.py | 0 .../test_runtime_measure.py | 0 .../test_runtime_module_based_interface.py | 0 .../test_runtime_module_export.py | 0 .../test_runtime_module_load.py | 0 .../test_runtime_module_property.py | 0 .../test_runtime_profiling.py | 0 .../{unittest => runtime}/test_runtime_rpc.py | 0 .../test_runtime_trace.py | 0 .../test_runtime_vm_profiler.py | 0 .../{unittest => target}/test_device.py | 0 .../test_target_parser_mprofile.py | 0 .../test_target_target.py | 0 .../{unittest => te}/test_te_autodiff.py | 0 .../{unittest => te}/test_te_build_lower.py | 0 .../test_te_create_primfunc.py | 0 .../python/{unittest => te}/test_te_group.py | 0 .../{unittest => te}/test_te_hybrid_script.py | 0 .../{unittest => te}/test_te_schedule.py | 0 .../test_te_schedule_bound_inference.py | 0 ...test_te_schedule_bound_inference_tiling.py | 0 .../test_te_schedule_graph.py | 0 .../{unittest => te}/test_te_schedule_lstm.py | 0 .../{unittest => te}/test_te_schedule_ops.py | 0 ...hedule_postproc_rewrite_for_tensor_core.py | 0 .../test_te_schedule_tensor_core.py | 0 .../test_te_schedule_tensorize.py | 0 tests/python/{unittest => te}/test_te_tag.py | 0 .../python/{unittest => te}/test_te_tensor.py | 0 .../test_te_tensor_overload.py | 0 .../test_te_transform_layout.py | 0 .../test_te_verify_compute.py | 0 .../test_filter_untracked.py | 0 .../test_format_si_prefix.py | 0 .../test_gen_requirements.py | 0 .../{unittest => testing}/test_testing.py | 0 .../test_tvm_testing_before_after.py | 0 .../test_tvm_testing_features.py | 0 .../test_type_annotation_checker.py | 0 ...tir_analysis_calculate_allocated_memory.py | 0 .../test_tir_analysis_calculate_workspace.py | 0 ...t_tir_analysis_detect_buffer_access_lca.py | 0 ...t_tir_analysis_device_constraint_utils.py} | 0 .../test_tir_analysis_estimate_tir_flops.py | 0 .../test_tir_analysis_expr_deep_equal.py | 0 ...st_tir_analysis_get_block_access_region.py | 0 .../test_tir_analysis_identify_memcpy.py | 0 .../test_tir_analysis_oob.py | 0 .../test_tir_analysis_stmt_finding.py | 0 .../test_tir_analysis_usedef.py | 0 .../test_tir_analysis_verify_gpu_code.py | 0 .../test_tir_analysis_verify_memory.py | 0 .../test_tir_analysis_verify_ssa.py | 0 .../test_tir_analysis_verify_well_formed.py | 0 .../{tir => tir-base}/test_debug_info.py | 0 .../test_lower_build.py | 0 .../{unittest => tir-base}/test_slice_tir.py | 0 .../{unittest => tir-base}/test_tir_base.py | 0 .../test_tir_block_dependence_info.py | 0 .../{unittest => tir-base}/test_tir_buffer.py | 0 .../test_tir_constructor.py | 0 .../test_tir_data_layout.py | 0 .../test_tir_host_func.py | 0 .../test_tir_imm_values.py | 0 .../test_tir_index_map.py | 0 .../{unittest => tir-base}/test_tir_intrin.py | 0 .../test_tir_ir_builder.py | 0 .../{unittest => tir-base}/test_tir_nodes.py | 0 .../test_tir_op_types.py | 0 .../{unittest => tir-base}/test_tir_ops.py | 0 .../test_tir_ptx_cp_async.py | 0 .../test_tir_ptx_ldmatrix.py | 0 .../test_tir_ptx_mma.py | 0 .../test_tir_ptx_mma_sp.py | 0 .../test_tir_renew_defs.py | 0 .../test_tir_specialize.py | 0 .../test_tir_stmt_functor_ir_transform.py | 0 .../test_tir_stmt_functor_substitute.py | 0 .../test_tir_structural_equal_hash.py | 0 .../test_tir_te_extern_primfunc.py | 0 .../test_tir_texture_scope.py | 0 .../test_tir_unsafe_hide_buffer_access.py | 0 .../test_tir_schedule_analysis.py | 0 .../test_tir_schedule_block_scope.py | 0 .../test_tir_schedule_blockize.py | 0 .../test_tir_schedule_cache_index.py | 0 .../test_tir_schedule_cache_read_write.py | 0 .../test_tir_schedule_compute_at.py | 0 .../test_tir_schedule_compute_inline.py | 0 .../test_tir_schedule_decompose_padding.py | 0 .../test_tir_schedule_error.py | 0 .../test_tir_schedule_for_kind.py | 0 .../test_tir_schedule_instruction.py | 0 .../test_tir_schedule_merge.py | 0 .../test_tir_schedule_pad_einsum.py | 0 .../test_tir_schedule_read_write_at.py | 0 .../test_tir_schedule_reduction.py | 0 .../test_tir_schedule_reindex.py | 0 .../test_tir_schedule_reorder.py | 0 ...st_tir_schedule_reorder_block_iter_var.py} | 0 .../test_tir_schedule_rfactor.py | 0 .../test_tir_schedule_rolling_buffer.py | 0 .../test_tir_schedule_sampling.py | 0 .../test_tir_schedule_set_axis_separator.py | 0 .../test_tir_schedule_set_dtype.py | 0 .../test_tir_schedule_set_scope.py | 0 .../test_tir_schedule_split_fuse.py | 0 .../test_tir_schedule_state.py | 0 .../test_tir_schedule_state_cached_flags.py | 0 .../test_tir_schedule_storage_align.py | 0 .../test_tir_schedule_tensorize.py | 0 ...schedule_tensorize_ldmatrix_mma_numeric.py | 0 ...est_tir_schedule_tensorize_mfma_numeric.py | 0 .../test_tir_schedule_trace.py | 0 .../test_tir_schedule_transform.py | 0 .../test_tir_schedule_transform_layout.py | 0 .../test_tir_schedule_utilities.py | 0 ...t_tir_transform_annotate_device_regions.py | 0 .../test_tir_transform_bf16_legalize.py | 0 ...test_tir_transform_combine_context_call.py | 0 .../test_tir_transform_common_subexpr_elim.py | 0 ...est_tir_transform_compact_buffer_region.py | 0 ..._tir_transform_convert_blocks_to_opaque.py | 0 ..._tir_transform_convert_for_loops_serial.py | 0 .../test_tir_transform_convert_ssa.py | 0 .../test_tir_transform_coproc_sync.py | 0 ...est_tir_transform_decorate_device_scope.py | 0 ...test_tir_transform_device_kernel_launch.py | 0 .../test_tir_transform_extract_constants.py | 0 .../test_tir_transform_flatten_buffer.py | 0 .../test_tir_transform_fp8_legalize.py | 0 .../test_tir_transform_helpers.py | 0 .../test_tir_transform_hoist_expression.py | 0 .../test_tir_transform_hoist_if.py | 0 .../test_tir_transform_inject_copy_intrin.py | 0 ...test_tir_transform_inject_double_buffer.py | 0 ...st_tir_transform_inject_permuted_layout.py | 0 ...est_tir_transform_inject_ptx_async_copy.py | 0 ...est_tir_transform_inject_rolling_buffer.py | 0 ..._tir_transform_inject_software_pipeline.py | 0 ...est_tir_transform_inject_virtual_thread.py | 0 ...tir_transform_instrument_bound_checkers.py | 0 .../test_tir_transform_lift_attr_scope.py | 0 .../test_tir_transform_lift_thread_binding.py | 0 .../test_tir_transform_loop_partition.py | 0 ..._transform_lower_cross_thread_reduction.py | 0 ...nsform_lower_device_storage_access_info.py | 0 .../test_tir_transform_lower_init_block.py | 0 .../test_tir_transform_lower_intrin.py | 0 .../test_tir_transform_lower_match_buffer.py} | 0 .../test_tir_transform_lower_opaque_block.py | 0 ...t_tir_transform_lower_thread_all_reduce.py | 0 .../test_tir_transform_lower_tvm_builtin.py | 0 .../test_tir_transform_lower_warp_memory.py | 0 .../test_tir_transform_make_packed_api.py | 0 .../test_tir_transform_make_unpacked_api.py | 0 ...form_manifest_shared_memory_local_stage.py | 0 ...tir_transform_memhammer_lower_auto_copy.py | 0 ...merge_dynamic_shared_memory_allocations.py | 0 .../test_tir_transform_narrow_datatype.py | 0 ..._plan_update_buffer_allocation_location.py | 0 ...ir_transform_pointer_value_type_rewrite.py | 0 .../test_tir_transform_prim_func_pass.py | 0 .../test_tir_transform_profiling_instr.py | 0 ...rm_reduce_branching_through_overcompute.py | 0 .../test_tir_transform_remove_assume.py | 0 .../test_tir_transform_remove_no_op.py | 0 .../test_tir_transform_remove_undef.py | 0 ...form_remove_weight_layout_rewrite_block.py | 0 ...tir_transform_renormalize_split_pattern.py | 0 ...est_tir_transform_rewrite_unsafe_select.py | 0 .../test_tir_transform_simplify.py | 0 .../test_tir_transform_split_host_device.py | 0 .../test_tir_transform_storage_flatten.py | 0 .../test_tir_transform_storage_rewrite.py | 0 .../test_tir_transform_thread_sync.py | 0 ...test_tir_transform_unify_thread_binding.py | 0 .../test_tir_transform_unroll_loop.py | 0 .../test_tir_transform_vectorize.py | 0 .../test_tir_usmp_algo.py | 0 .../test_tir_usmp_algo_hill_climb.py | 0 ...st_tir_usmp_analysis_extract_bufferinfo.py | 0 ...orm_convert_pool_allocations_to_offsets.py | 0 ..._tir_usmp_transform_create_io_allocates.py | 0 .../test_tir_usmp_utils.py | 0 tests/python/topi/{python => }/common.py | 0 .../topi/{python => }/test_fifo_buffer.py | 0 .../topi/{python => }/test_topi_argwhere.py | 0 .../topi/{python => }/test_topi_basic.py | 0 .../{python => }/test_topi_batch_matmul.py | 0 .../test_topi_batch_matmul_tensorcore.py | 0 .../topi/{python => }/test_topi_batch_norm.py | 0 .../test_topi_batch_to_space_nd.py | 0 .../test_topi_bitserial_conv2d.py | 0 .../test_topi_bitserial_conv2d_rasp.py | 0 .../{python => }/test_topi_bitserial_dense.py | 0 .../python/topi/{python => }/test_topi_bnn.py | 0 .../topi/{python => }/test_topi_broadcast.py | 0 .../topi/{python => }/test_topi_clip.py | 0 .../topi/{python => }/test_topi_conv1d.py | 0 .../test_topi_conv1d_transpose_ncw.py | 0 .../{python => }/test_topi_conv2d_NCHWc.py | 0 .../{python => }/test_topi_conv2d_hwcn.py | 0 .../test_topi_conv2d_hwnc_tensorcore.py | 0 .../{python => }/test_topi_conv2d_int8.py | 0 .../{python => }/test_topi_conv2d_nchw.py | 0 .../{python => }/test_topi_conv2d_nhwc.py | 0 .../test_topi_conv2d_nhwc_pack_int8.py | 0 .../test_topi_conv2d_nhwc_tensorcore.py | 0 .../test_topi_conv2d_nhwc_winograd.py | 0 .../test_topi_conv2d_tensordot_opts.py | 0 .../test_topi_conv2d_transpose_nchw.py | 0 .../{python => }/test_topi_conv2d_winograd.py | 0 .../{python => }/test_topi_conv3d_ncdhw.py | 0 .../{python => }/test_topi_conv3d_ndhwc.py | 0 .../test_topi_conv3d_ndhwc_tensorcore.py | 0 .../test_topi_conv3d_transpose_ncdhw.py | 0 .../{python => }/test_topi_conv3d_winograd.py | 0 .../{python => }/test_topi_correlation.py | 0 .../test_topi_deformable_conv2d.py | 0 .../topi/{python => }/test_topi_dense.py | 0 .../test_topi_dense_tensorcore.py | 0 .../{python => }/test_topi_depth_to_space.py | 0 .../test_topi_depthwise_conv2d.py | 0 .../test_topi_depthwise_conv2d_back_input.py | 0 .../test_topi_depthwise_conv2d_back_weight.py | 0 .../python/topi/{python => }/test_topi_dft.py | 0 .../topi/{python => }/test_topi_dilate.py | 0 .../topi/{python => }/test_topi_einsum.py | 0 .../{python => }/test_topi_group_conv2d.py | 0 .../test_topi_group_conv2d_NCHWc_int8.py | 0 .../test_topi_group_conv2d_transpose.py | 0 .../topi/{python => }/test_topi_group_norm.py | 0 .../topi/{python => }/test_topi_image.py | 0 .../{python => }/test_topi_instance_norm.py | 0 .../topi/{python => }/test_topi_layer_norm.py | 0 .../topi/{python => }/test_topi_loss.py | 0 .../python/topi/{python => }/test_topi_lrn.py | 0 .../topi/{python => }/test_topi_lstm.py | 0 .../topi/{python => }/test_topi_math.py | 0 .../topi/{python => }/test_topi_matmul.py | 0 .../topi/{python => }/test_topi_pooling.py | 0 .../topi/{python => }/test_topi_prng.py | 0 .../python/topi/{python => }/test_topi_qnn.py | 0 .../topi/{python => }/test_topi_reduce.py | 0 .../topi/{python => }/test_topi_relu.py | 0 .../topi/{python => }/test_topi_reorg.py | 0 .../topi/{python => }/test_topi_rms_norm.py | 0 .../topi/{python => }/test_topi_scan.py | 0 .../topi/{python => }/test_topi_scatter.py | 0 .../{python => }/test_topi_searchsorted.py | 0 .../topi/{python => }/test_topi_softmax.py | 0 .../topi/{python => }/test_topi_sort.py | 0 .../test_topi_space_to_batch_nd.py | 0 .../{python => }/test_topi_space_to_depth.py | 0 .../topi/{python => }/test_topi_sparse.py | 0 .../topi/{python => }/test_topi_tensor.py | 0 .../topi/{python => }/test_topi_transform.py | 0 .../topi/{python => }/test_topi_unique.py | 0 .../topi/{python => }/test_topi_upsampling.py | 0 .../topi/{python => }/test_topi_util.py | 0 .../topi/{python => }/test_topi_vision.py | 0 .../test_tvmscript_complete.py | 0 .../test_tvmscript_error_report.py | 0 .../test_tvmscript_ir_builder_base.py | 0 .../test_tvmscript_ir_builder_irmodule.py | 0 .../test_tvmscript_ir_builder_tir.py | 0 .../test_tvmscript_meta_programming.py | 0 .../test_tvmscript_ops.py | 0 .../test_tvmscript_parser_evaluator.py | 0 .../test_tvmscript_parser_ir.py | 0 .../test_tvmscript_parser_source.py | 0 .../test_tvmscript_parser_tir.py | 0 .../test_tvmscript_printer_annotation.py | 0 .../test_tvmscript_printer_doc.py | 0 .../test_tvmscript_printer_highlight.py | 0 .../test_tvmscript_printer_ir.py | 0 .../test_tvmscript_printer_metadata.py | 0 ...st_tvmscript_printer_python_doc_printer.py | 0 ...test_tvmscript_printer_structural_equal.py | 0 .../test_tvmscript_printer_tir.py | 0 .../test_tvmscript_printer_underlining.py | 0 .../test_tvmscript_regression.py | 0 .../test_tvmscript_roundtrip.py | 0 .../test_tvmscript_syntax_sugar.py | 0 .../test_tvmscript_type.py | 0 tests/scripts/task_mypy.sh | 2 +- tests/scripts/task_python_unittest.sh | 28 +++++++++++++++++-- tests/scripts/task_python_unittest_gpuonly.sh | 6 ++-- 439 files changed, 45 insertions(+), 21 deletions(-) rename tests/python/{unittest => arith}/test_arith_canonical_simplify.py (100%) rename tests/python/{unittest => arith}/test_arith_const_int_bound.py (100%) rename tests/python/{unittest => arith}/test_arith_deduce_bound.py (100%) rename tests/python/{unittest => arith}/test_arith_detect_clip_bound.py (100%) rename tests/python/{unittest => arith}/test_arith_detect_cse.py (100%) rename tests/python/{unittest => arith}/test_arith_detect_linear_equation.py (100%) rename tests/python/{unittest => arith}/test_arith_domain_touched.py (100%) rename tests/python/{unittest => arith}/test_arith_intset.py (100%) rename tests/python/{unittest => arith}/test_arith_iter_affine_map.py (100%) rename tests/python/{unittest => arith}/test_arith_modular_set.py (100%) rename tests/python/{unittest => arith}/test_arith_narrow_predicate_expression.py (100%) rename tests/python/{unittest => arith}/test_arith_rewrite_simplify.py (100%) rename tests/python/{unittest => arith}/test_arith_simplify.py (100%) rename tests/python/{unittest => arith}/test_arith_solve_linear_equations.py (100%) rename tests/python/{unittest => arith}/test_arith_solve_linear_inequality.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_compute_dag.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_cost_model.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_evolutionary_search.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_feature.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_layout_rewrite.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_loop_state.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_measure.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_search_policy.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_search_task.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_sketch_generation.py (100%) rename tests/python/{unittest => auto_scheduler}/test_auto_scheduler_task_scheduler.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_database.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_dispatch_context.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_droplet_tuner.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_feature.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_flop_calculator.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_ga_tuner.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_graph_tuner_core.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_graph_tuner_utils.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_index_tuner.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_measure.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_record.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_space.py (100%) rename tests/python/{unittest => autotvm}/test_autotvm_xgboost_model.py (100%) rename tests/python/{unittest/test_allreduce.py => codegen/test_gpu_codegen_allreduce.py} (100%) rename tests/python/{unittest => codegen}/test_inject_ptx_ldg32.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_aarch64.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_arm.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_blob.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_bool.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_c_host.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_cross_llvm.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_cuda.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_device.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_extern.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_hexagon.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_llvm.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_metal.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_opencl.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_rocm.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_static_init.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_vm_basic.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_vulkan.py (100%) rename tests/python/{unittest => codegen}/test_target_codegen_x86.py (100%) rename tests/python/{unittest => codegen}/test_target_texture_codegen_opencl.py (100%) rename tests/python/{unittest => ir}/test_container_structural_equal.py (100%) rename tests/python/{unittest => ir}/test_datatype_nv_fp8.py (100%) rename tests/python/{unittest => ir}/test_ir_attrs.py (100%) rename tests/python/{unittest => ir}/test_ir_container.py (100%) rename tests/python/{unittest => ir}/test_ir_type.py (100%) rename tests/python/{unittest => ir}/test_node_reflection.py (100%) rename tests/python/{unittest => ir}/test_object_path.py (100%) rename tests/python/{unittest => ir}/test_roundtrip_runtime_module.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_arg_info.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_builder.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_byoc_tensorrt.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_cost_model.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_cpu_dot_product.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_database.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_feature_extractor.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_feature_extractor_per_store_feature.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_measure_callback.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mma_m16n8k8_auto_tensorization.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_multi_anchor.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mutator_mutate_compute_location.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mutator_mutate_parallel.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mutator_mutate_thread_binding.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mutator_mutate_tile_size.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_mutator_mutate_unroll.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_post_order_apply.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_disallow_async_strided_mem_copy.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_disallow_dynamic_loop.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_cooperative_fetch.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_layout.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_reduction_block.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_tensorize.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_rewrite_unbound_block.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_verify_gpu_code.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_postproc_verify_vtcm_limit.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_profiler.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_relay_integration.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_relay_tir_compute.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_runner.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_cuda_layout_transform.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_add_rfactor.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_apply_custom_rule.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_auto_bind.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_auto_inline.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_cross_thread_reduction.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_mlt.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_mlt_intrin.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_mlt_tc.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_schedule_rule_random_compute_location.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_search_strategy.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cpu.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cpu_winograd.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cuda.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cuda_async.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cuda_async_multiple_initialization.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_cuda_winograd.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_space_generator.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_task_scheduler.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_trace_apply.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_tune_context.py (100%) rename tests/python/{unittest => meta_schedule}/test_meta_schedule_tune_tir.py (100%) rename tests/python/{unittest => micro}/test_aot_legalize_packed_call.py (100%) rename tests/python/{unittest => micro}/test_crt.py (100%) rename tests/python/{unittest => micro}/test_micro_model_library_format.py (100%) rename tests/python/{unittest => micro}/test_micro_ms_tuning.py (100%) rename tests/python/{unittest => micro}/test_micro_project_api.py (100%) rename tests/python/{unittest => micro}/test_micro_transport.py (100%) rename tests/python/{unittest => relay}/test_custom_datatypes.py (100%) rename tests/python/{unittest => relay}/test_link_params.py (100%) rename tests/python/{unittest/test_div_to_mul.py => relay/test_pass_div_to_mul.py} (100%) rename tests/python/{unittest => relay}/test_roofline.py (100%) rename tests/python/{unittest => relay}/test_set_input_zero_copy.py (100%) rename tests/python/{unittest => runtime}/test_evaluator_with_preproc.py (100%) rename tests/python/{unittest => runtime}/test_rpc_base.py (100%) rename tests/python/{unittest => runtime}/test_runtime_container.py (100%) rename tests/python/{unittest => runtime}/test_runtime_dlpack.py (100%) rename tests/python/{unittest => runtime}/test_runtime_error.py (100%) rename tests/python/{unittest => runtime}/test_runtime_extension.py (100%) rename tests/python/{unittest => runtime}/test_runtime_graph.py (100%) rename tests/python/{unittest => runtime}/test_runtime_graph_cuda_graph.py (100%) rename tests/python/{unittest => runtime}/test_runtime_graph_debug.py (100%) rename tests/python/{unittest => runtime}/test_runtime_heterogeneous.py (100%) rename tests/python/{unittest => runtime}/test_runtime_measure.py (100%) rename tests/python/{unittest => runtime}/test_runtime_module_based_interface.py (100%) rename tests/python/{unittest => runtime}/test_runtime_module_export.py (100%) rename tests/python/{unittest => runtime}/test_runtime_module_load.py (100%) rename tests/python/{unittest => runtime}/test_runtime_module_property.py (100%) rename tests/python/{unittest => runtime}/test_runtime_profiling.py (100%) rename tests/python/{unittest => runtime}/test_runtime_rpc.py (100%) rename tests/python/{unittest => runtime}/test_runtime_trace.py (100%) rename tests/python/{unittest => runtime}/test_runtime_vm_profiler.py (100%) rename tests/python/{unittest => target}/test_device.py (100%) rename tests/python/{unittest => target}/test_target_parser_mprofile.py (100%) rename tests/python/{unittest => target}/test_target_target.py (100%) rename tests/python/{unittest => te}/test_te_autodiff.py (100%) rename tests/python/{unittest => te}/test_te_build_lower.py (100%) rename tests/python/{unittest => te}/test_te_create_primfunc.py (100%) rename tests/python/{unittest => te}/test_te_group.py (100%) rename tests/python/{unittest => te}/test_te_hybrid_script.py (100%) rename tests/python/{unittest => te}/test_te_schedule.py (100%) rename tests/python/{unittest => te}/test_te_schedule_bound_inference.py (100%) rename tests/python/{unittest => te}/test_te_schedule_bound_inference_tiling.py (100%) rename tests/python/{unittest => te}/test_te_schedule_graph.py (100%) rename tests/python/{unittest => te}/test_te_schedule_lstm.py (100%) rename tests/python/{unittest => te}/test_te_schedule_ops.py (100%) rename tests/python/{unittest => te}/test_te_schedule_postproc_rewrite_for_tensor_core.py (100%) rename tests/python/{unittest => te}/test_te_schedule_tensor_core.py (100%) rename tests/python/{unittest => te}/test_te_schedule_tensorize.py (100%) rename tests/python/{unittest => te}/test_te_tag.py (100%) rename tests/python/{unittest => te}/test_te_tensor.py (100%) rename tests/python/{unittest => te}/test_te_tensor_overload.py (100%) rename tests/python/{unittest => te}/test_te_transform_layout.py (100%) rename tests/python/{unittest => te}/test_te_verify_compute.py (100%) rename tests/python/{unittest => testing}/test_filter_untracked.py (100%) rename tests/python/{unittest => testing}/test_format_si_prefix.py (100%) rename tests/python/{unittest => testing}/test_gen_requirements.py (100%) rename tests/python/{unittest => testing}/test_testing.py (100%) rename tests/python/{unittest => testing}/test_tvm_testing_before_after.py (100%) rename tests/python/{unittest => testing}/test_tvm_testing_features.py (100%) rename tests/python/{unittest => testing}/test_type_annotation_checker.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_calculate_allocated_memory.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_calculate_workspace.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_detect_buffer_access_lca.py (100%) rename tests/python/{tir/analysis/test_device_constraint_utils.py => tir-analysis/test_tir_analysis_device_constraint_utils.py} (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_estimate_tir_flops.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_expr_deep_equal.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_get_block_access_region.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_identify_memcpy.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_oob.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_stmt_finding.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_usedef.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_verify_gpu_code.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_verify_memory.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_verify_ssa.py (100%) rename tests/python/{unittest => tir-analysis}/test_tir_analysis_verify_well_formed.py (100%) rename tests/python/{tir => tir-base}/test_debug_info.py (100%) rename tests/python/{unittest => tir-base}/test_lower_build.py (100%) rename tests/python/{unittest => tir-base}/test_slice_tir.py (100%) rename tests/python/{unittest => tir-base}/test_tir_base.py (100%) rename tests/python/{unittest => tir-base}/test_tir_block_dependence_info.py (100%) rename tests/python/{unittest => tir-base}/test_tir_buffer.py (100%) rename tests/python/{unittest => tir-base}/test_tir_constructor.py (100%) rename tests/python/{unittest => tir-base}/test_tir_data_layout.py (100%) rename tests/python/{unittest => tir-base}/test_tir_host_func.py (100%) rename tests/python/{unittest => tir-base}/test_tir_imm_values.py (100%) rename tests/python/{unittest => tir-base}/test_tir_index_map.py (100%) rename tests/python/{unittest => tir-base}/test_tir_intrin.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ir_builder.py (100%) rename tests/python/{unittest => tir-base}/test_tir_nodes.py (100%) rename tests/python/{unittest => tir-base}/test_tir_op_types.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ops.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ptx_cp_async.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ptx_ldmatrix.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ptx_mma.py (100%) rename tests/python/{unittest => tir-base}/test_tir_ptx_mma_sp.py (100%) rename tests/python/{unittest => tir-base}/test_tir_renew_defs.py (100%) rename tests/python/{unittest => tir-base}/test_tir_specialize.py (100%) rename tests/python/{unittest => tir-base}/test_tir_stmt_functor_ir_transform.py (100%) rename tests/python/{unittest => tir-base}/test_tir_stmt_functor_substitute.py (100%) rename tests/python/{unittest => tir-base}/test_tir_structural_equal_hash.py (100%) rename tests/python/{unittest => tir-base}/test_tir_te_extern_primfunc.py (100%) rename tests/python/{unittest => tir-base}/test_tir_texture_scope.py (100%) rename tests/python/{unittest => tir-base}/test_tir_unsafe_hide_buffer_access.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_analysis.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_block_scope.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_blockize.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_cache_index.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_cache_read_write.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_compute_at.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_compute_inline.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_decompose_padding.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_error.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_for_kind.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_instruction.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_merge.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_pad_einsum.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_read_write_at.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_reduction.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_reindex.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_reorder.py (100%) rename tests/python/{unittest/test_tir_reorder_block_iter_var.py => tir-schedule/test_tir_schedule_reorder_block_iter_var.py} (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_rfactor.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_rolling_buffer.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_sampling.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_set_axis_separator.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_set_dtype.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_set_scope.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_split_fuse.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_state.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_state_cached_flags.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_storage_align.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_tensorize.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_tensorize_ldmatrix_mma_numeric.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_tensorize_mfma_numeric.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_trace.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_transform.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_transform_layout.py (100%) rename tests/python/{unittest => tir-schedule}/test_tir_schedule_utilities.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_annotate_device_regions.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_bf16_legalize.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_combine_context_call.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_common_subexpr_elim.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_compact_buffer_region.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_convert_blocks_to_opaque.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_convert_for_loops_serial.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_convert_ssa.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_coproc_sync.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_decorate_device_scope.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_device_kernel_launch.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_extract_constants.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_flatten_buffer.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_fp8_legalize.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_helpers.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_hoist_expression.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_hoist_if.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_copy_intrin.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_double_buffer.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_permuted_layout.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_ptx_async_copy.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_rolling_buffer.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_software_pipeline.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_inject_virtual_thread.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_instrument_bound_checkers.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lift_attr_scope.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lift_thread_binding.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_loop_partition.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_cross_thread_reduction.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_device_storage_access_info.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_init_block.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_intrin.py (100%) rename tests/python/{unittest/test_tir_lower_match_buffer.py => tir-transform/test_tir_transform_lower_match_buffer.py} (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_opaque_block.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_thread_all_reduce.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_tvm_builtin.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_lower_warp_memory.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_make_packed_api.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_make_unpacked_api.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_manifest_shared_memory_local_stage.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_memhammer_lower_auto_copy.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_merge_dynamic_shared_memory_allocations.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_narrow_datatype.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_plan_update_buffer_allocation_location.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_pointer_value_type_rewrite.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_prim_func_pass.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_profiling_instr.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_reduce_branching_through_overcompute.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_remove_assume.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_remove_no_op.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_remove_undef.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_remove_weight_layout_rewrite_block.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_renormalize_split_pattern.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_rewrite_unsafe_select.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_simplify.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_split_host_device.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_storage_flatten.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_storage_rewrite.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_thread_sync.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_unify_thread_binding.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_unroll_loop.py (100%) rename tests/python/{unittest => tir-transform}/test_tir_transform_vectorize.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_algo.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_algo_hill_climb.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_analysis_extract_bufferinfo.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_transform_convert_pool_allocations_to_offsets.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_transform_create_io_allocates.py (100%) rename tests/python/{unittest => tir-usmp}/test_tir_usmp_utils.py (100%) rename tests/python/topi/{python => }/common.py (100%) rename tests/python/topi/{python => }/test_fifo_buffer.py (100%) rename tests/python/topi/{python => }/test_topi_argwhere.py (100%) rename tests/python/topi/{python => }/test_topi_basic.py (100%) rename tests/python/topi/{python => }/test_topi_batch_matmul.py (100%) rename tests/python/topi/{python => }/test_topi_batch_matmul_tensorcore.py (100%) rename tests/python/topi/{python => }/test_topi_batch_norm.py (100%) rename tests/python/topi/{python => }/test_topi_batch_to_space_nd.py (100%) rename tests/python/topi/{python => }/test_topi_bitserial_conv2d.py (100%) rename tests/python/topi/{python => }/test_topi_bitserial_conv2d_rasp.py (100%) rename tests/python/topi/{python => }/test_topi_bitserial_dense.py (100%) rename tests/python/topi/{python => }/test_topi_bnn.py (100%) rename tests/python/topi/{python => }/test_topi_broadcast.py (100%) rename tests/python/topi/{python => }/test_topi_clip.py (100%) rename tests/python/topi/{python => }/test_topi_conv1d.py (100%) rename tests/python/topi/{python => }/test_topi_conv1d_transpose_ncw.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_NCHWc.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_hwcn.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_hwnc_tensorcore.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_int8.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_nchw.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_nhwc.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_nhwc_pack_int8.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_nhwc_tensorcore.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_nhwc_winograd.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_tensordot_opts.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_transpose_nchw.py (100%) rename tests/python/topi/{python => }/test_topi_conv2d_winograd.py (100%) rename tests/python/topi/{python => }/test_topi_conv3d_ncdhw.py (100%) rename tests/python/topi/{python => }/test_topi_conv3d_ndhwc.py (100%) rename tests/python/topi/{python => }/test_topi_conv3d_ndhwc_tensorcore.py (100%) rename tests/python/topi/{python => }/test_topi_conv3d_transpose_ncdhw.py (100%) rename tests/python/topi/{python => }/test_topi_conv3d_winograd.py (100%) rename tests/python/topi/{python => }/test_topi_correlation.py (100%) rename tests/python/topi/{python => }/test_topi_deformable_conv2d.py (100%) rename tests/python/topi/{python => }/test_topi_dense.py (100%) rename tests/python/topi/{python => }/test_topi_dense_tensorcore.py (100%) rename tests/python/topi/{python => }/test_topi_depth_to_space.py (100%) rename tests/python/topi/{python => }/test_topi_depthwise_conv2d.py (100%) rename tests/python/topi/{python => }/test_topi_depthwise_conv2d_back_input.py (100%) rename tests/python/topi/{python => }/test_topi_depthwise_conv2d_back_weight.py (100%) rename tests/python/topi/{python => }/test_topi_dft.py (100%) rename tests/python/topi/{python => }/test_topi_dilate.py (100%) rename tests/python/topi/{python => }/test_topi_einsum.py (100%) rename tests/python/topi/{python => }/test_topi_group_conv2d.py (100%) rename tests/python/topi/{python => }/test_topi_group_conv2d_NCHWc_int8.py (100%) rename tests/python/topi/{python => }/test_topi_group_conv2d_transpose.py (100%) rename tests/python/topi/{python => }/test_topi_group_norm.py (100%) rename tests/python/topi/{python => }/test_topi_image.py (100%) rename tests/python/topi/{python => }/test_topi_instance_norm.py (100%) rename tests/python/topi/{python => }/test_topi_layer_norm.py (100%) rename tests/python/topi/{python => }/test_topi_loss.py (100%) rename tests/python/topi/{python => }/test_topi_lrn.py (100%) rename tests/python/topi/{python => }/test_topi_lstm.py (100%) rename tests/python/topi/{python => }/test_topi_math.py (100%) rename tests/python/topi/{python => }/test_topi_matmul.py (100%) rename tests/python/topi/{python => }/test_topi_pooling.py (100%) rename tests/python/topi/{python => }/test_topi_prng.py (100%) rename tests/python/topi/{python => }/test_topi_qnn.py (100%) rename tests/python/topi/{python => }/test_topi_reduce.py (100%) rename tests/python/topi/{python => }/test_topi_relu.py (100%) rename tests/python/topi/{python => }/test_topi_reorg.py (100%) rename tests/python/topi/{python => }/test_topi_rms_norm.py (100%) rename tests/python/topi/{python => }/test_topi_scan.py (100%) rename tests/python/topi/{python => }/test_topi_scatter.py (100%) rename tests/python/topi/{python => }/test_topi_searchsorted.py (100%) rename tests/python/topi/{python => }/test_topi_softmax.py (100%) rename tests/python/topi/{python => }/test_topi_sort.py (100%) rename tests/python/topi/{python => }/test_topi_space_to_batch_nd.py (100%) rename tests/python/topi/{python => }/test_topi_space_to_depth.py (100%) rename tests/python/topi/{python => }/test_topi_sparse.py (100%) rename tests/python/topi/{python => }/test_topi_tensor.py (100%) rename tests/python/topi/{python => }/test_topi_transform.py (100%) rename tests/python/topi/{python => }/test_topi_unique.py (100%) rename tests/python/topi/{python => }/test_topi_upsampling.py (100%) rename tests/python/topi/{python => }/test_topi_util.py (100%) rename tests/python/topi/{python => }/test_topi_vision.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_complete.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_error_report.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_ir_builder_base.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_ir_builder_irmodule.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_ir_builder_tir.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_meta_programming.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_ops.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_parser_evaluator.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_parser_ir.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_parser_source.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_parser_tir.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_annotation.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_doc.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_highlight.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_ir.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_metadata.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_python_doc_printer.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_structural_equal.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_tir.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_printer_underlining.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_regression.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_roundtrip.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_syntax_sugar.py (100%) rename tests/python/{unittest => tvmscript}/test_tvmscript_type.py (100%) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fdd2db9c4a81..741bcf9b548b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -72,12 +72,12 @@ jobs: - name: Minimal Metal Compile-Only shell: bash -l {0} run: | - python -m pytest -v -s 'tests/python/unittest/test_allreduce.py::test_allreduce_sum_compile' - python -m pytest -v -s 'tests/python/unittest/test_target_codegen_metal.py::test_func_with_trailing_pod_params' + python -m pytest -v -s 'tests/python/codegen/test_gpu_codegen_allreduce.py::test_allreduce_sum_compile' + python -m pytest -v -s 'tests/python/codegen/test_target_codegen_metal.py::test_func_with_trailing_pod_params' - name: Minimal Metal Compile-and-Run shell: bash -l {0} run: >- - python -m pytest -v -s 'tests/python/unittest/test_allreduce.py::test_allreduce_sum[dims0-metal]' + python -m pytest -v -s 'tests/python/codegen/test_gpu_codegen_allreduce.py::test_allreduce_sum[dims0-metal]' - name: Test iOS RPC shell: bash -l {0} run: >- diff --git a/conftest.py b/conftest.py index 0583dac20136..861abc14b843 100644 --- a/conftest.py +++ b/conftest.py @@ -58,7 +58,7 @@ # These rely on running on the same node to pass successfully FIXED_ALLOCATION_PREFIXES = { - "tests/python/unittest/test_tvm_testing_features.py": 0, + "tests/python/testing/test_tvm_testing_features.py": 0, } diff --git a/docs/contribute/pull_request.rst b/docs/contribute/pull_request.rst index 87da5ae1b174..943fa99a3297 100644 --- a/docs/contribute/pull_request.rst +++ b/docs/contribute/pull_request.rst @@ -219,7 +219,7 @@ each time (e.g. you can test a change in CPU and i386 while retaining incrementa python tests/scripts/ci.py cpu --unittest # quickly iterate by running a specific test and skipping the rebuild each time - python tests/scripts/ci.py cpu --skip-build --tests tests/python/unittest/test_tir_transform_inject_rolling_buffer.py::test_upscale + python tests/scripts/ci.py cpu --skip-build --tests tests/python/tir-transform/test_tir_transform_inject_rolling_buffer.py::test_upscale # run the CPU build and drop into a shell in the container python tests/scripts/ci.py cpu --interactive diff --git a/python/tvm/testing/plugin.py b/python/tvm/testing/plugin.py index 1cb936d65c35..7a0cf5dd1324 100644 --- a/python/tvm/testing/plugin.py +++ b/python/tvm/testing/plugin.py @@ -361,7 +361,7 @@ def _split_scope(self, nodeid): # serialized items = { "test_tvm_testing_features": "functional-tests", - "tests/python/unittest/test_crt": "crt-tests", + "tests/python/micro/test_crt": "crt-tests", "tests/python/driver/tvmc": "tvmc-tests", } diff --git a/src/auto_scheduler/transform_step.cc b/src/auto_scheduler/transform_step.cc index b821cf892aa7..73acb7c0e70a 100644 --- a/src/auto_scheduler/transform_step.cc +++ b/src/auto_scheduler/transform_step.cc @@ -1669,7 +1669,7 @@ int CacheWriteStepNode::ApplyToState(State* state, const ComputeDAG& dag) const int next_stage_id = stage_id + 2; // TODO(jc94): Fix the cache write bug in TVM and remove added_op == 2 support. // TVM's cache_write has a bug with multi outputs. See - // `tests/python/unittest/test_auto_scheduler_loop_state.py::test_cache_read_write` test + // `tests/python/auto_scheduler/test_auto_scheduler_loop_state.py::test_cache_read_write` test // for more details if (added_ops == 2) { pstate->stages.insert(pstate->stages.begin() + next_stage_id, diff --git a/src/runtime/hexagon/profiler/README.md b/src/runtime/hexagon/profiler/README.md index 492e45c98498..d83b7db2833d 100644 --- a/src/runtime/hexagon/profiler/README.md +++ b/src/runtime/hexagon/profiler/README.md @@ -44,7 +44,7 @@ only when `instr_siblings` is disabled. By default, it is set to 0. By default, it is set to 1. For additional usage information on various config flags, please refer to the tests in -`tests/python/unittest/test_tir_transform_profiling_instr.py` +`tests/python/tir-transform/test_tir_transform_profiling_instr.py` ## How to use lightweight profiling with RPC Launcher: diff --git a/tests/lint/pylint.sh b/tests/lint/pylint.sh index 9195e7f73592..656239e3696a 100755 --- a/tests/lint/pylint.sh +++ b/tests/lint/pylint.sh @@ -19,8 +19,8 @@ set -euxo pipefail python3 -m pylint python/tvm --rcfile="$(dirname "$0")"/pylintrc python3 -m pylint vta/python/vta --rcfile="$(dirname "$0")"/pylintrc -python3 -m pylint tests/python/unittest/test_crt.py --rcfile="$(dirname "$0")"/pylintrc -python3 -m pylint tests/python/unittest/test_tvmscript_type.py --rcfile="$(dirname "$0")"/pylintrc +python3 -m pylint tests/python/micro/test_crt.py --rcfile="$(dirname "$0")"/pylintrc +python3 -m pylint tests/python/tvmscript/test_tvmscript_type.py --rcfile="$(dirname "$0")"/pylintrc python3 -m pylint tests/python/contrib/test_cmsisnn --rcfile="$(dirname "$0")"/pylintrc python3 -m pylint tests/python/contrib/test_ethosn --rcfile="$(dirname "$0")"/pylintrc python3 -m pylint tests/python/relay/aot/*.py --rcfile="$(dirname "$0")"/pylintrc diff --git a/tests/python/unittest/test_arith_canonical_simplify.py b/tests/python/arith/test_arith_canonical_simplify.py similarity index 100% rename from tests/python/unittest/test_arith_canonical_simplify.py rename to tests/python/arith/test_arith_canonical_simplify.py diff --git a/tests/python/unittest/test_arith_const_int_bound.py b/tests/python/arith/test_arith_const_int_bound.py similarity index 100% rename from tests/python/unittest/test_arith_const_int_bound.py rename to tests/python/arith/test_arith_const_int_bound.py diff --git a/tests/python/unittest/test_arith_deduce_bound.py b/tests/python/arith/test_arith_deduce_bound.py similarity index 100% rename from tests/python/unittest/test_arith_deduce_bound.py rename to tests/python/arith/test_arith_deduce_bound.py diff --git a/tests/python/unittest/test_arith_detect_clip_bound.py b/tests/python/arith/test_arith_detect_clip_bound.py similarity index 100% rename from tests/python/unittest/test_arith_detect_clip_bound.py rename to tests/python/arith/test_arith_detect_clip_bound.py diff --git a/tests/python/unittest/test_arith_detect_cse.py b/tests/python/arith/test_arith_detect_cse.py similarity index 100% rename from tests/python/unittest/test_arith_detect_cse.py rename to tests/python/arith/test_arith_detect_cse.py diff --git a/tests/python/unittest/test_arith_detect_linear_equation.py b/tests/python/arith/test_arith_detect_linear_equation.py similarity index 100% rename from tests/python/unittest/test_arith_detect_linear_equation.py rename to tests/python/arith/test_arith_detect_linear_equation.py diff --git a/tests/python/unittest/test_arith_domain_touched.py b/tests/python/arith/test_arith_domain_touched.py similarity index 100% rename from tests/python/unittest/test_arith_domain_touched.py rename to tests/python/arith/test_arith_domain_touched.py diff --git a/tests/python/unittest/test_arith_intset.py b/tests/python/arith/test_arith_intset.py similarity index 100% rename from tests/python/unittest/test_arith_intset.py rename to tests/python/arith/test_arith_intset.py diff --git a/tests/python/unittest/test_arith_iter_affine_map.py b/tests/python/arith/test_arith_iter_affine_map.py similarity index 100% rename from tests/python/unittest/test_arith_iter_affine_map.py rename to tests/python/arith/test_arith_iter_affine_map.py diff --git a/tests/python/unittest/test_arith_modular_set.py b/tests/python/arith/test_arith_modular_set.py similarity index 100% rename from tests/python/unittest/test_arith_modular_set.py rename to tests/python/arith/test_arith_modular_set.py diff --git a/tests/python/unittest/test_arith_narrow_predicate_expression.py b/tests/python/arith/test_arith_narrow_predicate_expression.py similarity index 100% rename from tests/python/unittest/test_arith_narrow_predicate_expression.py rename to tests/python/arith/test_arith_narrow_predicate_expression.py diff --git a/tests/python/unittest/test_arith_rewrite_simplify.py b/tests/python/arith/test_arith_rewrite_simplify.py similarity index 100% rename from tests/python/unittest/test_arith_rewrite_simplify.py rename to tests/python/arith/test_arith_rewrite_simplify.py diff --git a/tests/python/unittest/test_arith_simplify.py b/tests/python/arith/test_arith_simplify.py similarity index 100% rename from tests/python/unittest/test_arith_simplify.py rename to tests/python/arith/test_arith_simplify.py diff --git a/tests/python/unittest/test_arith_solve_linear_equations.py b/tests/python/arith/test_arith_solve_linear_equations.py similarity index 100% rename from tests/python/unittest/test_arith_solve_linear_equations.py rename to tests/python/arith/test_arith_solve_linear_equations.py diff --git a/tests/python/unittest/test_arith_solve_linear_inequality.py b/tests/python/arith/test_arith_solve_linear_inequality.py similarity index 100% rename from tests/python/unittest/test_arith_solve_linear_inequality.py rename to tests/python/arith/test_arith_solve_linear_inequality.py diff --git a/tests/python/unittest/test_auto_scheduler_compute_dag.py b/tests/python/auto_scheduler/test_auto_scheduler_compute_dag.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_compute_dag.py rename to tests/python/auto_scheduler/test_auto_scheduler_compute_dag.py diff --git a/tests/python/unittest/test_auto_scheduler_cost_model.py b/tests/python/auto_scheduler/test_auto_scheduler_cost_model.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_cost_model.py rename to tests/python/auto_scheduler/test_auto_scheduler_cost_model.py diff --git a/tests/python/unittest/test_auto_scheduler_evolutionary_search.py b/tests/python/auto_scheduler/test_auto_scheduler_evolutionary_search.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_evolutionary_search.py rename to tests/python/auto_scheduler/test_auto_scheduler_evolutionary_search.py diff --git a/tests/python/unittest/test_auto_scheduler_feature.py b/tests/python/auto_scheduler/test_auto_scheduler_feature.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_feature.py rename to tests/python/auto_scheduler/test_auto_scheduler_feature.py diff --git a/tests/python/unittest/test_auto_scheduler_layout_rewrite.py b/tests/python/auto_scheduler/test_auto_scheduler_layout_rewrite.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_layout_rewrite.py rename to tests/python/auto_scheduler/test_auto_scheduler_layout_rewrite.py diff --git a/tests/python/unittest/test_auto_scheduler_loop_state.py b/tests/python/auto_scheduler/test_auto_scheduler_loop_state.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_loop_state.py rename to tests/python/auto_scheduler/test_auto_scheduler_loop_state.py diff --git a/tests/python/unittest/test_auto_scheduler_measure.py b/tests/python/auto_scheduler/test_auto_scheduler_measure.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_measure.py rename to tests/python/auto_scheduler/test_auto_scheduler_measure.py diff --git a/tests/python/unittest/test_auto_scheduler_search_policy.py b/tests/python/auto_scheduler/test_auto_scheduler_search_policy.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_search_policy.py rename to tests/python/auto_scheduler/test_auto_scheduler_search_policy.py diff --git a/tests/python/unittest/test_auto_scheduler_search_task.py b/tests/python/auto_scheduler/test_auto_scheduler_search_task.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_search_task.py rename to tests/python/auto_scheduler/test_auto_scheduler_search_task.py diff --git a/tests/python/unittest/test_auto_scheduler_sketch_generation.py b/tests/python/auto_scheduler/test_auto_scheduler_sketch_generation.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_sketch_generation.py rename to tests/python/auto_scheduler/test_auto_scheduler_sketch_generation.py diff --git a/tests/python/unittest/test_auto_scheduler_task_scheduler.py b/tests/python/auto_scheduler/test_auto_scheduler_task_scheduler.py similarity index 100% rename from tests/python/unittest/test_auto_scheduler_task_scheduler.py rename to tests/python/auto_scheduler/test_auto_scheduler_task_scheduler.py diff --git a/tests/python/unittest/test_autotvm_database.py b/tests/python/autotvm/test_autotvm_database.py similarity index 100% rename from tests/python/unittest/test_autotvm_database.py rename to tests/python/autotvm/test_autotvm_database.py diff --git a/tests/python/unittest/test_autotvm_dispatch_context.py b/tests/python/autotvm/test_autotvm_dispatch_context.py similarity index 100% rename from tests/python/unittest/test_autotvm_dispatch_context.py rename to tests/python/autotvm/test_autotvm_dispatch_context.py diff --git a/tests/python/unittest/test_autotvm_droplet_tuner.py b/tests/python/autotvm/test_autotvm_droplet_tuner.py similarity index 100% rename from tests/python/unittest/test_autotvm_droplet_tuner.py rename to tests/python/autotvm/test_autotvm_droplet_tuner.py diff --git a/tests/python/unittest/test_autotvm_feature.py b/tests/python/autotvm/test_autotvm_feature.py similarity index 100% rename from tests/python/unittest/test_autotvm_feature.py rename to tests/python/autotvm/test_autotvm_feature.py diff --git a/tests/python/unittest/test_autotvm_flop_calculator.py b/tests/python/autotvm/test_autotvm_flop_calculator.py similarity index 100% rename from tests/python/unittest/test_autotvm_flop_calculator.py rename to tests/python/autotvm/test_autotvm_flop_calculator.py diff --git a/tests/python/unittest/test_autotvm_ga_tuner.py b/tests/python/autotvm/test_autotvm_ga_tuner.py similarity index 100% rename from tests/python/unittest/test_autotvm_ga_tuner.py rename to tests/python/autotvm/test_autotvm_ga_tuner.py diff --git a/tests/python/unittest/test_autotvm_graph_tuner_core.py b/tests/python/autotvm/test_autotvm_graph_tuner_core.py similarity index 100% rename from tests/python/unittest/test_autotvm_graph_tuner_core.py rename to tests/python/autotvm/test_autotvm_graph_tuner_core.py diff --git a/tests/python/unittest/test_autotvm_graph_tuner_utils.py b/tests/python/autotvm/test_autotvm_graph_tuner_utils.py similarity index 100% rename from tests/python/unittest/test_autotvm_graph_tuner_utils.py rename to tests/python/autotvm/test_autotvm_graph_tuner_utils.py diff --git a/tests/python/unittest/test_autotvm_index_tuner.py b/tests/python/autotvm/test_autotvm_index_tuner.py similarity index 100% rename from tests/python/unittest/test_autotvm_index_tuner.py rename to tests/python/autotvm/test_autotvm_index_tuner.py diff --git a/tests/python/unittest/test_autotvm_measure.py b/tests/python/autotvm/test_autotvm_measure.py similarity index 100% rename from tests/python/unittest/test_autotvm_measure.py rename to tests/python/autotvm/test_autotvm_measure.py diff --git a/tests/python/unittest/test_autotvm_record.py b/tests/python/autotvm/test_autotvm_record.py similarity index 100% rename from tests/python/unittest/test_autotvm_record.py rename to tests/python/autotvm/test_autotvm_record.py diff --git a/tests/python/unittest/test_autotvm_space.py b/tests/python/autotvm/test_autotvm_space.py similarity index 100% rename from tests/python/unittest/test_autotvm_space.py rename to tests/python/autotvm/test_autotvm_space.py diff --git a/tests/python/unittest/test_autotvm_xgboost_model.py b/tests/python/autotvm/test_autotvm_xgboost_model.py similarity index 100% rename from tests/python/unittest/test_autotvm_xgboost_model.py rename to tests/python/autotvm/test_autotvm_xgboost_model.py diff --git a/tests/python/unittest/test_allreduce.py b/tests/python/codegen/test_gpu_codegen_allreduce.py similarity index 100% rename from tests/python/unittest/test_allreduce.py rename to tests/python/codegen/test_gpu_codegen_allreduce.py diff --git a/tests/python/unittest/test_inject_ptx_ldg32.py b/tests/python/codegen/test_inject_ptx_ldg32.py similarity index 100% rename from tests/python/unittest/test_inject_ptx_ldg32.py rename to tests/python/codegen/test_inject_ptx_ldg32.py diff --git a/tests/python/unittest/test_target_codegen_aarch64.py b/tests/python/codegen/test_target_codegen_aarch64.py similarity index 100% rename from tests/python/unittest/test_target_codegen_aarch64.py rename to tests/python/codegen/test_target_codegen_aarch64.py diff --git a/tests/python/unittest/test_target_codegen_arm.py b/tests/python/codegen/test_target_codegen_arm.py similarity index 100% rename from tests/python/unittest/test_target_codegen_arm.py rename to tests/python/codegen/test_target_codegen_arm.py diff --git a/tests/python/unittest/test_target_codegen_blob.py b/tests/python/codegen/test_target_codegen_blob.py similarity index 100% rename from tests/python/unittest/test_target_codegen_blob.py rename to tests/python/codegen/test_target_codegen_blob.py diff --git a/tests/python/unittest/test_target_codegen_bool.py b/tests/python/codegen/test_target_codegen_bool.py similarity index 100% rename from tests/python/unittest/test_target_codegen_bool.py rename to tests/python/codegen/test_target_codegen_bool.py diff --git a/tests/python/unittest/test_target_codegen_c_host.py b/tests/python/codegen/test_target_codegen_c_host.py similarity index 100% rename from tests/python/unittest/test_target_codegen_c_host.py rename to tests/python/codegen/test_target_codegen_c_host.py diff --git a/tests/python/unittest/test_target_codegen_cross_llvm.py b/tests/python/codegen/test_target_codegen_cross_llvm.py similarity index 100% rename from tests/python/unittest/test_target_codegen_cross_llvm.py rename to tests/python/codegen/test_target_codegen_cross_llvm.py diff --git a/tests/python/unittest/test_target_codegen_cuda.py b/tests/python/codegen/test_target_codegen_cuda.py similarity index 100% rename from tests/python/unittest/test_target_codegen_cuda.py rename to tests/python/codegen/test_target_codegen_cuda.py diff --git a/tests/python/unittest/test_target_codegen_device.py b/tests/python/codegen/test_target_codegen_device.py similarity index 100% rename from tests/python/unittest/test_target_codegen_device.py rename to tests/python/codegen/test_target_codegen_device.py diff --git a/tests/python/unittest/test_target_codegen_extern.py b/tests/python/codegen/test_target_codegen_extern.py similarity index 100% rename from tests/python/unittest/test_target_codegen_extern.py rename to tests/python/codegen/test_target_codegen_extern.py diff --git a/tests/python/unittest/test_target_codegen_hexagon.py b/tests/python/codegen/test_target_codegen_hexagon.py similarity index 100% rename from tests/python/unittest/test_target_codegen_hexagon.py rename to tests/python/codegen/test_target_codegen_hexagon.py diff --git a/tests/python/unittest/test_target_codegen_llvm.py b/tests/python/codegen/test_target_codegen_llvm.py similarity index 100% rename from tests/python/unittest/test_target_codegen_llvm.py rename to tests/python/codegen/test_target_codegen_llvm.py diff --git a/tests/python/unittest/test_target_codegen_metal.py b/tests/python/codegen/test_target_codegen_metal.py similarity index 100% rename from tests/python/unittest/test_target_codegen_metal.py rename to tests/python/codegen/test_target_codegen_metal.py diff --git a/tests/python/unittest/test_target_codegen_opencl.py b/tests/python/codegen/test_target_codegen_opencl.py similarity index 100% rename from tests/python/unittest/test_target_codegen_opencl.py rename to tests/python/codegen/test_target_codegen_opencl.py diff --git a/tests/python/unittest/test_target_codegen_rocm.py b/tests/python/codegen/test_target_codegen_rocm.py similarity index 100% rename from tests/python/unittest/test_target_codegen_rocm.py rename to tests/python/codegen/test_target_codegen_rocm.py diff --git a/tests/python/unittest/test_target_codegen_static_init.py b/tests/python/codegen/test_target_codegen_static_init.py similarity index 100% rename from tests/python/unittest/test_target_codegen_static_init.py rename to tests/python/codegen/test_target_codegen_static_init.py diff --git a/tests/python/unittest/test_target_codegen_vm_basic.py b/tests/python/codegen/test_target_codegen_vm_basic.py similarity index 100% rename from tests/python/unittest/test_target_codegen_vm_basic.py rename to tests/python/codegen/test_target_codegen_vm_basic.py diff --git a/tests/python/unittest/test_target_codegen_vulkan.py b/tests/python/codegen/test_target_codegen_vulkan.py similarity index 100% rename from tests/python/unittest/test_target_codegen_vulkan.py rename to tests/python/codegen/test_target_codegen_vulkan.py diff --git a/tests/python/unittest/test_target_codegen_x86.py b/tests/python/codegen/test_target_codegen_x86.py similarity index 100% rename from tests/python/unittest/test_target_codegen_x86.py rename to tests/python/codegen/test_target_codegen_x86.py diff --git a/tests/python/unittest/test_target_texture_codegen_opencl.py b/tests/python/codegen/test_target_texture_codegen_opencl.py similarity index 100% rename from tests/python/unittest/test_target_texture_codegen_opencl.py rename to tests/python/codegen/test_target_texture_codegen_opencl.py diff --git a/tests/python/conftest.py b/tests/python/conftest.py index 2da5be3d0494..51e7516a1dcd 100644 --- a/tests/python/conftest.py +++ b/tests/python/conftest.py @@ -31,12 +31,12 @@ COLLECT_IGNORE.append("frontend/tflite") COLLECT_IGNORE.append("frontend/onnx") COLLECT_IGNORE.append("driver/tvmc/test_autoscheduler.py") - COLLECT_IGNORE.append("unittest/test_auto_scheduler_cost_model.py") # stack overflow - # COLLECT_IGNORE.append("unittest/test_auto_scheduler_measure.py") # exception ignored - COLLECT_IGNORE.append("unittest/test_auto_scheduler_search_policy.py") # stack overflow - # COLLECT_IGNORE.append("unittest/test_auto_scheduler_measure.py") # exception ignored + COLLECT_IGNORE.append("auto_scheduler/test_auto_scheduler_cost_model.py") # stack overflow + # COLLECT_IGNORE.append("auto_scheduler/test_auto_scheduler_measure.py") # exception ignored + COLLECT_IGNORE.append("auto_scheduler/test_auto_scheduler_search_policy.py") # stack overflow + # COLLECT_IGNORE.append("auto_scheduler/test_auto_scheduler_measure.py") # exception ignored - COLLECT_IGNORE.append("unittest/test_tir_intrin.py") + COLLECT_IGNORE.append("tir_base/test_tir_intrin.py") def pytest_addoption(parser): diff --git a/tests/python/unittest/test_container_structural_equal.py b/tests/python/ir/test_container_structural_equal.py similarity index 100% rename from tests/python/unittest/test_container_structural_equal.py rename to tests/python/ir/test_container_structural_equal.py diff --git a/tests/python/unittest/test_datatype_nv_fp8.py b/tests/python/ir/test_datatype_nv_fp8.py similarity index 100% rename from tests/python/unittest/test_datatype_nv_fp8.py rename to tests/python/ir/test_datatype_nv_fp8.py diff --git a/tests/python/unittest/test_ir_attrs.py b/tests/python/ir/test_ir_attrs.py similarity index 100% rename from tests/python/unittest/test_ir_attrs.py rename to tests/python/ir/test_ir_attrs.py diff --git a/tests/python/unittest/test_ir_container.py b/tests/python/ir/test_ir_container.py similarity index 100% rename from tests/python/unittest/test_ir_container.py rename to tests/python/ir/test_ir_container.py diff --git a/tests/python/unittest/test_ir_type.py b/tests/python/ir/test_ir_type.py similarity index 100% rename from tests/python/unittest/test_ir_type.py rename to tests/python/ir/test_ir_type.py diff --git a/tests/python/unittest/test_node_reflection.py b/tests/python/ir/test_node_reflection.py similarity index 100% rename from tests/python/unittest/test_node_reflection.py rename to tests/python/ir/test_node_reflection.py diff --git a/tests/python/unittest/test_object_path.py b/tests/python/ir/test_object_path.py similarity index 100% rename from tests/python/unittest/test_object_path.py rename to tests/python/ir/test_object_path.py diff --git a/tests/python/unittest/test_roundtrip_runtime_module.py b/tests/python/ir/test_roundtrip_runtime_module.py similarity index 100% rename from tests/python/unittest/test_roundtrip_runtime_module.py rename to tests/python/ir/test_roundtrip_runtime_module.py diff --git a/tests/python/unittest/test_meta_schedule_arg_info.py b/tests/python/meta_schedule/test_meta_schedule_arg_info.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_arg_info.py rename to tests/python/meta_schedule/test_meta_schedule_arg_info.py diff --git a/tests/python/unittest/test_meta_schedule_builder.py b/tests/python/meta_schedule/test_meta_schedule_builder.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_builder.py rename to tests/python/meta_schedule/test_meta_schedule_builder.py diff --git a/tests/python/unittest/test_meta_schedule_byoc_tensorrt.py b/tests/python/meta_schedule/test_meta_schedule_byoc_tensorrt.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_byoc_tensorrt.py rename to tests/python/meta_schedule/test_meta_schedule_byoc_tensorrt.py diff --git a/tests/python/unittest/test_meta_schedule_cost_model.py b/tests/python/meta_schedule/test_meta_schedule_cost_model.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_cost_model.py rename to tests/python/meta_schedule/test_meta_schedule_cost_model.py diff --git a/tests/python/unittest/test_meta_schedule_cpu_dot_product.py b/tests/python/meta_schedule/test_meta_schedule_cpu_dot_product.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_cpu_dot_product.py rename to tests/python/meta_schedule/test_meta_schedule_cpu_dot_product.py diff --git a/tests/python/unittest/test_meta_schedule_database.py b/tests/python/meta_schedule/test_meta_schedule_database.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_database.py rename to tests/python/meta_schedule/test_meta_schedule_database.py diff --git a/tests/python/unittest/test_meta_schedule_feature_extractor.py b/tests/python/meta_schedule/test_meta_schedule_feature_extractor.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_feature_extractor.py rename to tests/python/meta_schedule/test_meta_schedule_feature_extractor.py diff --git a/tests/python/unittest/test_meta_schedule_feature_extractor_per_store_feature.py b/tests/python/meta_schedule/test_meta_schedule_feature_extractor_per_store_feature.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_feature_extractor_per_store_feature.py rename to tests/python/meta_schedule/test_meta_schedule_feature_extractor_per_store_feature.py diff --git a/tests/python/unittest/test_meta_schedule_measure_callback.py b/tests/python/meta_schedule/test_meta_schedule_measure_callback.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_measure_callback.py rename to tests/python/meta_schedule/test_meta_schedule_measure_callback.py diff --git a/tests/python/unittest/test_meta_schedule_mma_m16n8k8_auto_tensorization.py b/tests/python/meta_schedule/test_meta_schedule_mma_m16n8k8_auto_tensorization.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mma_m16n8k8_auto_tensorization.py rename to tests/python/meta_schedule/test_meta_schedule_mma_m16n8k8_auto_tensorization.py diff --git a/tests/python/unittest/test_meta_schedule_multi_anchor.py b/tests/python/meta_schedule/test_meta_schedule_multi_anchor.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_multi_anchor.py rename to tests/python/meta_schedule/test_meta_schedule_multi_anchor.py diff --git a/tests/python/unittest/test_meta_schedule_mutator_mutate_compute_location.py b/tests/python/meta_schedule/test_meta_schedule_mutator_mutate_compute_location.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mutator_mutate_compute_location.py rename to tests/python/meta_schedule/test_meta_schedule_mutator_mutate_compute_location.py diff --git a/tests/python/unittest/test_meta_schedule_mutator_mutate_parallel.py b/tests/python/meta_schedule/test_meta_schedule_mutator_mutate_parallel.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mutator_mutate_parallel.py rename to tests/python/meta_schedule/test_meta_schedule_mutator_mutate_parallel.py diff --git a/tests/python/unittest/test_meta_schedule_mutator_mutate_thread_binding.py b/tests/python/meta_schedule/test_meta_schedule_mutator_mutate_thread_binding.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mutator_mutate_thread_binding.py rename to tests/python/meta_schedule/test_meta_schedule_mutator_mutate_thread_binding.py diff --git a/tests/python/unittest/test_meta_schedule_mutator_mutate_tile_size.py b/tests/python/meta_schedule/test_meta_schedule_mutator_mutate_tile_size.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mutator_mutate_tile_size.py rename to tests/python/meta_schedule/test_meta_schedule_mutator_mutate_tile_size.py diff --git a/tests/python/unittest/test_meta_schedule_mutator_mutate_unroll.py b/tests/python/meta_schedule/test_meta_schedule_mutator_mutate_unroll.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_mutator_mutate_unroll.py rename to tests/python/meta_schedule/test_meta_schedule_mutator_mutate_unroll.py diff --git a/tests/python/unittest/test_meta_schedule_post_order_apply.py b/tests/python/meta_schedule/test_meta_schedule_post_order_apply.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_post_order_apply.py rename to tests/python/meta_schedule/test_meta_schedule_post_order_apply.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_disallow_async_strided_mem_copy.py b/tests/python/meta_schedule/test_meta_schedule_postproc_disallow_async_strided_mem_copy.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_disallow_async_strided_mem_copy.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_disallow_async_strided_mem_copy.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_disallow_dynamic_loop.py b/tests/python/meta_schedule/test_meta_schedule_postproc_disallow_dynamic_loop.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_disallow_dynamic_loop.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_disallow_dynamic_loop.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_cooperative_fetch.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_cooperative_fetch.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_cooperative_fetch.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_cooperative_fetch.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_layout.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_layout.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_layout.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_layout.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_parallel_vectorize_unroll.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_reduction_block.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_reduction_block.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_reduction_block.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_reduction_block.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_tensorize.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_tensorize.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_tensorize.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_tensorize.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_rewrite_unbound_block.py b/tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_unbound_block.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_rewrite_unbound_block.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_rewrite_unbound_block.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_verify_gpu_code.py b/tests/python/meta_schedule/test_meta_schedule_postproc_verify_gpu_code.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_verify_gpu_code.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_verify_gpu_code.py diff --git a/tests/python/unittest/test_meta_schedule_postproc_verify_vtcm_limit.py b/tests/python/meta_schedule/test_meta_schedule_postproc_verify_vtcm_limit.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_postproc_verify_vtcm_limit.py rename to tests/python/meta_schedule/test_meta_schedule_postproc_verify_vtcm_limit.py diff --git a/tests/python/unittest/test_meta_schedule_profiler.py b/tests/python/meta_schedule/test_meta_schedule_profiler.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_profiler.py rename to tests/python/meta_schedule/test_meta_schedule_profiler.py diff --git a/tests/python/unittest/test_meta_schedule_relay_integration.py b/tests/python/meta_schedule/test_meta_schedule_relay_integration.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_relay_integration.py rename to tests/python/meta_schedule/test_meta_schedule_relay_integration.py diff --git a/tests/python/unittest/test_meta_schedule_relay_tir_compute.py b/tests/python/meta_schedule/test_meta_schedule_relay_tir_compute.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_relay_tir_compute.py rename to tests/python/meta_schedule/test_meta_schedule_relay_tir_compute.py diff --git a/tests/python/unittest/test_meta_schedule_runner.py b/tests/python/meta_schedule/test_meta_schedule_runner.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_runner.py rename to tests/python/meta_schedule/test_meta_schedule_runner.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_cuda_layout_transform.py b/tests/python/meta_schedule/test_meta_schedule_schedule_cuda_layout_transform.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_cuda_layout_transform.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_cuda_layout_transform.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_add_rfactor.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_add_rfactor.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_add_rfactor.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_add_rfactor.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_apply_custom_rule.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_apply_custom_rule.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_apply_custom_rule.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_apply_custom_rule.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_auto_bind.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_auto_bind.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_auto_bind.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_auto_bind.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_auto_inline.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_auto_inline.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_auto_inline.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_auto_inline.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_cross_thread_reduction.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_cross_thread_reduction.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_cross_thread_reduction.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_cross_thread_reduction.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_mlt.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_mlt.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_mlt_intrin.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt_intrin.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_mlt_intrin.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt_intrin.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_mlt_tc.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt_tc.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_mlt_tc.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_mlt_tc.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_parallel_vectorize_unroll.py diff --git a/tests/python/unittest/test_meta_schedule_schedule_rule_random_compute_location.py b/tests/python/meta_schedule/test_meta_schedule_schedule_rule_random_compute_location.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_schedule_rule_random_compute_location.py rename to tests/python/meta_schedule/test_meta_schedule_schedule_rule_random_compute_location.py diff --git a/tests/python/unittest/test_meta_schedule_search_strategy.py b/tests/python/meta_schedule/test_meta_schedule_search_strategy.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_search_strategy.py rename to tests/python/meta_schedule/test_meta_schedule_search_strategy.py diff --git a/tests/python/unittest/test_meta_schedule_space_cpu.py b/tests/python/meta_schedule/test_meta_schedule_space_cpu.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cpu.py rename to tests/python/meta_schedule/test_meta_schedule_space_cpu.py diff --git a/tests/python/unittest/test_meta_schedule_space_cpu_winograd.py b/tests/python/meta_schedule/test_meta_schedule_space_cpu_winograd.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cpu_winograd.py rename to tests/python/meta_schedule/test_meta_schedule_space_cpu_winograd.py diff --git a/tests/python/unittest/test_meta_schedule_space_cuda.py b/tests/python/meta_schedule/test_meta_schedule_space_cuda.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cuda.py rename to tests/python/meta_schedule/test_meta_schedule_space_cuda.py diff --git a/tests/python/unittest/test_meta_schedule_space_cuda_async.py b/tests/python/meta_schedule/test_meta_schedule_space_cuda_async.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cuda_async.py rename to tests/python/meta_schedule/test_meta_schedule_space_cuda_async.py diff --git a/tests/python/unittest/test_meta_schedule_space_cuda_async_multiple_initialization.py b/tests/python/meta_schedule/test_meta_schedule_space_cuda_async_multiple_initialization.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cuda_async_multiple_initialization.py rename to tests/python/meta_schedule/test_meta_schedule_space_cuda_async_multiple_initialization.py diff --git a/tests/python/unittest/test_meta_schedule_space_cuda_winograd.py b/tests/python/meta_schedule/test_meta_schedule_space_cuda_winograd.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_cuda_winograd.py rename to tests/python/meta_schedule/test_meta_schedule_space_cuda_winograd.py diff --git a/tests/python/unittest/test_meta_schedule_space_generator.py b/tests/python/meta_schedule/test_meta_schedule_space_generator.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_space_generator.py rename to tests/python/meta_schedule/test_meta_schedule_space_generator.py diff --git a/tests/python/unittest/test_meta_schedule_task_scheduler.py b/tests/python/meta_schedule/test_meta_schedule_task_scheduler.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_task_scheduler.py rename to tests/python/meta_schedule/test_meta_schedule_task_scheduler.py diff --git a/tests/python/unittest/test_meta_schedule_trace_apply.py b/tests/python/meta_schedule/test_meta_schedule_trace_apply.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_trace_apply.py rename to tests/python/meta_schedule/test_meta_schedule_trace_apply.py diff --git a/tests/python/unittest/test_meta_schedule_tune_context.py b/tests/python/meta_schedule/test_meta_schedule_tune_context.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_tune_context.py rename to tests/python/meta_schedule/test_meta_schedule_tune_context.py diff --git a/tests/python/unittest/test_meta_schedule_tune_tir.py b/tests/python/meta_schedule/test_meta_schedule_tune_tir.py similarity index 100% rename from tests/python/unittest/test_meta_schedule_tune_tir.py rename to tests/python/meta_schedule/test_meta_schedule_tune_tir.py diff --git a/tests/python/unittest/test_aot_legalize_packed_call.py b/tests/python/micro/test_aot_legalize_packed_call.py similarity index 100% rename from tests/python/unittest/test_aot_legalize_packed_call.py rename to tests/python/micro/test_aot_legalize_packed_call.py diff --git a/tests/python/unittest/test_crt.py b/tests/python/micro/test_crt.py similarity index 100% rename from tests/python/unittest/test_crt.py rename to tests/python/micro/test_crt.py diff --git a/tests/python/unittest/test_micro_model_library_format.py b/tests/python/micro/test_micro_model_library_format.py similarity index 100% rename from tests/python/unittest/test_micro_model_library_format.py rename to tests/python/micro/test_micro_model_library_format.py diff --git a/tests/python/unittest/test_micro_ms_tuning.py b/tests/python/micro/test_micro_ms_tuning.py similarity index 100% rename from tests/python/unittest/test_micro_ms_tuning.py rename to tests/python/micro/test_micro_ms_tuning.py diff --git a/tests/python/unittest/test_micro_project_api.py b/tests/python/micro/test_micro_project_api.py similarity index 100% rename from tests/python/unittest/test_micro_project_api.py rename to tests/python/micro/test_micro_project_api.py diff --git a/tests/python/unittest/test_micro_transport.py b/tests/python/micro/test_micro_transport.py similarity index 100% rename from tests/python/unittest/test_micro_transport.py rename to tests/python/micro/test_micro_transport.py diff --git a/tests/python/unittest/test_custom_datatypes.py b/tests/python/relay/test_custom_datatypes.py similarity index 100% rename from tests/python/unittest/test_custom_datatypes.py rename to tests/python/relay/test_custom_datatypes.py diff --git a/tests/python/unittest/test_link_params.py b/tests/python/relay/test_link_params.py similarity index 100% rename from tests/python/unittest/test_link_params.py rename to tests/python/relay/test_link_params.py diff --git a/tests/python/unittest/test_div_to_mul.py b/tests/python/relay/test_pass_div_to_mul.py similarity index 100% rename from tests/python/unittest/test_div_to_mul.py rename to tests/python/relay/test_pass_div_to_mul.py diff --git a/tests/python/unittest/test_roofline.py b/tests/python/relay/test_roofline.py similarity index 100% rename from tests/python/unittest/test_roofline.py rename to tests/python/relay/test_roofline.py diff --git a/tests/python/unittest/test_set_input_zero_copy.py b/tests/python/relay/test_set_input_zero_copy.py similarity index 100% rename from tests/python/unittest/test_set_input_zero_copy.py rename to tests/python/relay/test_set_input_zero_copy.py diff --git a/tests/python/unittest/test_evaluator_with_preproc.py b/tests/python/runtime/test_evaluator_with_preproc.py similarity index 100% rename from tests/python/unittest/test_evaluator_with_preproc.py rename to tests/python/runtime/test_evaluator_with_preproc.py diff --git a/tests/python/unittest/test_rpc_base.py b/tests/python/runtime/test_rpc_base.py similarity index 100% rename from tests/python/unittest/test_rpc_base.py rename to tests/python/runtime/test_rpc_base.py diff --git a/tests/python/unittest/test_runtime_container.py b/tests/python/runtime/test_runtime_container.py similarity index 100% rename from tests/python/unittest/test_runtime_container.py rename to tests/python/runtime/test_runtime_container.py diff --git a/tests/python/unittest/test_runtime_dlpack.py b/tests/python/runtime/test_runtime_dlpack.py similarity index 100% rename from tests/python/unittest/test_runtime_dlpack.py rename to tests/python/runtime/test_runtime_dlpack.py diff --git a/tests/python/unittest/test_runtime_error.py b/tests/python/runtime/test_runtime_error.py similarity index 100% rename from tests/python/unittest/test_runtime_error.py rename to tests/python/runtime/test_runtime_error.py diff --git a/tests/python/unittest/test_runtime_extension.py b/tests/python/runtime/test_runtime_extension.py similarity index 100% rename from tests/python/unittest/test_runtime_extension.py rename to tests/python/runtime/test_runtime_extension.py diff --git a/tests/python/unittest/test_runtime_graph.py b/tests/python/runtime/test_runtime_graph.py similarity index 100% rename from tests/python/unittest/test_runtime_graph.py rename to tests/python/runtime/test_runtime_graph.py diff --git a/tests/python/unittest/test_runtime_graph_cuda_graph.py b/tests/python/runtime/test_runtime_graph_cuda_graph.py similarity index 100% rename from tests/python/unittest/test_runtime_graph_cuda_graph.py rename to tests/python/runtime/test_runtime_graph_cuda_graph.py diff --git a/tests/python/unittest/test_runtime_graph_debug.py b/tests/python/runtime/test_runtime_graph_debug.py similarity index 100% rename from tests/python/unittest/test_runtime_graph_debug.py rename to tests/python/runtime/test_runtime_graph_debug.py diff --git a/tests/python/unittest/test_runtime_heterogeneous.py b/tests/python/runtime/test_runtime_heterogeneous.py similarity index 100% rename from tests/python/unittest/test_runtime_heterogeneous.py rename to tests/python/runtime/test_runtime_heterogeneous.py diff --git a/tests/python/unittest/test_runtime_measure.py b/tests/python/runtime/test_runtime_measure.py similarity index 100% rename from tests/python/unittest/test_runtime_measure.py rename to tests/python/runtime/test_runtime_measure.py diff --git a/tests/python/unittest/test_runtime_module_based_interface.py b/tests/python/runtime/test_runtime_module_based_interface.py similarity index 100% rename from tests/python/unittest/test_runtime_module_based_interface.py rename to tests/python/runtime/test_runtime_module_based_interface.py diff --git a/tests/python/unittest/test_runtime_module_export.py b/tests/python/runtime/test_runtime_module_export.py similarity index 100% rename from tests/python/unittest/test_runtime_module_export.py rename to tests/python/runtime/test_runtime_module_export.py diff --git a/tests/python/unittest/test_runtime_module_load.py b/tests/python/runtime/test_runtime_module_load.py similarity index 100% rename from tests/python/unittest/test_runtime_module_load.py rename to tests/python/runtime/test_runtime_module_load.py diff --git a/tests/python/unittest/test_runtime_module_property.py b/tests/python/runtime/test_runtime_module_property.py similarity index 100% rename from tests/python/unittest/test_runtime_module_property.py rename to tests/python/runtime/test_runtime_module_property.py diff --git a/tests/python/unittest/test_runtime_profiling.py b/tests/python/runtime/test_runtime_profiling.py similarity index 100% rename from tests/python/unittest/test_runtime_profiling.py rename to tests/python/runtime/test_runtime_profiling.py diff --git a/tests/python/unittest/test_runtime_rpc.py b/tests/python/runtime/test_runtime_rpc.py similarity index 100% rename from tests/python/unittest/test_runtime_rpc.py rename to tests/python/runtime/test_runtime_rpc.py diff --git a/tests/python/unittest/test_runtime_trace.py b/tests/python/runtime/test_runtime_trace.py similarity index 100% rename from tests/python/unittest/test_runtime_trace.py rename to tests/python/runtime/test_runtime_trace.py diff --git a/tests/python/unittest/test_runtime_vm_profiler.py b/tests/python/runtime/test_runtime_vm_profiler.py similarity index 100% rename from tests/python/unittest/test_runtime_vm_profiler.py rename to tests/python/runtime/test_runtime_vm_profiler.py diff --git a/tests/python/unittest/test_device.py b/tests/python/target/test_device.py similarity index 100% rename from tests/python/unittest/test_device.py rename to tests/python/target/test_device.py diff --git a/tests/python/unittest/test_target_parser_mprofile.py b/tests/python/target/test_target_parser_mprofile.py similarity index 100% rename from tests/python/unittest/test_target_parser_mprofile.py rename to tests/python/target/test_target_parser_mprofile.py diff --git a/tests/python/unittest/test_target_target.py b/tests/python/target/test_target_target.py similarity index 100% rename from tests/python/unittest/test_target_target.py rename to tests/python/target/test_target_target.py diff --git a/tests/python/unittest/test_te_autodiff.py b/tests/python/te/test_te_autodiff.py similarity index 100% rename from tests/python/unittest/test_te_autodiff.py rename to tests/python/te/test_te_autodiff.py diff --git a/tests/python/unittest/test_te_build_lower.py b/tests/python/te/test_te_build_lower.py similarity index 100% rename from tests/python/unittest/test_te_build_lower.py rename to tests/python/te/test_te_build_lower.py diff --git a/tests/python/unittest/test_te_create_primfunc.py b/tests/python/te/test_te_create_primfunc.py similarity index 100% rename from tests/python/unittest/test_te_create_primfunc.py rename to tests/python/te/test_te_create_primfunc.py diff --git a/tests/python/unittest/test_te_group.py b/tests/python/te/test_te_group.py similarity index 100% rename from tests/python/unittest/test_te_group.py rename to tests/python/te/test_te_group.py diff --git a/tests/python/unittest/test_te_hybrid_script.py b/tests/python/te/test_te_hybrid_script.py similarity index 100% rename from tests/python/unittest/test_te_hybrid_script.py rename to tests/python/te/test_te_hybrid_script.py diff --git a/tests/python/unittest/test_te_schedule.py b/tests/python/te/test_te_schedule.py similarity index 100% rename from tests/python/unittest/test_te_schedule.py rename to tests/python/te/test_te_schedule.py diff --git a/tests/python/unittest/test_te_schedule_bound_inference.py b/tests/python/te/test_te_schedule_bound_inference.py similarity index 100% rename from tests/python/unittest/test_te_schedule_bound_inference.py rename to tests/python/te/test_te_schedule_bound_inference.py diff --git a/tests/python/unittest/test_te_schedule_bound_inference_tiling.py b/tests/python/te/test_te_schedule_bound_inference_tiling.py similarity index 100% rename from tests/python/unittest/test_te_schedule_bound_inference_tiling.py rename to tests/python/te/test_te_schedule_bound_inference_tiling.py diff --git a/tests/python/unittest/test_te_schedule_graph.py b/tests/python/te/test_te_schedule_graph.py similarity index 100% rename from tests/python/unittest/test_te_schedule_graph.py rename to tests/python/te/test_te_schedule_graph.py diff --git a/tests/python/unittest/test_te_schedule_lstm.py b/tests/python/te/test_te_schedule_lstm.py similarity index 100% rename from tests/python/unittest/test_te_schedule_lstm.py rename to tests/python/te/test_te_schedule_lstm.py diff --git a/tests/python/unittest/test_te_schedule_ops.py b/tests/python/te/test_te_schedule_ops.py similarity index 100% rename from tests/python/unittest/test_te_schedule_ops.py rename to tests/python/te/test_te_schedule_ops.py diff --git a/tests/python/unittest/test_te_schedule_postproc_rewrite_for_tensor_core.py b/tests/python/te/test_te_schedule_postproc_rewrite_for_tensor_core.py similarity index 100% rename from tests/python/unittest/test_te_schedule_postproc_rewrite_for_tensor_core.py rename to tests/python/te/test_te_schedule_postproc_rewrite_for_tensor_core.py diff --git a/tests/python/unittest/test_te_schedule_tensor_core.py b/tests/python/te/test_te_schedule_tensor_core.py similarity index 100% rename from tests/python/unittest/test_te_schedule_tensor_core.py rename to tests/python/te/test_te_schedule_tensor_core.py diff --git a/tests/python/unittest/test_te_schedule_tensorize.py b/tests/python/te/test_te_schedule_tensorize.py similarity index 100% rename from tests/python/unittest/test_te_schedule_tensorize.py rename to tests/python/te/test_te_schedule_tensorize.py diff --git a/tests/python/unittest/test_te_tag.py b/tests/python/te/test_te_tag.py similarity index 100% rename from tests/python/unittest/test_te_tag.py rename to tests/python/te/test_te_tag.py diff --git a/tests/python/unittest/test_te_tensor.py b/tests/python/te/test_te_tensor.py similarity index 100% rename from tests/python/unittest/test_te_tensor.py rename to tests/python/te/test_te_tensor.py diff --git a/tests/python/unittest/test_te_tensor_overload.py b/tests/python/te/test_te_tensor_overload.py similarity index 100% rename from tests/python/unittest/test_te_tensor_overload.py rename to tests/python/te/test_te_tensor_overload.py diff --git a/tests/python/unittest/test_te_transform_layout.py b/tests/python/te/test_te_transform_layout.py similarity index 100% rename from tests/python/unittest/test_te_transform_layout.py rename to tests/python/te/test_te_transform_layout.py diff --git a/tests/python/unittest/test_te_verify_compute.py b/tests/python/te/test_te_verify_compute.py similarity index 100% rename from tests/python/unittest/test_te_verify_compute.py rename to tests/python/te/test_te_verify_compute.py diff --git a/tests/python/unittest/test_filter_untracked.py b/tests/python/testing/test_filter_untracked.py similarity index 100% rename from tests/python/unittest/test_filter_untracked.py rename to tests/python/testing/test_filter_untracked.py diff --git a/tests/python/unittest/test_format_si_prefix.py b/tests/python/testing/test_format_si_prefix.py similarity index 100% rename from tests/python/unittest/test_format_si_prefix.py rename to tests/python/testing/test_format_si_prefix.py diff --git a/tests/python/unittest/test_gen_requirements.py b/tests/python/testing/test_gen_requirements.py similarity index 100% rename from tests/python/unittest/test_gen_requirements.py rename to tests/python/testing/test_gen_requirements.py diff --git a/tests/python/unittest/test_testing.py b/tests/python/testing/test_testing.py similarity index 100% rename from tests/python/unittest/test_testing.py rename to tests/python/testing/test_testing.py diff --git a/tests/python/unittest/test_tvm_testing_before_after.py b/tests/python/testing/test_tvm_testing_before_after.py similarity index 100% rename from tests/python/unittest/test_tvm_testing_before_after.py rename to tests/python/testing/test_tvm_testing_before_after.py diff --git a/tests/python/unittest/test_tvm_testing_features.py b/tests/python/testing/test_tvm_testing_features.py similarity index 100% rename from tests/python/unittest/test_tvm_testing_features.py rename to tests/python/testing/test_tvm_testing_features.py diff --git a/tests/python/unittest/test_type_annotation_checker.py b/tests/python/testing/test_type_annotation_checker.py similarity index 100% rename from tests/python/unittest/test_type_annotation_checker.py rename to tests/python/testing/test_type_annotation_checker.py diff --git a/tests/python/unittest/test_tir_analysis_calculate_allocated_memory.py b/tests/python/tir-analysis/test_tir_analysis_calculate_allocated_memory.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_calculate_allocated_memory.py rename to tests/python/tir-analysis/test_tir_analysis_calculate_allocated_memory.py diff --git a/tests/python/unittest/test_tir_analysis_calculate_workspace.py b/tests/python/tir-analysis/test_tir_analysis_calculate_workspace.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_calculate_workspace.py rename to tests/python/tir-analysis/test_tir_analysis_calculate_workspace.py diff --git a/tests/python/unittest/test_tir_analysis_detect_buffer_access_lca.py b/tests/python/tir-analysis/test_tir_analysis_detect_buffer_access_lca.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_detect_buffer_access_lca.py rename to tests/python/tir-analysis/test_tir_analysis_detect_buffer_access_lca.py diff --git a/tests/python/tir/analysis/test_device_constraint_utils.py b/tests/python/tir-analysis/test_tir_analysis_device_constraint_utils.py similarity index 100% rename from tests/python/tir/analysis/test_device_constraint_utils.py rename to tests/python/tir-analysis/test_tir_analysis_device_constraint_utils.py diff --git a/tests/python/unittest/test_tir_analysis_estimate_tir_flops.py b/tests/python/tir-analysis/test_tir_analysis_estimate_tir_flops.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_estimate_tir_flops.py rename to tests/python/tir-analysis/test_tir_analysis_estimate_tir_flops.py diff --git a/tests/python/unittest/test_tir_analysis_expr_deep_equal.py b/tests/python/tir-analysis/test_tir_analysis_expr_deep_equal.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_expr_deep_equal.py rename to tests/python/tir-analysis/test_tir_analysis_expr_deep_equal.py diff --git a/tests/python/unittest/test_tir_analysis_get_block_access_region.py b/tests/python/tir-analysis/test_tir_analysis_get_block_access_region.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_get_block_access_region.py rename to tests/python/tir-analysis/test_tir_analysis_get_block_access_region.py diff --git a/tests/python/unittest/test_tir_analysis_identify_memcpy.py b/tests/python/tir-analysis/test_tir_analysis_identify_memcpy.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_identify_memcpy.py rename to tests/python/tir-analysis/test_tir_analysis_identify_memcpy.py diff --git a/tests/python/unittest/test_tir_analysis_oob.py b/tests/python/tir-analysis/test_tir_analysis_oob.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_oob.py rename to tests/python/tir-analysis/test_tir_analysis_oob.py diff --git a/tests/python/unittest/test_tir_analysis_stmt_finding.py b/tests/python/tir-analysis/test_tir_analysis_stmt_finding.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_stmt_finding.py rename to tests/python/tir-analysis/test_tir_analysis_stmt_finding.py diff --git a/tests/python/unittest/test_tir_analysis_usedef.py b/tests/python/tir-analysis/test_tir_analysis_usedef.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_usedef.py rename to tests/python/tir-analysis/test_tir_analysis_usedef.py diff --git a/tests/python/unittest/test_tir_analysis_verify_gpu_code.py b/tests/python/tir-analysis/test_tir_analysis_verify_gpu_code.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_verify_gpu_code.py rename to tests/python/tir-analysis/test_tir_analysis_verify_gpu_code.py diff --git a/tests/python/unittest/test_tir_analysis_verify_memory.py b/tests/python/tir-analysis/test_tir_analysis_verify_memory.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_verify_memory.py rename to tests/python/tir-analysis/test_tir_analysis_verify_memory.py diff --git a/tests/python/unittest/test_tir_analysis_verify_ssa.py b/tests/python/tir-analysis/test_tir_analysis_verify_ssa.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_verify_ssa.py rename to tests/python/tir-analysis/test_tir_analysis_verify_ssa.py diff --git a/tests/python/unittest/test_tir_analysis_verify_well_formed.py b/tests/python/tir-analysis/test_tir_analysis_verify_well_formed.py similarity index 100% rename from tests/python/unittest/test_tir_analysis_verify_well_formed.py rename to tests/python/tir-analysis/test_tir_analysis_verify_well_formed.py diff --git a/tests/python/tir/test_debug_info.py b/tests/python/tir-base/test_debug_info.py similarity index 100% rename from tests/python/tir/test_debug_info.py rename to tests/python/tir-base/test_debug_info.py diff --git a/tests/python/unittest/test_lower_build.py b/tests/python/tir-base/test_lower_build.py similarity index 100% rename from tests/python/unittest/test_lower_build.py rename to tests/python/tir-base/test_lower_build.py diff --git a/tests/python/unittest/test_slice_tir.py b/tests/python/tir-base/test_slice_tir.py similarity index 100% rename from tests/python/unittest/test_slice_tir.py rename to tests/python/tir-base/test_slice_tir.py diff --git a/tests/python/unittest/test_tir_base.py b/tests/python/tir-base/test_tir_base.py similarity index 100% rename from tests/python/unittest/test_tir_base.py rename to tests/python/tir-base/test_tir_base.py diff --git a/tests/python/unittest/test_tir_block_dependence_info.py b/tests/python/tir-base/test_tir_block_dependence_info.py similarity index 100% rename from tests/python/unittest/test_tir_block_dependence_info.py rename to tests/python/tir-base/test_tir_block_dependence_info.py diff --git a/tests/python/unittest/test_tir_buffer.py b/tests/python/tir-base/test_tir_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_buffer.py rename to tests/python/tir-base/test_tir_buffer.py diff --git a/tests/python/unittest/test_tir_constructor.py b/tests/python/tir-base/test_tir_constructor.py similarity index 100% rename from tests/python/unittest/test_tir_constructor.py rename to tests/python/tir-base/test_tir_constructor.py diff --git a/tests/python/unittest/test_tir_data_layout.py b/tests/python/tir-base/test_tir_data_layout.py similarity index 100% rename from tests/python/unittest/test_tir_data_layout.py rename to tests/python/tir-base/test_tir_data_layout.py diff --git a/tests/python/unittest/test_tir_host_func.py b/tests/python/tir-base/test_tir_host_func.py similarity index 100% rename from tests/python/unittest/test_tir_host_func.py rename to tests/python/tir-base/test_tir_host_func.py diff --git a/tests/python/unittest/test_tir_imm_values.py b/tests/python/tir-base/test_tir_imm_values.py similarity index 100% rename from tests/python/unittest/test_tir_imm_values.py rename to tests/python/tir-base/test_tir_imm_values.py diff --git a/tests/python/unittest/test_tir_index_map.py b/tests/python/tir-base/test_tir_index_map.py similarity index 100% rename from tests/python/unittest/test_tir_index_map.py rename to tests/python/tir-base/test_tir_index_map.py diff --git a/tests/python/unittest/test_tir_intrin.py b/tests/python/tir-base/test_tir_intrin.py similarity index 100% rename from tests/python/unittest/test_tir_intrin.py rename to tests/python/tir-base/test_tir_intrin.py diff --git a/tests/python/unittest/test_tir_ir_builder.py b/tests/python/tir-base/test_tir_ir_builder.py similarity index 100% rename from tests/python/unittest/test_tir_ir_builder.py rename to tests/python/tir-base/test_tir_ir_builder.py diff --git a/tests/python/unittest/test_tir_nodes.py b/tests/python/tir-base/test_tir_nodes.py similarity index 100% rename from tests/python/unittest/test_tir_nodes.py rename to tests/python/tir-base/test_tir_nodes.py diff --git a/tests/python/unittest/test_tir_op_types.py b/tests/python/tir-base/test_tir_op_types.py similarity index 100% rename from tests/python/unittest/test_tir_op_types.py rename to tests/python/tir-base/test_tir_op_types.py diff --git a/tests/python/unittest/test_tir_ops.py b/tests/python/tir-base/test_tir_ops.py similarity index 100% rename from tests/python/unittest/test_tir_ops.py rename to tests/python/tir-base/test_tir_ops.py diff --git a/tests/python/unittest/test_tir_ptx_cp_async.py b/tests/python/tir-base/test_tir_ptx_cp_async.py similarity index 100% rename from tests/python/unittest/test_tir_ptx_cp_async.py rename to tests/python/tir-base/test_tir_ptx_cp_async.py diff --git a/tests/python/unittest/test_tir_ptx_ldmatrix.py b/tests/python/tir-base/test_tir_ptx_ldmatrix.py similarity index 100% rename from tests/python/unittest/test_tir_ptx_ldmatrix.py rename to tests/python/tir-base/test_tir_ptx_ldmatrix.py diff --git a/tests/python/unittest/test_tir_ptx_mma.py b/tests/python/tir-base/test_tir_ptx_mma.py similarity index 100% rename from tests/python/unittest/test_tir_ptx_mma.py rename to tests/python/tir-base/test_tir_ptx_mma.py diff --git a/tests/python/unittest/test_tir_ptx_mma_sp.py b/tests/python/tir-base/test_tir_ptx_mma_sp.py similarity index 100% rename from tests/python/unittest/test_tir_ptx_mma_sp.py rename to tests/python/tir-base/test_tir_ptx_mma_sp.py diff --git a/tests/python/unittest/test_tir_renew_defs.py b/tests/python/tir-base/test_tir_renew_defs.py similarity index 100% rename from tests/python/unittest/test_tir_renew_defs.py rename to tests/python/tir-base/test_tir_renew_defs.py diff --git a/tests/python/unittest/test_tir_specialize.py b/tests/python/tir-base/test_tir_specialize.py similarity index 100% rename from tests/python/unittest/test_tir_specialize.py rename to tests/python/tir-base/test_tir_specialize.py diff --git a/tests/python/unittest/test_tir_stmt_functor_ir_transform.py b/tests/python/tir-base/test_tir_stmt_functor_ir_transform.py similarity index 100% rename from tests/python/unittest/test_tir_stmt_functor_ir_transform.py rename to tests/python/tir-base/test_tir_stmt_functor_ir_transform.py diff --git a/tests/python/unittest/test_tir_stmt_functor_substitute.py b/tests/python/tir-base/test_tir_stmt_functor_substitute.py similarity index 100% rename from tests/python/unittest/test_tir_stmt_functor_substitute.py rename to tests/python/tir-base/test_tir_stmt_functor_substitute.py diff --git a/tests/python/unittest/test_tir_structural_equal_hash.py b/tests/python/tir-base/test_tir_structural_equal_hash.py similarity index 100% rename from tests/python/unittest/test_tir_structural_equal_hash.py rename to tests/python/tir-base/test_tir_structural_equal_hash.py diff --git a/tests/python/unittest/test_tir_te_extern_primfunc.py b/tests/python/tir-base/test_tir_te_extern_primfunc.py similarity index 100% rename from tests/python/unittest/test_tir_te_extern_primfunc.py rename to tests/python/tir-base/test_tir_te_extern_primfunc.py diff --git a/tests/python/unittest/test_tir_texture_scope.py b/tests/python/tir-base/test_tir_texture_scope.py similarity index 100% rename from tests/python/unittest/test_tir_texture_scope.py rename to tests/python/tir-base/test_tir_texture_scope.py diff --git a/tests/python/unittest/test_tir_unsafe_hide_buffer_access.py b/tests/python/tir-base/test_tir_unsafe_hide_buffer_access.py similarity index 100% rename from tests/python/unittest/test_tir_unsafe_hide_buffer_access.py rename to tests/python/tir-base/test_tir_unsafe_hide_buffer_access.py diff --git a/tests/python/unittest/test_tir_schedule_analysis.py b/tests/python/tir-schedule/test_tir_schedule_analysis.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_analysis.py rename to tests/python/tir-schedule/test_tir_schedule_analysis.py diff --git a/tests/python/unittest/test_tir_schedule_block_scope.py b/tests/python/tir-schedule/test_tir_schedule_block_scope.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_block_scope.py rename to tests/python/tir-schedule/test_tir_schedule_block_scope.py diff --git a/tests/python/unittest/test_tir_schedule_blockize.py b/tests/python/tir-schedule/test_tir_schedule_blockize.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_blockize.py rename to tests/python/tir-schedule/test_tir_schedule_blockize.py diff --git a/tests/python/unittest/test_tir_schedule_cache_index.py b/tests/python/tir-schedule/test_tir_schedule_cache_index.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_cache_index.py rename to tests/python/tir-schedule/test_tir_schedule_cache_index.py diff --git a/tests/python/unittest/test_tir_schedule_cache_read_write.py b/tests/python/tir-schedule/test_tir_schedule_cache_read_write.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_cache_read_write.py rename to tests/python/tir-schedule/test_tir_schedule_cache_read_write.py diff --git a/tests/python/unittest/test_tir_schedule_compute_at.py b/tests/python/tir-schedule/test_tir_schedule_compute_at.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_compute_at.py rename to tests/python/tir-schedule/test_tir_schedule_compute_at.py diff --git a/tests/python/unittest/test_tir_schedule_compute_inline.py b/tests/python/tir-schedule/test_tir_schedule_compute_inline.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_compute_inline.py rename to tests/python/tir-schedule/test_tir_schedule_compute_inline.py diff --git a/tests/python/unittest/test_tir_schedule_decompose_padding.py b/tests/python/tir-schedule/test_tir_schedule_decompose_padding.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_decompose_padding.py rename to tests/python/tir-schedule/test_tir_schedule_decompose_padding.py diff --git a/tests/python/unittest/test_tir_schedule_error.py b/tests/python/tir-schedule/test_tir_schedule_error.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_error.py rename to tests/python/tir-schedule/test_tir_schedule_error.py diff --git a/tests/python/unittest/test_tir_schedule_for_kind.py b/tests/python/tir-schedule/test_tir_schedule_for_kind.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_for_kind.py rename to tests/python/tir-schedule/test_tir_schedule_for_kind.py diff --git a/tests/python/unittest/test_tir_schedule_instruction.py b/tests/python/tir-schedule/test_tir_schedule_instruction.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_instruction.py rename to tests/python/tir-schedule/test_tir_schedule_instruction.py diff --git a/tests/python/unittest/test_tir_schedule_merge.py b/tests/python/tir-schedule/test_tir_schedule_merge.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_merge.py rename to tests/python/tir-schedule/test_tir_schedule_merge.py diff --git a/tests/python/unittest/test_tir_schedule_pad_einsum.py b/tests/python/tir-schedule/test_tir_schedule_pad_einsum.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_pad_einsum.py rename to tests/python/tir-schedule/test_tir_schedule_pad_einsum.py diff --git a/tests/python/unittest/test_tir_schedule_read_write_at.py b/tests/python/tir-schedule/test_tir_schedule_read_write_at.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_read_write_at.py rename to tests/python/tir-schedule/test_tir_schedule_read_write_at.py diff --git a/tests/python/unittest/test_tir_schedule_reduction.py b/tests/python/tir-schedule/test_tir_schedule_reduction.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_reduction.py rename to tests/python/tir-schedule/test_tir_schedule_reduction.py diff --git a/tests/python/unittest/test_tir_schedule_reindex.py b/tests/python/tir-schedule/test_tir_schedule_reindex.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_reindex.py rename to tests/python/tir-schedule/test_tir_schedule_reindex.py diff --git a/tests/python/unittest/test_tir_schedule_reorder.py b/tests/python/tir-schedule/test_tir_schedule_reorder.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_reorder.py rename to tests/python/tir-schedule/test_tir_schedule_reorder.py diff --git a/tests/python/unittest/test_tir_reorder_block_iter_var.py b/tests/python/tir-schedule/test_tir_schedule_reorder_block_iter_var.py similarity index 100% rename from tests/python/unittest/test_tir_reorder_block_iter_var.py rename to tests/python/tir-schedule/test_tir_schedule_reorder_block_iter_var.py diff --git a/tests/python/unittest/test_tir_schedule_rfactor.py b/tests/python/tir-schedule/test_tir_schedule_rfactor.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_rfactor.py rename to tests/python/tir-schedule/test_tir_schedule_rfactor.py diff --git a/tests/python/unittest/test_tir_schedule_rolling_buffer.py b/tests/python/tir-schedule/test_tir_schedule_rolling_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_rolling_buffer.py rename to tests/python/tir-schedule/test_tir_schedule_rolling_buffer.py diff --git a/tests/python/unittest/test_tir_schedule_sampling.py b/tests/python/tir-schedule/test_tir_schedule_sampling.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_sampling.py rename to tests/python/tir-schedule/test_tir_schedule_sampling.py diff --git a/tests/python/unittest/test_tir_schedule_set_axis_separator.py b/tests/python/tir-schedule/test_tir_schedule_set_axis_separator.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_set_axis_separator.py rename to tests/python/tir-schedule/test_tir_schedule_set_axis_separator.py diff --git a/tests/python/unittest/test_tir_schedule_set_dtype.py b/tests/python/tir-schedule/test_tir_schedule_set_dtype.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_set_dtype.py rename to tests/python/tir-schedule/test_tir_schedule_set_dtype.py diff --git a/tests/python/unittest/test_tir_schedule_set_scope.py b/tests/python/tir-schedule/test_tir_schedule_set_scope.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_set_scope.py rename to tests/python/tir-schedule/test_tir_schedule_set_scope.py diff --git a/tests/python/unittest/test_tir_schedule_split_fuse.py b/tests/python/tir-schedule/test_tir_schedule_split_fuse.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_split_fuse.py rename to tests/python/tir-schedule/test_tir_schedule_split_fuse.py diff --git a/tests/python/unittest/test_tir_schedule_state.py b/tests/python/tir-schedule/test_tir_schedule_state.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_state.py rename to tests/python/tir-schedule/test_tir_schedule_state.py diff --git a/tests/python/unittest/test_tir_schedule_state_cached_flags.py b/tests/python/tir-schedule/test_tir_schedule_state_cached_flags.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_state_cached_flags.py rename to tests/python/tir-schedule/test_tir_schedule_state_cached_flags.py diff --git a/tests/python/unittest/test_tir_schedule_storage_align.py b/tests/python/tir-schedule/test_tir_schedule_storage_align.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_storage_align.py rename to tests/python/tir-schedule/test_tir_schedule_storage_align.py diff --git a/tests/python/unittest/test_tir_schedule_tensorize.py b/tests/python/tir-schedule/test_tir_schedule_tensorize.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_tensorize.py rename to tests/python/tir-schedule/test_tir_schedule_tensorize.py diff --git a/tests/python/unittest/test_tir_schedule_tensorize_ldmatrix_mma_numeric.py b/tests/python/tir-schedule/test_tir_schedule_tensorize_ldmatrix_mma_numeric.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_tensorize_ldmatrix_mma_numeric.py rename to tests/python/tir-schedule/test_tir_schedule_tensorize_ldmatrix_mma_numeric.py diff --git a/tests/python/unittest/test_tir_schedule_tensorize_mfma_numeric.py b/tests/python/tir-schedule/test_tir_schedule_tensorize_mfma_numeric.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_tensorize_mfma_numeric.py rename to tests/python/tir-schedule/test_tir_schedule_tensorize_mfma_numeric.py diff --git a/tests/python/unittest/test_tir_schedule_trace.py b/tests/python/tir-schedule/test_tir_schedule_trace.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_trace.py rename to tests/python/tir-schedule/test_tir_schedule_trace.py diff --git a/tests/python/unittest/test_tir_schedule_transform.py b/tests/python/tir-schedule/test_tir_schedule_transform.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_transform.py rename to tests/python/tir-schedule/test_tir_schedule_transform.py diff --git a/tests/python/unittest/test_tir_schedule_transform_layout.py b/tests/python/tir-schedule/test_tir_schedule_transform_layout.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_transform_layout.py rename to tests/python/tir-schedule/test_tir_schedule_transform_layout.py diff --git a/tests/python/unittest/test_tir_schedule_utilities.py b/tests/python/tir-schedule/test_tir_schedule_utilities.py similarity index 100% rename from tests/python/unittest/test_tir_schedule_utilities.py rename to tests/python/tir-schedule/test_tir_schedule_utilities.py diff --git a/tests/python/unittest/test_tir_transform_annotate_device_regions.py b/tests/python/tir-transform/test_tir_transform_annotate_device_regions.py similarity index 100% rename from tests/python/unittest/test_tir_transform_annotate_device_regions.py rename to tests/python/tir-transform/test_tir_transform_annotate_device_regions.py diff --git a/tests/python/unittest/test_tir_transform_bf16_legalize.py b/tests/python/tir-transform/test_tir_transform_bf16_legalize.py similarity index 100% rename from tests/python/unittest/test_tir_transform_bf16_legalize.py rename to tests/python/tir-transform/test_tir_transform_bf16_legalize.py diff --git a/tests/python/unittest/test_tir_transform_combine_context_call.py b/tests/python/tir-transform/test_tir_transform_combine_context_call.py similarity index 100% rename from tests/python/unittest/test_tir_transform_combine_context_call.py rename to tests/python/tir-transform/test_tir_transform_combine_context_call.py diff --git a/tests/python/unittest/test_tir_transform_common_subexpr_elim.py b/tests/python/tir-transform/test_tir_transform_common_subexpr_elim.py similarity index 100% rename from tests/python/unittest/test_tir_transform_common_subexpr_elim.py rename to tests/python/tir-transform/test_tir_transform_common_subexpr_elim.py diff --git a/tests/python/unittest/test_tir_transform_compact_buffer_region.py b/tests/python/tir-transform/test_tir_transform_compact_buffer_region.py similarity index 100% rename from tests/python/unittest/test_tir_transform_compact_buffer_region.py rename to tests/python/tir-transform/test_tir_transform_compact_buffer_region.py diff --git a/tests/python/unittest/test_tir_transform_convert_blocks_to_opaque.py b/tests/python/tir-transform/test_tir_transform_convert_blocks_to_opaque.py similarity index 100% rename from tests/python/unittest/test_tir_transform_convert_blocks_to_opaque.py rename to tests/python/tir-transform/test_tir_transform_convert_blocks_to_opaque.py diff --git a/tests/python/unittest/test_tir_transform_convert_for_loops_serial.py b/tests/python/tir-transform/test_tir_transform_convert_for_loops_serial.py similarity index 100% rename from tests/python/unittest/test_tir_transform_convert_for_loops_serial.py rename to tests/python/tir-transform/test_tir_transform_convert_for_loops_serial.py diff --git a/tests/python/unittest/test_tir_transform_convert_ssa.py b/tests/python/tir-transform/test_tir_transform_convert_ssa.py similarity index 100% rename from tests/python/unittest/test_tir_transform_convert_ssa.py rename to tests/python/tir-transform/test_tir_transform_convert_ssa.py diff --git a/tests/python/unittest/test_tir_transform_coproc_sync.py b/tests/python/tir-transform/test_tir_transform_coproc_sync.py similarity index 100% rename from tests/python/unittest/test_tir_transform_coproc_sync.py rename to tests/python/tir-transform/test_tir_transform_coproc_sync.py diff --git a/tests/python/unittest/test_tir_transform_decorate_device_scope.py b/tests/python/tir-transform/test_tir_transform_decorate_device_scope.py similarity index 100% rename from tests/python/unittest/test_tir_transform_decorate_device_scope.py rename to tests/python/tir-transform/test_tir_transform_decorate_device_scope.py diff --git a/tests/python/unittest/test_tir_transform_device_kernel_launch.py b/tests/python/tir-transform/test_tir_transform_device_kernel_launch.py similarity index 100% rename from tests/python/unittest/test_tir_transform_device_kernel_launch.py rename to tests/python/tir-transform/test_tir_transform_device_kernel_launch.py diff --git a/tests/python/unittest/test_tir_transform_extract_constants.py b/tests/python/tir-transform/test_tir_transform_extract_constants.py similarity index 100% rename from tests/python/unittest/test_tir_transform_extract_constants.py rename to tests/python/tir-transform/test_tir_transform_extract_constants.py diff --git a/tests/python/unittest/test_tir_transform_flatten_buffer.py b/tests/python/tir-transform/test_tir_transform_flatten_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_transform_flatten_buffer.py rename to tests/python/tir-transform/test_tir_transform_flatten_buffer.py diff --git a/tests/python/unittest/test_tir_transform_fp8_legalize.py b/tests/python/tir-transform/test_tir_transform_fp8_legalize.py similarity index 100% rename from tests/python/unittest/test_tir_transform_fp8_legalize.py rename to tests/python/tir-transform/test_tir_transform_fp8_legalize.py diff --git a/tests/python/unittest/test_tir_transform_helpers.py b/tests/python/tir-transform/test_tir_transform_helpers.py similarity index 100% rename from tests/python/unittest/test_tir_transform_helpers.py rename to tests/python/tir-transform/test_tir_transform_helpers.py diff --git a/tests/python/unittest/test_tir_transform_hoist_expression.py b/tests/python/tir-transform/test_tir_transform_hoist_expression.py similarity index 100% rename from tests/python/unittest/test_tir_transform_hoist_expression.py rename to tests/python/tir-transform/test_tir_transform_hoist_expression.py diff --git a/tests/python/unittest/test_tir_transform_hoist_if.py b/tests/python/tir-transform/test_tir_transform_hoist_if.py similarity index 100% rename from tests/python/unittest/test_tir_transform_hoist_if.py rename to tests/python/tir-transform/test_tir_transform_hoist_if.py diff --git a/tests/python/unittest/test_tir_transform_inject_copy_intrin.py b/tests/python/tir-transform/test_tir_transform_inject_copy_intrin.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_copy_intrin.py rename to tests/python/tir-transform/test_tir_transform_inject_copy_intrin.py diff --git a/tests/python/unittest/test_tir_transform_inject_double_buffer.py b/tests/python/tir-transform/test_tir_transform_inject_double_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_double_buffer.py rename to tests/python/tir-transform/test_tir_transform_inject_double_buffer.py diff --git a/tests/python/unittest/test_tir_transform_inject_permuted_layout.py b/tests/python/tir-transform/test_tir_transform_inject_permuted_layout.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_permuted_layout.py rename to tests/python/tir-transform/test_tir_transform_inject_permuted_layout.py diff --git a/tests/python/unittest/test_tir_transform_inject_ptx_async_copy.py b/tests/python/tir-transform/test_tir_transform_inject_ptx_async_copy.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_ptx_async_copy.py rename to tests/python/tir-transform/test_tir_transform_inject_ptx_async_copy.py diff --git a/tests/python/unittest/test_tir_transform_inject_rolling_buffer.py b/tests/python/tir-transform/test_tir_transform_inject_rolling_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_rolling_buffer.py rename to tests/python/tir-transform/test_tir_transform_inject_rolling_buffer.py diff --git a/tests/python/unittest/test_tir_transform_inject_software_pipeline.py b/tests/python/tir-transform/test_tir_transform_inject_software_pipeline.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_software_pipeline.py rename to tests/python/tir-transform/test_tir_transform_inject_software_pipeline.py diff --git a/tests/python/unittest/test_tir_transform_inject_virtual_thread.py b/tests/python/tir-transform/test_tir_transform_inject_virtual_thread.py similarity index 100% rename from tests/python/unittest/test_tir_transform_inject_virtual_thread.py rename to tests/python/tir-transform/test_tir_transform_inject_virtual_thread.py diff --git a/tests/python/unittest/test_tir_transform_instrument_bound_checkers.py b/tests/python/tir-transform/test_tir_transform_instrument_bound_checkers.py similarity index 100% rename from tests/python/unittest/test_tir_transform_instrument_bound_checkers.py rename to tests/python/tir-transform/test_tir_transform_instrument_bound_checkers.py diff --git a/tests/python/unittest/test_tir_transform_lift_attr_scope.py b/tests/python/tir-transform/test_tir_transform_lift_attr_scope.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lift_attr_scope.py rename to tests/python/tir-transform/test_tir_transform_lift_attr_scope.py diff --git a/tests/python/unittest/test_tir_transform_lift_thread_binding.py b/tests/python/tir-transform/test_tir_transform_lift_thread_binding.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lift_thread_binding.py rename to tests/python/tir-transform/test_tir_transform_lift_thread_binding.py diff --git a/tests/python/unittest/test_tir_transform_loop_partition.py b/tests/python/tir-transform/test_tir_transform_loop_partition.py similarity index 100% rename from tests/python/unittest/test_tir_transform_loop_partition.py rename to tests/python/tir-transform/test_tir_transform_loop_partition.py diff --git a/tests/python/unittest/test_tir_transform_lower_cross_thread_reduction.py b/tests/python/tir-transform/test_tir_transform_lower_cross_thread_reduction.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_cross_thread_reduction.py rename to tests/python/tir-transform/test_tir_transform_lower_cross_thread_reduction.py diff --git a/tests/python/unittest/test_tir_transform_lower_device_storage_access_info.py b/tests/python/tir-transform/test_tir_transform_lower_device_storage_access_info.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_device_storage_access_info.py rename to tests/python/tir-transform/test_tir_transform_lower_device_storage_access_info.py diff --git a/tests/python/unittest/test_tir_transform_lower_init_block.py b/tests/python/tir-transform/test_tir_transform_lower_init_block.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_init_block.py rename to tests/python/tir-transform/test_tir_transform_lower_init_block.py diff --git a/tests/python/unittest/test_tir_transform_lower_intrin.py b/tests/python/tir-transform/test_tir_transform_lower_intrin.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_intrin.py rename to tests/python/tir-transform/test_tir_transform_lower_intrin.py diff --git a/tests/python/unittest/test_tir_lower_match_buffer.py b/tests/python/tir-transform/test_tir_transform_lower_match_buffer.py similarity index 100% rename from tests/python/unittest/test_tir_lower_match_buffer.py rename to tests/python/tir-transform/test_tir_transform_lower_match_buffer.py diff --git a/tests/python/unittest/test_tir_transform_lower_opaque_block.py b/tests/python/tir-transform/test_tir_transform_lower_opaque_block.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_opaque_block.py rename to tests/python/tir-transform/test_tir_transform_lower_opaque_block.py diff --git a/tests/python/unittest/test_tir_transform_lower_thread_all_reduce.py b/tests/python/tir-transform/test_tir_transform_lower_thread_all_reduce.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_thread_all_reduce.py rename to tests/python/tir-transform/test_tir_transform_lower_thread_all_reduce.py diff --git a/tests/python/unittest/test_tir_transform_lower_tvm_builtin.py b/tests/python/tir-transform/test_tir_transform_lower_tvm_builtin.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_tvm_builtin.py rename to tests/python/tir-transform/test_tir_transform_lower_tvm_builtin.py diff --git a/tests/python/unittest/test_tir_transform_lower_warp_memory.py b/tests/python/tir-transform/test_tir_transform_lower_warp_memory.py similarity index 100% rename from tests/python/unittest/test_tir_transform_lower_warp_memory.py rename to tests/python/tir-transform/test_tir_transform_lower_warp_memory.py diff --git a/tests/python/unittest/test_tir_transform_make_packed_api.py b/tests/python/tir-transform/test_tir_transform_make_packed_api.py similarity index 100% rename from tests/python/unittest/test_tir_transform_make_packed_api.py rename to tests/python/tir-transform/test_tir_transform_make_packed_api.py diff --git a/tests/python/unittest/test_tir_transform_make_unpacked_api.py b/tests/python/tir-transform/test_tir_transform_make_unpacked_api.py similarity index 100% rename from tests/python/unittest/test_tir_transform_make_unpacked_api.py rename to tests/python/tir-transform/test_tir_transform_make_unpacked_api.py diff --git a/tests/python/unittest/test_tir_transform_manifest_shared_memory_local_stage.py b/tests/python/tir-transform/test_tir_transform_manifest_shared_memory_local_stage.py similarity index 100% rename from tests/python/unittest/test_tir_transform_manifest_shared_memory_local_stage.py rename to tests/python/tir-transform/test_tir_transform_manifest_shared_memory_local_stage.py diff --git a/tests/python/unittest/test_tir_transform_memhammer_lower_auto_copy.py b/tests/python/tir-transform/test_tir_transform_memhammer_lower_auto_copy.py similarity index 100% rename from tests/python/unittest/test_tir_transform_memhammer_lower_auto_copy.py rename to tests/python/tir-transform/test_tir_transform_memhammer_lower_auto_copy.py diff --git a/tests/python/unittest/test_tir_transform_merge_dynamic_shared_memory_allocations.py b/tests/python/tir-transform/test_tir_transform_merge_dynamic_shared_memory_allocations.py similarity index 100% rename from tests/python/unittest/test_tir_transform_merge_dynamic_shared_memory_allocations.py rename to tests/python/tir-transform/test_tir_transform_merge_dynamic_shared_memory_allocations.py diff --git a/tests/python/unittest/test_tir_transform_narrow_datatype.py b/tests/python/tir-transform/test_tir_transform_narrow_datatype.py similarity index 100% rename from tests/python/unittest/test_tir_transform_narrow_datatype.py rename to tests/python/tir-transform/test_tir_transform_narrow_datatype.py diff --git a/tests/python/unittest/test_tir_transform_plan_update_buffer_allocation_location.py b/tests/python/tir-transform/test_tir_transform_plan_update_buffer_allocation_location.py similarity index 100% rename from tests/python/unittest/test_tir_transform_plan_update_buffer_allocation_location.py rename to tests/python/tir-transform/test_tir_transform_plan_update_buffer_allocation_location.py diff --git a/tests/python/unittest/test_tir_transform_pointer_value_type_rewrite.py b/tests/python/tir-transform/test_tir_transform_pointer_value_type_rewrite.py similarity index 100% rename from tests/python/unittest/test_tir_transform_pointer_value_type_rewrite.py rename to tests/python/tir-transform/test_tir_transform_pointer_value_type_rewrite.py diff --git a/tests/python/unittest/test_tir_transform_prim_func_pass.py b/tests/python/tir-transform/test_tir_transform_prim_func_pass.py similarity index 100% rename from tests/python/unittest/test_tir_transform_prim_func_pass.py rename to tests/python/tir-transform/test_tir_transform_prim_func_pass.py diff --git a/tests/python/unittest/test_tir_transform_profiling_instr.py b/tests/python/tir-transform/test_tir_transform_profiling_instr.py similarity index 100% rename from tests/python/unittest/test_tir_transform_profiling_instr.py rename to tests/python/tir-transform/test_tir_transform_profiling_instr.py diff --git a/tests/python/unittest/test_tir_transform_reduce_branching_through_overcompute.py b/tests/python/tir-transform/test_tir_transform_reduce_branching_through_overcompute.py similarity index 100% rename from tests/python/unittest/test_tir_transform_reduce_branching_through_overcompute.py rename to tests/python/tir-transform/test_tir_transform_reduce_branching_through_overcompute.py diff --git a/tests/python/unittest/test_tir_transform_remove_assume.py b/tests/python/tir-transform/test_tir_transform_remove_assume.py similarity index 100% rename from tests/python/unittest/test_tir_transform_remove_assume.py rename to tests/python/tir-transform/test_tir_transform_remove_assume.py diff --git a/tests/python/unittest/test_tir_transform_remove_no_op.py b/tests/python/tir-transform/test_tir_transform_remove_no_op.py similarity index 100% rename from tests/python/unittest/test_tir_transform_remove_no_op.py rename to tests/python/tir-transform/test_tir_transform_remove_no_op.py diff --git a/tests/python/unittest/test_tir_transform_remove_undef.py b/tests/python/tir-transform/test_tir_transform_remove_undef.py similarity index 100% rename from tests/python/unittest/test_tir_transform_remove_undef.py rename to tests/python/tir-transform/test_tir_transform_remove_undef.py diff --git a/tests/python/unittest/test_tir_transform_remove_weight_layout_rewrite_block.py b/tests/python/tir-transform/test_tir_transform_remove_weight_layout_rewrite_block.py similarity index 100% rename from tests/python/unittest/test_tir_transform_remove_weight_layout_rewrite_block.py rename to tests/python/tir-transform/test_tir_transform_remove_weight_layout_rewrite_block.py diff --git a/tests/python/unittest/test_tir_transform_renormalize_split_pattern.py b/tests/python/tir-transform/test_tir_transform_renormalize_split_pattern.py similarity index 100% rename from tests/python/unittest/test_tir_transform_renormalize_split_pattern.py rename to tests/python/tir-transform/test_tir_transform_renormalize_split_pattern.py diff --git a/tests/python/unittest/test_tir_transform_rewrite_unsafe_select.py b/tests/python/tir-transform/test_tir_transform_rewrite_unsafe_select.py similarity index 100% rename from tests/python/unittest/test_tir_transform_rewrite_unsafe_select.py rename to tests/python/tir-transform/test_tir_transform_rewrite_unsafe_select.py diff --git a/tests/python/unittest/test_tir_transform_simplify.py b/tests/python/tir-transform/test_tir_transform_simplify.py similarity index 100% rename from tests/python/unittest/test_tir_transform_simplify.py rename to tests/python/tir-transform/test_tir_transform_simplify.py diff --git a/tests/python/unittest/test_tir_transform_split_host_device.py b/tests/python/tir-transform/test_tir_transform_split_host_device.py similarity index 100% rename from tests/python/unittest/test_tir_transform_split_host_device.py rename to tests/python/tir-transform/test_tir_transform_split_host_device.py diff --git a/tests/python/unittest/test_tir_transform_storage_flatten.py b/tests/python/tir-transform/test_tir_transform_storage_flatten.py similarity index 100% rename from tests/python/unittest/test_tir_transform_storage_flatten.py rename to tests/python/tir-transform/test_tir_transform_storage_flatten.py diff --git a/tests/python/unittest/test_tir_transform_storage_rewrite.py b/tests/python/tir-transform/test_tir_transform_storage_rewrite.py similarity index 100% rename from tests/python/unittest/test_tir_transform_storage_rewrite.py rename to tests/python/tir-transform/test_tir_transform_storage_rewrite.py diff --git a/tests/python/unittest/test_tir_transform_thread_sync.py b/tests/python/tir-transform/test_tir_transform_thread_sync.py similarity index 100% rename from tests/python/unittest/test_tir_transform_thread_sync.py rename to tests/python/tir-transform/test_tir_transform_thread_sync.py diff --git a/tests/python/unittest/test_tir_transform_unify_thread_binding.py b/tests/python/tir-transform/test_tir_transform_unify_thread_binding.py similarity index 100% rename from tests/python/unittest/test_tir_transform_unify_thread_binding.py rename to tests/python/tir-transform/test_tir_transform_unify_thread_binding.py diff --git a/tests/python/unittest/test_tir_transform_unroll_loop.py b/tests/python/tir-transform/test_tir_transform_unroll_loop.py similarity index 100% rename from tests/python/unittest/test_tir_transform_unroll_loop.py rename to tests/python/tir-transform/test_tir_transform_unroll_loop.py diff --git a/tests/python/unittest/test_tir_transform_vectorize.py b/tests/python/tir-transform/test_tir_transform_vectorize.py similarity index 100% rename from tests/python/unittest/test_tir_transform_vectorize.py rename to tests/python/tir-transform/test_tir_transform_vectorize.py diff --git a/tests/python/unittest/test_tir_usmp_algo.py b/tests/python/tir-usmp/test_tir_usmp_algo.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_algo.py rename to tests/python/tir-usmp/test_tir_usmp_algo.py diff --git a/tests/python/unittest/test_tir_usmp_algo_hill_climb.py b/tests/python/tir-usmp/test_tir_usmp_algo_hill_climb.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_algo_hill_climb.py rename to tests/python/tir-usmp/test_tir_usmp_algo_hill_climb.py diff --git a/tests/python/unittest/test_tir_usmp_analysis_extract_bufferinfo.py b/tests/python/tir-usmp/test_tir_usmp_analysis_extract_bufferinfo.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_analysis_extract_bufferinfo.py rename to tests/python/tir-usmp/test_tir_usmp_analysis_extract_bufferinfo.py diff --git a/tests/python/unittest/test_tir_usmp_transform_convert_pool_allocations_to_offsets.py b/tests/python/tir-usmp/test_tir_usmp_transform_convert_pool_allocations_to_offsets.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_transform_convert_pool_allocations_to_offsets.py rename to tests/python/tir-usmp/test_tir_usmp_transform_convert_pool_allocations_to_offsets.py diff --git a/tests/python/unittest/test_tir_usmp_transform_create_io_allocates.py b/tests/python/tir-usmp/test_tir_usmp_transform_create_io_allocates.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_transform_create_io_allocates.py rename to tests/python/tir-usmp/test_tir_usmp_transform_create_io_allocates.py diff --git a/tests/python/unittest/test_tir_usmp_utils.py b/tests/python/tir-usmp/test_tir_usmp_utils.py similarity index 100% rename from tests/python/unittest/test_tir_usmp_utils.py rename to tests/python/tir-usmp/test_tir_usmp_utils.py diff --git a/tests/python/topi/python/common.py b/tests/python/topi/common.py similarity index 100% rename from tests/python/topi/python/common.py rename to tests/python/topi/common.py diff --git a/tests/python/topi/python/test_fifo_buffer.py b/tests/python/topi/test_fifo_buffer.py similarity index 100% rename from tests/python/topi/python/test_fifo_buffer.py rename to tests/python/topi/test_fifo_buffer.py diff --git a/tests/python/topi/python/test_topi_argwhere.py b/tests/python/topi/test_topi_argwhere.py similarity index 100% rename from tests/python/topi/python/test_topi_argwhere.py rename to tests/python/topi/test_topi_argwhere.py diff --git a/tests/python/topi/python/test_topi_basic.py b/tests/python/topi/test_topi_basic.py similarity index 100% rename from tests/python/topi/python/test_topi_basic.py rename to tests/python/topi/test_topi_basic.py diff --git a/tests/python/topi/python/test_topi_batch_matmul.py b/tests/python/topi/test_topi_batch_matmul.py similarity index 100% rename from tests/python/topi/python/test_topi_batch_matmul.py rename to tests/python/topi/test_topi_batch_matmul.py diff --git a/tests/python/topi/python/test_topi_batch_matmul_tensorcore.py b/tests/python/topi/test_topi_batch_matmul_tensorcore.py similarity index 100% rename from tests/python/topi/python/test_topi_batch_matmul_tensorcore.py rename to tests/python/topi/test_topi_batch_matmul_tensorcore.py diff --git a/tests/python/topi/python/test_topi_batch_norm.py b/tests/python/topi/test_topi_batch_norm.py similarity index 100% rename from tests/python/topi/python/test_topi_batch_norm.py rename to tests/python/topi/test_topi_batch_norm.py diff --git a/tests/python/topi/python/test_topi_batch_to_space_nd.py b/tests/python/topi/test_topi_batch_to_space_nd.py similarity index 100% rename from tests/python/topi/python/test_topi_batch_to_space_nd.py rename to tests/python/topi/test_topi_batch_to_space_nd.py diff --git a/tests/python/topi/python/test_topi_bitserial_conv2d.py b/tests/python/topi/test_topi_bitserial_conv2d.py similarity index 100% rename from tests/python/topi/python/test_topi_bitserial_conv2d.py rename to tests/python/topi/test_topi_bitserial_conv2d.py diff --git a/tests/python/topi/python/test_topi_bitserial_conv2d_rasp.py b/tests/python/topi/test_topi_bitserial_conv2d_rasp.py similarity index 100% rename from tests/python/topi/python/test_topi_bitserial_conv2d_rasp.py rename to tests/python/topi/test_topi_bitserial_conv2d_rasp.py diff --git a/tests/python/topi/python/test_topi_bitserial_dense.py b/tests/python/topi/test_topi_bitserial_dense.py similarity index 100% rename from tests/python/topi/python/test_topi_bitserial_dense.py rename to tests/python/topi/test_topi_bitserial_dense.py diff --git a/tests/python/topi/python/test_topi_bnn.py b/tests/python/topi/test_topi_bnn.py similarity index 100% rename from tests/python/topi/python/test_topi_bnn.py rename to tests/python/topi/test_topi_bnn.py diff --git a/tests/python/topi/python/test_topi_broadcast.py b/tests/python/topi/test_topi_broadcast.py similarity index 100% rename from tests/python/topi/python/test_topi_broadcast.py rename to tests/python/topi/test_topi_broadcast.py diff --git a/tests/python/topi/python/test_topi_clip.py b/tests/python/topi/test_topi_clip.py similarity index 100% rename from tests/python/topi/python/test_topi_clip.py rename to tests/python/topi/test_topi_clip.py diff --git a/tests/python/topi/python/test_topi_conv1d.py b/tests/python/topi/test_topi_conv1d.py similarity index 100% rename from tests/python/topi/python/test_topi_conv1d.py rename to tests/python/topi/test_topi_conv1d.py diff --git a/tests/python/topi/python/test_topi_conv1d_transpose_ncw.py b/tests/python/topi/test_topi_conv1d_transpose_ncw.py similarity index 100% rename from tests/python/topi/python/test_topi_conv1d_transpose_ncw.py rename to tests/python/topi/test_topi_conv1d_transpose_ncw.py diff --git a/tests/python/topi/python/test_topi_conv2d_NCHWc.py b/tests/python/topi/test_topi_conv2d_NCHWc.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_NCHWc.py rename to tests/python/topi/test_topi_conv2d_NCHWc.py diff --git a/tests/python/topi/python/test_topi_conv2d_hwcn.py b/tests/python/topi/test_topi_conv2d_hwcn.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_hwcn.py rename to tests/python/topi/test_topi_conv2d_hwcn.py diff --git a/tests/python/topi/python/test_topi_conv2d_hwnc_tensorcore.py b/tests/python/topi/test_topi_conv2d_hwnc_tensorcore.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_hwnc_tensorcore.py rename to tests/python/topi/test_topi_conv2d_hwnc_tensorcore.py diff --git a/tests/python/topi/python/test_topi_conv2d_int8.py b/tests/python/topi/test_topi_conv2d_int8.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_int8.py rename to tests/python/topi/test_topi_conv2d_int8.py diff --git a/tests/python/topi/python/test_topi_conv2d_nchw.py b/tests/python/topi/test_topi_conv2d_nchw.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_nchw.py rename to tests/python/topi/test_topi_conv2d_nchw.py diff --git a/tests/python/topi/python/test_topi_conv2d_nhwc.py b/tests/python/topi/test_topi_conv2d_nhwc.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_nhwc.py rename to tests/python/topi/test_topi_conv2d_nhwc.py diff --git a/tests/python/topi/python/test_topi_conv2d_nhwc_pack_int8.py b/tests/python/topi/test_topi_conv2d_nhwc_pack_int8.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_nhwc_pack_int8.py rename to tests/python/topi/test_topi_conv2d_nhwc_pack_int8.py diff --git a/tests/python/topi/python/test_topi_conv2d_nhwc_tensorcore.py b/tests/python/topi/test_topi_conv2d_nhwc_tensorcore.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_nhwc_tensorcore.py rename to tests/python/topi/test_topi_conv2d_nhwc_tensorcore.py diff --git a/tests/python/topi/python/test_topi_conv2d_nhwc_winograd.py b/tests/python/topi/test_topi_conv2d_nhwc_winograd.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_nhwc_winograd.py rename to tests/python/topi/test_topi_conv2d_nhwc_winograd.py diff --git a/tests/python/topi/python/test_topi_conv2d_tensordot_opts.py b/tests/python/topi/test_topi_conv2d_tensordot_opts.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_tensordot_opts.py rename to tests/python/topi/test_topi_conv2d_tensordot_opts.py diff --git a/tests/python/topi/python/test_topi_conv2d_transpose_nchw.py b/tests/python/topi/test_topi_conv2d_transpose_nchw.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_transpose_nchw.py rename to tests/python/topi/test_topi_conv2d_transpose_nchw.py diff --git a/tests/python/topi/python/test_topi_conv2d_winograd.py b/tests/python/topi/test_topi_conv2d_winograd.py similarity index 100% rename from tests/python/topi/python/test_topi_conv2d_winograd.py rename to tests/python/topi/test_topi_conv2d_winograd.py diff --git a/tests/python/topi/python/test_topi_conv3d_ncdhw.py b/tests/python/topi/test_topi_conv3d_ncdhw.py similarity index 100% rename from tests/python/topi/python/test_topi_conv3d_ncdhw.py rename to tests/python/topi/test_topi_conv3d_ncdhw.py diff --git a/tests/python/topi/python/test_topi_conv3d_ndhwc.py b/tests/python/topi/test_topi_conv3d_ndhwc.py similarity index 100% rename from tests/python/topi/python/test_topi_conv3d_ndhwc.py rename to tests/python/topi/test_topi_conv3d_ndhwc.py diff --git a/tests/python/topi/python/test_topi_conv3d_ndhwc_tensorcore.py b/tests/python/topi/test_topi_conv3d_ndhwc_tensorcore.py similarity index 100% rename from tests/python/topi/python/test_topi_conv3d_ndhwc_tensorcore.py rename to tests/python/topi/test_topi_conv3d_ndhwc_tensorcore.py diff --git a/tests/python/topi/python/test_topi_conv3d_transpose_ncdhw.py b/tests/python/topi/test_topi_conv3d_transpose_ncdhw.py similarity index 100% rename from tests/python/topi/python/test_topi_conv3d_transpose_ncdhw.py rename to tests/python/topi/test_topi_conv3d_transpose_ncdhw.py diff --git a/tests/python/topi/python/test_topi_conv3d_winograd.py b/tests/python/topi/test_topi_conv3d_winograd.py similarity index 100% rename from tests/python/topi/python/test_topi_conv3d_winograd.py rename to tests/python/topi/test_topi_conv3d_winograd.py diff --git a/tests/python/topi/python/test_topi_correlation.py b/tests/python/topi/test_topi_correlation.py similarity index 100% rename from tests/python/topi/python/test_topi_correlation.py rename to tests/python/topi/test_topi_correlation.py diff --git a/tests/python/topi/python/test_topi_deformable_conv2d.py b/tests/python/topi/test_topi_deformable_conv2d.py similarity index 100% rename from tests/python/topi/python/test_topi_deformable_conv2d.py rename to tests/python/topi/test_topi_deformable_conv2d.py diff --git a/tests/python/topi/python/test_topi_dense.py b/tests/python/topi/test_topi_dense.py similarity index 100% rename from tests/python/topi/python/test_topi_dense.py rename to tests/python/topi/test_topi_dense.py diff --git a/tests/python/topi/python/test_topi_dense_tensorcore.py b/tests/python/topi/test_topi_dense_tensorcore.py similarity index 100% rename from tests/python/topi/python/test_topi_dense_tensorcore.py rename to tests/python/topi/test_topi_dense_tensorcore.py diff --git a/tests/python/topi/python/test_topi_depth_to_space.py b/tests/python/topi/test_topi_depth_to_space.py similarity index 100% rename from tests/python/topi/python/test_topi_depth_to_space.py rename to tests/python/topi/test_topi_depth_to_space.py diff --git a/tests/python/topi/python/test_topi_depthwise_conv2d.py b/tests/python/topi/test_topi_depthwise_conv2d.py similarity index 100% rename from tests/python/topi/python/test_topi_depthwise_conv2d.py rename to tests/python/topi/test_topi_depthwise_conv2d.py diff --git a/tests/python/topi/python/test_topi_depthwise_conv2d_back_input.py b/tests/python/topi/test_topi_depthwise_conv2d_back_input.py similarity index 100% rename from tests/python/topi/python/test_topi_depthwise_conv2d_back_input.py rename to tests/python/topi/test_topi_depthwise_conv2d_back_input.py diff --git a/tests/python/topi/python/test_topi_depthwise_conv2d_back_weight.py b/tests/python/topi/test_topi_depthwise_conv2d_back_weight.py similarity index 100% rename from tests/python/topi/python/test_topi_depthwise_conv2d_back_weight.py rename to tests/python/topi/test_topi_depthwise_conv2d_back_weight.py diff --git a/tests/python/topi/python/test_topi_dft.py b/tests/python/topi/test_topi_dft.py similarity index 100% rename from tests/python/topi/python/test_topi_dft.py rename to tests/python/topi/test_topi_dft.py diff --git a/tests/python/topi/python/test_topi_dilate.py b/tests/python/topi/test_topi_dilate.py similarity index 100% rename from tests/python/topi/python/test_topi_dilate.py rename to tests/python/topi/test_topi_dilate.py diff --git a/tests/python/topi/python/test_topi_einsum.py b/tests/python/topi/test_topi_einsum.py similarity index 100% rename from tests/python/topi/python/test_topi_einsum.py rename to tests/python/topi/test_topi_einsum.py diff --git a/tests/python/topi/python/test_topi_group_conv2d.py b/tests/python/topi/test_topi_group_conv2d.py similarity index 100% rename from tests/python/topi/python/test_topi_group_conv2d.py rename to tests/python/topi/test_topi_group_conv2d.py diff --git a/tests/python/topi/python/test_topi_group_conv2d_NCHWc_int8.py b/tests/python/topi/test_topi_group_conv2d_NCHWc_int8.py similarity index 100% rename from tests/python/topi/python/test_topi_group_conv2d_NCHWc_int8.py rename to tests/python/topi/test_topi_group_conv2d_NCHWc_int8.py diff --git a/tests/python/topi/python/test_topi_group_conv2d_transpose.py b/tests/python/topi/test_topi_group_conv2d_transpose.py similarity index 100% rename from tests/python/topi/python/test_topi_group_conv2d_transpose.py rename to tests/python/topi/test_topi_group_conv2d_transpose.py diff --git a/tests/python/topi/python/test_topi_group_norm.py b/tests/python/topi/test_topi_group_norm.py similarity index 100% rename from tests/python/topi/python/test_topi_group_norm.py rename to tests/python/topi/test_topi_group_norm.py diff --git a/tests/python/topi/python/test_topi_image.py b/tests/python/topi/test_topi_image.py similarity index 100% rename from tests/python/topi/python/test_topi_image.py rename to tests/python/topi/test_topi_image.py diff --git a/tests/python/topi/python/test_topi_instance_norm.py b/tests/python/topi/test_topi_instance_norm.py similarity index 100% rename from tests/python/topi/python/test_topi_instance_norm.py rename to tests/python/topi/test_topi_instance_norm.py diff --git a/tests/python/topi/python/test_topi_layer_norm.py b/tests/python/topi/test_topi_layer_norm.py similarity index 100% rename from tests/python/topi/python/test_topi_layer_norm.py rename to tests/python/topi/test_topi_layer_norm.py diff --git a/tests/python/topi/python/test_topi_loss.py b/tests/python/topi/test_topi_loss.py similarity index 100% rename from tests/python/topi/python/test_topi_loss.py rename to tests/python/topi/test_topi_loss.py diff --git a/tests/python/topi/python/test_topi_lrn.py b/tests/python/topi/test_topi_lrn.py similarity index 100% rename from tests/python/topi/python/test_topi_lrn.py rename to tests/python/topi/test_topi_lrn.py diff --git a/tests/python/topi/python/test_topi_lstm.py b/tests/python/topi/test_topi_lstm.py similarity index 100% rename from tests/python/topi/python/test_topi_lstm.py rename to tests/python/topi/test_topi_lstm.py diff --git a/tests/python/topi/python/test_topi_math.py b/tests/python/topi/test_topi_math.py similarity index 100% rename from tests/python/topi/python/test_topi_math.py rename to tests/python/topi/test_topi_math.py diff --git a/tests/python/topi/python/test_topi_matmul.py b/tests/python/topi/test_topi_matmul.py similarity index 100% rename from tests/python/topi/python/test_topi_matmul.py rename to tests/python/topi/test_topi_matmul.py diff --git a/tests/python/topi/python/test_topi_pooling.py b/tests/python/topi/test_topi_pooling.py similarity index 100% rename from tests/python/topi/python/test_topi_pooling.py rename to tests/python/topi/test_topi_pooling.py diff --git a/tests/python/topi/python/test_topi_prng.py b/tests/python/topi/test_topi_prng.py similarity index 100% rename from tests/python/topi/python/test_topi_prng.py rename to tests/python/topi/test_topi_prng.py diff --git a/tests/python/topi/python/test_topi_qnn.py b/tests/python/topi/test_topi_qnn.py similarity index 100% rename from tests/python/topi/python/test_topi_qnn.py rename to tests/python/topi/test_topi_qnn.py diff --git a/tests/python/topi/python/test_topi_reduce.py b/tests/python/topi/test_topi_reduce.py similarity index 100% rename from tests/python/topi/python/test_topi_reduce.py rename to tests/python/topi/test_topi_reduce.py diff --git a/tests/python/topi/python/test_topi_relu.py b/tests/python/topi/test_topi_relu.py similarity index 100% rename from tests/python/topi/python/test_topi_relu.py rename to tests/python/topi/test_topi_relu.py diff --git a/tests/python/topi/python/test_topi_reorg.py b/tests/python/topi/test_topi_reorg.py similarity index 100% rename from tests/python/topi/python/test_topi_reorg.py rename to tests/python/topi/test_topi_reorg.py diff --git a/tests/python/topi/python/test_topi_rms_norm.py b/tests/python/topi/test_topi_rms_norm.py similarity index 100% rename from tests/python/topi/python/test_topi_rms_norm.py rename to tests/python/topi/test_topi_rms_norm.py diff --git a/tests/python/topi/python/test_topi_scan.py b/tests/python/topi/test_topi_scan.py similarity index 100% rename from tests/python/topi/python/test_topi_scan.py rename to tests/python/topi/test_topi_scan.py diff --git a/tests/python/topi/python/test_topi_scatter.py b/tests/python/topi/test_topi_scatter.py similarity index 100% rename from tests/python/topi/python/test_topi_scatter.py rename to tests/python/topi/test_topi_scatter.py diff --git a/tests/python/topi/python/test_topi_searchsorted.py b/tests/python/topi/test_topi_searchsorted.py similarity index 100% rename from tests/python/topi/python/test_topi_searchsorted.py rename to tests/python/topi/test_topi_searchsorted.py diff --git a/tests/python/topi/python/test_topi_softmax.py b/tests/python/topi/test_topi_softmax.py similarity index 100% rename from tests/python/topi/python/test_topi_softmax.py rename to tests/python/topi/test_topi_softmax.py diff --git a/tests/python/topi/python/test_topi_sort.py b/tests/python/topi/test_topi_sort.py similarity index 100% rename from tests/python/topi/python/test_topi_sort.py rename to tests/python/topi/test_topi_sort.py diff --git a/tests/python/topi/python/test_topi_space_to_batch_nd.py b/tests/python/topi/test_topi_space_to_batch_nd.py similarity index 100% rename from tests/python/topi/python/test_topi_space_to_batch_nd.py rename to tests/python/topi/test_topi_space_to_batch_nd.py diff --git a/tests/python/topi/python/test_topi_space_to_depth.py b/tests/python/topi/test_topi_space_to_depth.py similarity index 100% rename from tests/python/topi/python/test_topi_space_to_depth.py rename to tests/python/topi/test_topi_space_to_depth.py diff --git a/tests/python/topi/python/test_topi_sparse.py b/tests/python/topi/test_topi_sparse.py similarity index 100% rename from tests/python/topi/python/test_topi_sparse.py rename to tests/python/topi/test_topi_sparse.py diff --git a/tests/python/topi/python/test_topi_tensor.py b/tests/python/topi/test_topi_tensor.py similarity index 100% rename from tests/python/topi/python/test_topi_tensor.py rename to tests/python/topi/test_topi_tensor.py diff --git a/tests/python/topi/python/test_topi_transform.py b/tests/python/topi/test_topi_transform.py similarity index 100% rename from tests/python/topi/python/test_topi_transform.py rename to tests/python/topi/test_topi_transform.py diff --git a/tests/python/topi/python/test_topi_unique.py b/tests/python/topi/test_topi_unique.py similarity index 100% rename from tests/python/topi/python/test_topi_unique.py rename to tests/python/topi/test_topi_unique.py diff --git a/tests/python/topi/python/test_topi_upsampling.py b/tests/python/topi/test_topi_upsampling.py similarity index 100% rename from tests/python/topi/python/test_topi_upsampling.py rename to tests/python/topi/test_topi_upsampling.py diff --git a/tests/python/topi/python/test_topi_util.py b/tests/python/topi/test_topi_util.py similarity index 100% rename from tests/python/topi/python/test_topi_util.py rename to tests/python/topi/test_topi_util.py diff --git a/tests/python/topi/python/test_topi_vision.py b/tests/python/topi/test_topi_vision.py similarity index 100% rename from tests/python/topi/python/test_topi_vision.py rename to tests/python/topi/test_topi_vision.py diff --git a/tests/python/unittest/test_tvmscript_complete.py b/tests/python/tvmscript/test_tvmscript_complete.py similarity index 100% rename from tests/python/unittest/test_tvmscript_complete.py rename to tests/python/tvmscript/test_tvmscript_complete.py diff --git a/tests/python/unittest/test_tvmscript_error_report.py b/tests/python/tvmscript/test_tvmscript_error_report.py similarity index 100% rename from tests/python/unittest/test_tvmscript_error_report.py rename to tests/python/tvmscript/test_tvmscript_error_report.py diff --git a/tests/python/unittest/test_tvmscript_ir_builder_base.py b/tests/python/tvmscript/test_tvmscript_ir_builder_base.py similarity index 100% rename from tests/python/unittest/test_tvmscript_ir_builder_base.py rename to tests/python/tvmscript/test_tvmscript_ir_builder_base.py diff --git a/tests/python/unittest/test_tvmscript_ir_builder_irmodule.py b/tests/python/tvmscript/test_tvmscript_ir_builder_irmodule.py similarity index 100% rename from tests/python/unittest/test_tvmscript_ir_builder_irmodule.py rename to tests/python/tvmscript/test_tvmscript_ir_builder_irmodule.py diff --git a/tests/python/unittest/test_tvmscript_ir_builder_tir.py b/tests/python/tvmscript/test_tvmscript_ir_builder_tir.py similarity index 100% rename from tests/python/unittest/test_tvmscript_ir_builder_tir.py rename to tests/python/tvmscript/test_tvmscript_ir_builder_tir.py diff --git a/tests/python/unittest/test_tvmscript_meta_programming.py b/tests/python/tvmscript/test_tvmscript_meta_programming.py similarity index 100% rename from tests/python/unittest/test_tvmscript_meta_programming.py rename to tests/python/tvmscript/test_tvmscript_meta_programming.py diff --git a/tests/python/unittest/test_tvmscript_ops.py b/tests/python/tvmscript/test_tvmscript_ops.py similarity index 100% rename from tests/python/unittest/test_tvmscript_ops.py rename to tests/python/tvmscript/test_tvmscript_ops.py diff --git a/tests/python/unittest/test_tvmscript_parser_evaluator.py b/tests/python/tvmscript/test_tvmscript_parser_evaluator.py similarity index 100% rename from tests/python/unittest/test_tvmscript_parser_evaluator.py rename to tests/python/tvmscript/test_tvmscript_parser_evaluator.py diff --git a/tests/python/unittest/test_tvmscript_parser_ir.py b/tests/python/tvmscript/test_tvmscript_parser_ir.py similarity index 100% rename from tests/python/unittest/test_tvmscript_parser_ir.py rename to tests/python/tvmscript/test_tvmscript_parser_ir.py diff --git a/tests/python/unittest/test_tvmscript_parser_source.py b/tests/python/tvmscript/test_tvmscript_parser_source.py similarity index 100% rename from tests/python/unittest/test_tvmscript_parser_source.py rename to tests/python/tvmscript/test_tvmscript_parser_source.py diff --git a/tests/python/unittest/test_tvmscript_parser_tir.py b/tests/python/tvmscript/test_tvmscript_parser_tir.py similarity index 100% rename from tests/python/unittest/test_tvmscript_parser_tir.py rename to tests/python/tvmscript/test_tvmscript_parser_tir.py diff --git a/tests/python/unittest/test_tvmscript_printer_annotation.py b/tests/python/tvmscript/test_tvmscript_printer_annotation.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_annotation.py rename to tests/python/tvmscript/test_tvmscript_printer_annotation.py diff --git a/tests/python/unittest/test_tvmscript_printer_doc.py b/tests/python/tvmscript/test_tvmscript_printer_doc.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_doc.py rename to tests/python/tvmscript/test_tvmscript_printer_doc.py diff --git a/tests/python/unittest/test_tvmscript_printer_highlight.py b/tests/python/tvmscript/test_tvmscript_printer_highlight.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_highlight.py rename to tests/python/tvmscript/test_tvmscript_printer_highlight.py diff --git a/tests/python/unittest/test_tvmscript_printer_ir.py b/tests/python/tvmscript/test_tvmscript_printer_ir.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_ir.py rename to tests/python/tvmscript/test_tvmscript_printer_ir.py diff --git a/tests/python/unittest/test_tvmscript_printer_metadata.py b/tests/python/tvmscript/test_tvmscript_printer_metadata.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_metadata.py rename to tests/python/tvmscript/test_tvmscript_printer_metadata.py diff --git a/tests/python/unittest/test_tvmscript_printer_python_doc_printer.py b/tests/python/tvmscript/test_tvmscript_printer_python_doc_printer.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_python_doc_printer.py rename to tests/python/tvmscript/test_tvmscript_printer_python_doc_printer.py diff --git a/tests/python/unittest/test_tvmscript_printer_structural_equal.py b/tests/python/tvmscript/test_tvmscript_printer_structural_equal.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_structural_equal.py rename to tests/python/tvmscript/test_tvmscript_printer_structural_equal.py diff --git a/tests/python/unittest/test_tvmscript_printer_tir.py b/tests/python/tvmscript/test_tvmscript_printer_tir.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_tir.py rename to tests/python/tvmscript/test_tvmscript_printer_tir.py diff --git a/tests/python/unittest/test_tvmscript_printer_underlining.py b/tests/python/tvmscript/test_tvmscript_printer_underlining.py similarity index 100% rename from tests/python/unittest/test_tvmscript_printer_underlining.py rename to tests/python/tvmscript/test_tvmscript_printer_underlining.py diff --git a/tests/python/unittest/test_tvmscript_regression.py b/tests/python/tvmscript/test_tvmscript_regression.py similarity index 100% rename from tests/python/unittest/test_tvmscript_regression.py rename to tests/python/tvmscript/test_tvmscript_regression.py diff --git a/tests/python/unittest/test_tvmscript_roundtrip.py b/tests/python/tvmscript/test_tvmscript_roundtrip.py similarity index 100% rename from tests/python/unittest/test_tvmscript_roundtrip.py rename to tests/python/tvmscript/test_tvmscript_roundtrip.py diff --git a/tests/python/unittest/test_tvmscript_syntax_sugar.py b/tests/python/tvmscript/test_tvmscript_syntax_sugar.py similarity index 100% rename from tests/python/unittest/test_tvmscript_syntax_sugar.py rename to tests/python/tvmscript/test_tvmscript_syntax_sugar.py diff --git a/tests/python/unittest/test_tvmscript_type.py b/tests/python/tvmscript/test_tvmscript_type.py similarity index 100% rename from tests/python/unittest/test_tvmscript_type.py rename to tests/python/tvmscript/test_tvmscript_type.py diff --git a/tests/scripts/task_mypy.sh b/tests/scripts/task_mypy.sh index c3e5d50b3e03..a8a788f4ce13 100755 --- a/tests/scripts/task_mypy.sh +++ b/tests/scripts/task_mypy.sh @@ -36,7 +36,7 @@ echo "Checking MyPy Type defs in the tvmscript printer package." mypy --check-untyped-defs python/tvm/script/printer echo "Checking MyPy Type defs in the TIR package with unittest" -MYPYPATH=$TVM_PATH/python mypy --check-untyped-defs tests/python/unittest/test_tvmscript_type.py +MYPYPATH=$TVM_PATH/python mypy --check-untyped-defs tests/python/tvmscript/test_tvmscript_type.py echo "Checking MyPy Type defs in tvm.relay.op.contrib" mypy --disallow-untyped-defs python/tvm/relay/op/contrib/cublas.py diff --git a/tests/scripts/task_python_unittest.sh b/tests/scripts/task_python_unittest.sh index b6d6091d2991..de1a1a6d384b 100755 --- a/tests/scripts/task_python_unittest.sh +++ b/tests/scripts/task_python_unittest.sh @@ -34,6 +34,30 @@ run_pytest ctypes ${TVM_UNITTEST_TESTSUITE_NAME}-platform-minimal-test-0 tests/p run_pytest cython ${TVM_UNITTEST_TESTSUITE_NAME}-platform-minimal-test-1 tests/python/all-platform-minimal-test # Then run all unittests on both ctypes and cython. -run_pytest ctypes ${TVM_UNITTEST_TESTSUITE_NAME}-0 tests/python/unittest -run_pytest cython ${TVM_UNITTEST_TESTSUITE_NAME}-1 tests/python/unittest +TEST_FILES=( + "arith" + "auto_scheduler" + "autotvm" + "codegen" + "ir" + "meta_schedule" + "micro" + "runtime" + "te" + "testing" + "tir-analysis" + "tir-base" + "tir-schedule" + "tir-transform" + "tir-usmp" + "tvmscript" + "usmp" +) + +for TEST_FILE in ${TEST_FILES}; do + run_pytest ctypes ${TEST_FILE}-0, tests/python/${TEST_FILE} + run_pytest cython ${TEST_FILE}-1, tests/python/${TEST_FILE} +done + +# Then run CI tests run_pytest ctypes ${TVM_UNITTEST_TESTSUITE_NAME}-ci tests/python/ci diff --git a/tests/scripts/task_python_unittest_gpuonly.sh b/tests/scripts/task_python_unittest_gpuonly.sh index bb453026e7ea..b478bbdc773d 100755 --- a/tests/scripts/task_python_unittest_gpuonly.sh +++ b/tests/scripts/task_python_unittest_gpuonly.sh @@ -29,9 +29,9 @@ export TVM_UNITTEST_TESTSUITE_NAME=python-unittest-gpu # Kept separate to avoid increasing time needed to run CI, testing # only minimal functionality of Vulkan runtime. export TVM_TEST_TARGETS="vulkan -from_device=0" -export TVM_UNITTEST_TESTSUITE_NAME=python-unittest-vulkan +export TVM_UNITTEST_TESTSUITE_NAME=python-codegen-vulkan source tests/scripts/setup-pytest-env.sh -run_pytest ctypes ${TVM_UNITTEST_TESTSUITE_NAME}-0 tests/python/unittest/test_target_codegen_vulkan.py -run_pytest cython ${TVM_UNITTEST_TESTSUITE_NAME}-1 tests/python/unittest/test_target_codegen_vulkan.py +run_pytest ctypes ${TVM_UNITTEST_TESTSUITE_NAME}-0 tests/python/codegen/test_target_codegen_vulkan.py +run_pytest cython ${TVM_UNITTEST_TESTSUITE_NAME}-1 tests/python/codegen/test_target_codegen_vulkan.py