├── .clang-format ├── .github └── workflows │ ├── format.yml │ ├── lint.yml │ └── test.yml ├── .gitignore ├── .mypy.ini ├── .style.yapf ├── .yapfignore ├── LICENSE ├── README.md ├── code-check.sh ├── frontend ├── __init__.py ├── bytecode_analysis.py ├── bytecode_writter.py ├── c_api.pyi ├── cache.py ├── code.py ├── compile.py ├── config.py ├── control_flow.py ├── csrc │ ├── csrc.h │ ├── frame_evaluation.cpp │ ├── opcode.cpp │ └── parse_types.cpp ├── dynamic.py ├── fx_graph.py ├── guard_tracker.py ├── guards.py ├── instruction.py ├── no_preload.py ├── object_table.py ├── pycode_generator.py ├── pycode_writer.py ├── store_pos.py ├── tracer.py ├── utils.py └── variables │ ├── __init__.py │ ├── any_.py │ ├── base.py │ ├── builtin_types.py │ ├── const.py │ ├── dict_.py │ ├── iterator.py │ ├── list_.py │ ├── scalar.py │ ├── set_.py │ ├── tensor.py │ ├── torch_module.py │ └── tuple_.py ├── pytest.ini ├── requirements.txt ├── scripts ├── compile_longobj.sh ├── longobject.v3.9.12.patch └── pytest_with_preload.sh ├── setup.py └── test ├── common ├── checker.py └── plugin_disable_preload.py ├── conftest.py ├── example.py ├── test_builtins.py ├── test_call_function_ex.py ├── test_call_udf.py ├── test_cuda.py ├── test_dict.py ├── test_dyn_shape.py ├── test_end_of_control_flow.py ├── test_extend_arg.py ├── test_inplace.py ├── test_int_cache.py ├── test_list.py ├── test_model_a_tridentnet.py ├── test_model_bart.py ├── test_model_bert.py ├── test_model_blockdrop.py ├── test_model_deberta.py ├── test_model_densenet.py ├── test_model_lstm.py ├── test_model_monodepth.py ├── test_model_multi_align.py ├── test_model_quantized.py ├── test_model_resnet.py ├── test_model_seq2seq.py ├── test_nnmodule.py ├── test_numpy.py ├── test_random_key.py ├── test_scalar.py ├── test_set.py ├── test_stack_effect.py ├── test_static_control_flow.py ├── test_store.py ├── test_tensor.py ├── test_tuple.py └── test_ud_class.py /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.clang-format -------------------------------------------------------------------------------- /.github/workflows/format.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.github/workflows/format.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.egg-info 2 | .vscode 3 | build 4 | __pycache__ 5 | *.so 6 | test/simple.py 7 | tmp -------------------------------------------------------------------------------- /.mypy.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.mypy.ini -------------------------------------------------------------------------------- /.style.yapf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/.style.yapf -------------------------------------------------------------------------------- /.yapfignore: -------------------------------------------------------------------------------- 1 | build -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/README.md -------------------------------------------------------------------------------- /code-check.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/code-check.sh -------------------------------------------------------------------------------- /frontend/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /frontend/bytecode_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/bytecode_analysis.py -------------------------------------------------------------------------------- /frontend/bytecode_writter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/bytecode_writter.py -------------------------------------------------------------------------------- /frontend/c_api.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/c_api.pyi -------------------------------------------------------------------------------- /frontend/cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/cache.py -------------------------------------------------------------------------------- /frontend/code.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/code.py -------------------------------------------------------------------------------- /frontend/compile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/compile.py -------------------------------------------------------------------------------- /frontend/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/config.py -------------------------------------------------------------------------------- /frontend/control_flow.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/control_flow.py -------------------------------------------------------------------------------- /frontend/csrc/csrc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/csrc/csrc.h -------------------------------------------------------------------------------- /frontend/csrc/frame_evaluation.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/csrc/frame_evaluation.cpp -------------------------------------------------------------------------------- /frontend/csrc/opcode.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/csrc/opcode.cpp -------------------------------------------------------------------------------- /frontend/csrc/parse_types.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/csrc/parse_types.cpp -------------------------------------------------------------------------------- /frontend/dynamic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/dynamic.py -------------------------------------------------------------------------------- /frontend/fx_graph.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/fx_graph.py -------------------------------------------------------------------------------- /frontend/guard_tracker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/guard_tracker.py -------------------------------------------------------------------------------- /frontend/guards.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/guards.py -------------------------------------------------------------------------------- /frontend/instruction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/instruction.py -------------------------------------------------------------------------------- /frontend/no_preload.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/no_preload.py -------------------------------------------------------------------------------- /frontend/object_table.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/object_table.py -------------------------------------------------------------------------------- /frontend/pycode_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/pycode_generator.py -------------------------------------------------------------------------------- /frontend/pycode_writer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/pycode_writer.py -------------------------------------------------------------------------------- /frontend/store_pos.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/store_pos.py -------------------------------------------------------------------------------- /frontend/tracer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/tracer.py -------------------------------------------------------------------------------- /frontend/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/utils.py -------------------------------------------------------------------------------- /frontend/variables/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/__init__.py -------------------------------------------------------------------------------- /frontend/variables/any_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/any_.py -------------------------------------------------------------------------------- /frontend/variables/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/base.py -------------------------------------------------------------------------------- /frontend/variables/builtin_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/builtin_types.py -------------------------------------------------------------------------------- /frontend/variables/const.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/const.py -------------------------------------------------------------------------------- /frontend/variables/dict_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/dict_.py -------------------------------------------------------------------------------- /frontend/variables/iterator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/iterator.py -------------------------------------------------------------------------------- /frontend/variables/list_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/list_.py -------------------------------------------------------------------------------- /frontend/variables/scalar.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/scalar.py -------------------------------------------------------------------------------- /frontend/variables/set_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/set_.py -------------------------------------------------------------------------------- /frontend/variables/tensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/tensor.py -------------------------------------------------------------------------------- /frontend/variables/torch_module.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/torch_module.py -------------------------------------------------------------------------------- /frontend/variables/tuple_.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/frontend/variables/tuple_.py -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/pytest.ini -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/compile_longobj.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/scripts/compile_longobj.sh -------------------------------------------------------------------------------- /scripts/longobject.v3.9.12.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/scripts/longobject.v3.9.12.patch -------------------------------------------------------------------------------- /scripts/pytest_with_preload.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | LD_PRELOAD=~/frontend/ldlong.v3.9.12.so pytest $@ -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/setup.py -------------------------------------------------------------------------------- /test/common/checker.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/common/checker.py -------------------------------------------------------------------------------- /test/common/plugin_disable_preload.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/common/plugin_disable_preload.py -------------------------------------------------------------------------------- /test/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/conftest.py -------------------------------------------------------------------------------- /test/example.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/example.py -------------------------------------------------------------------------------- /test/test_builtins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_builtins.py -------------------------------------------------------------------------------- /test/test_call_function_ex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_call_function_ex.py -------------------------------------------------------------------------------- /test/test_call_udf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_call_udf.py -------------------------------------------------------------------------------- /test/test_cuda.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_cuda.py -------------------------------------------------------------------------------- /test/test_dict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_dict.py -------------------------------------------------------------------------------- /test/test_dyn_shape.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_dyn_shape.py -------------------------------------------------------------------------------- /test/test_end_of_control_flow.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_end_of_control_flow.py -------------------------------------------------------------------------------- /test/test_extend_arg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_extend_arg.py -------------------------------------------------------------------------------- /test/test_inplace.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_inplace.py -------------------------------------------------------------------------------- /test/test_int_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_int_cache.py -------------------------------------------------------------------------------- /test/test_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_list.py -------------------------------------------------------------------------------- /test/test_model_a_tridentnet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_a_tridentnet.py -------------------------------------------------------------------------------- /test/test_model_bart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_bart.py -------------------------------------------------------------------------------- /test/test_model_bert.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_bert.py -------------------------------------------------------------------------------- /test/test_model_blockdrop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_blockdrop.py -------------------------------------------------------------------------------- /test/test_model_deberta.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_deberta.py -------------------------------------------------------------------------------- /test/test_model_densenet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_densenet.py -------------------------------------------------------------------------------- /test/test_model_lstm.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_lstm.py -------------------------------------------------------------------------------- /test/test_model_monodepth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_monodepth.py -------------------------------------------------------------------------------- /test/test_model_multi_align.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_multi_align.py -------------------------------------------------------------------------------- /test/test_model_quantized.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_quantized.py -------------------------------------------------------------------------------- /test/test_model_resnet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_resnet.py -------------------------------------------------------------------------------- /test/test_model_seq2seq.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_model_seq2seq.py -------------------------------------------------------------------------------- /test/test_nnmodule.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_nnmodule.py -------------------------------------------------------------------------------- /test/test_numpy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_numpy.py -------------------------------------------------------------------------------- /test/test_random_key.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_random_key.py -------------------------------------------------------------------------------- /test/test_scalar.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_scalar.py -------------------------------------------------------------------------------- /test/test_set.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_set.py -------------------------------------------------------------------------------- /test/test_stack_effect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_stack_effect.py -------------------------------------------------------------------------------- /test/test_static_control_flow.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_static_control_flow.py -------------------------------------------------------------------------------- /test/test_store.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_store.py -------------------------------------------------------------------------------- /test/test_tensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_tensor.py -------------------------------------------------------------------------------- /test/test_tuple.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_tuple.py -------------------------------------------------------------------------------- /test/test_ud_class.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/heheda12345/MagPy/HEAD/test/test_ud_class.py --------------------------------------------------------------------------------