mplang-nightly 0.1.dev269__tar.gz → 0.1.dev271__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/PKG-INFO +2 -2
- mplang_nightly-0.1.dev271/examples/.gitkeep +3 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/__init__.py +30 -34
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/__init__.py +9 -7
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/bfv_impl.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/crypto_impl.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/field_impl.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/func_impl.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/phe_impl.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_design.md +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/__init__.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/http.py +8 -8
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/mem.py +9 -9
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/ops.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/state.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/values.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/__init__.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/http.py +10 -10
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/mem.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/ops.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/state.py +2 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/spu_impl.py +8 -8
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/spu_state.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/store_impl.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/table_impl.py +8 -8
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/tee_impl.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/tensor_impl.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/cli.py +9 -9
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/cli_guide.md +12 -12
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/__init__.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/bfv.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/crypto.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/dtypes.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/field.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/func.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/phe.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/simp.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/spu.py +7 -7
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/store.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/table.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/tee.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/dialects/tensor.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/__init__.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/context.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/graph.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/jit.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/object.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/primitive.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/printer.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/serde.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/tracer.py +7 -7
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/typing.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/ldpc.cpp +13 -13
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/okvs.cpp +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/okvs_opt.cpp +31 -31
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/py_kernels.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/collective.py +5 -5
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/device/__init__.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/device/api.py +12 -12
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/ml/__init__.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/ml/sgb.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/__init__.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/_utils.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/analytics/aggregation.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/analytics/groupby.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/analytics/permutation.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/ot/base.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/ot/extension.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/ot/silent.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/cuckoo.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/okvs.py +1 -1
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/okvs_gct.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/oprf.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/rr22.py +7 -7
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/unbalanced.py +4 -4
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/vole/gilboa.py +3 -3
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/vole/ldpc.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/vole/silver.py +6 -6
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/runtime/interpreter.py +11 -11
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/runtime/value.py +2 -2
- {mplang_nightly-0.1.dev269/mplang/v1/runtime → mplang_nightly-0.1.dev271/mplang/utils}/__init__.py +18 -15
- {mplang_nightly-0.1.dev269/mplang/v1 → mplang_nightly-0.1.dev271/mplang}/utils/func_utils.py +1 -1
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/pyproject.toml +5 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/simp_driver/test_http.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/simp_worker/test_http.py +12 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/simp_worker/test_mem.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_bfv_impl.py +5 -5
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_channel.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_crypto_impl.py +6 -6
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_okvs_binding.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_simp_integration.py +7 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_simp_object_store.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_spu_impl.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_table_impl.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_tee_impl.py +5 -5
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_tensor_impl.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/test_verify_clean.py +7 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/conftest.py +8 -5
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_bfv.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_crypto.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_dtypes.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_field.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_func.py +5 -5
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_okvs.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_okvs_bench.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_phe.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_simp.py +12 -12
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_simp_comm.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_spu.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests/dialects}/test_store.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_table.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_tee.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/dialects/test_tensor.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_context.py +10 -10
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_graph.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_primitive.py +6 -6
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_primitive_multi_output.py +11 -11
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_printer.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_serde.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_tracer.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_typing.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/test_typing_graph_serde.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/device/conftest.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/device/test_device_api_errors.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/device/test_device_dialects.py +5 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/device/test_device_layouts.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/device/test_device_tee.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/ml/test_sgb.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/ml/test_sgb_bench.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/analytics/test_aggregation.py +3 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/analytics/test_groupby.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/analytics/test_permutation.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/ot/test_ot.py +7 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/ot/test_ot_extension.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/ot/test_silent_ot.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/test_okvs_gct.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/test_oprf.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/test_psi.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/test_psi_bench.py +7 -7
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/test_rr22.py +6 -6
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/verify_psi_okvs_logic.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/test_field_gf128.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/test_utils.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/test_gilboa_manual.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/test_ldpc.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/test_silver_vole.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/test_vole.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/test_vole_bench.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/verify_vole_logic.py +6 -6
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/test_collective.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/test_simple_guide.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/runtime/test_interpreter_async.py +3 -3
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/runtime/test_object_store.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/runtime/test_object_store_fs.py +1 -1
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/test_fetch_semantics.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/test_pytree_io.py +2 -2
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/utils/tensor_patch.py +4 -4
- {mplang_nightly-0.1.dev269/tests/v1 → mplang_nightly-0.1.dev271/tests}/utils/test_func_utils.py +1 -1
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/00_device_basics.py +3 -3
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/01_function_decorator.py +2 -2
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/02_simulation_and_driver.py +1 -1
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/03_run_jax.py +3 -3
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/04_ir_dump_and_analysis.py +2 -2
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/05_run_sql.py +5 -5
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/06_pipeline.py +4 -4
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/07_stax_nn.py +209 -16
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/tutorials/MIGRATION.md +25 -22
- mplang_nightly-0.1.dev271/tutorials/README.md +77 -0
- mplang_nightly-0.1.dev269/examples/v1/conf/3pc.yaml +0 -32
- mplang_nightly-0.1.dev269/examples/v1/stax_nn/README.md +0 -21
- mplang_nightly-0.1.dev269/examples/v1/stax_nn/models.py +0 -231
- mplang_nightly-0.1.dev269/examples/v1/stax_nn/stax_nn.py +0 -251
- mplang_nightly-0.1.dev269/examples/v1/xgboost/bench_fhe_hist.py +0 -615
- mplang_nightly-0.1.dev269/examples/v1/xgboost/hist_jax.py +0 -970
- mplang_nightly-0.1.dev269/examples/v1/xgboost/hist_jax_test.py +0 -500
- mplang_nightly-0.1.dev269/examples/v1/xgboost/naive_np.py +0 -180
- mplang_nightly-0.1.dev269/examples/v1/xgboost/readme.md +0 -15
- mplang_nightly-0.1.dev269/examples/v1/xgboost/sgb.py +0 -1813
- mplang_nightly-0.1.dev269/examples/v1/xgboost/sgb_test.py +0 -805
- mplang_nightly-0.1.dev269/mplang/__init__.py +0 -46
- mplang_nightly-0.1.dev269/mplang/v1/__init__.py +0 -157
- mplang_nightly-0.1.dev269/mplang/v1/_device.py +0 -602
- mplang_nightly-0.1.dev269/mplang/v1/analysis/__init__.py +0 -37
- mplang_nightly-0.1.dev269/mplang/v1/analysis/diagram.py +0 -567
- mplang_nightly-0.1.dev269/mplang/v1/core/__init__.py +0 -157
- mplang_nightly-0.1.dev269/mplang/v1/core/cluster.py +0 -343
- mplang_nightly-0.1.dev269/mplang/v1/core/comm.py +0 -281
- mplang_nightly-0.1.dev269/mplang/v1/core/context_mgr.py +0 -50
- mplang_nightly-0.1.dev269/mplang/v1/core/dtypes.py +0 -335
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/__init__.py +0 -80
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/ast.py +0 -542
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/evaluator.py +0 -581
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/printer.py +0 -285
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/transformer.py +0 -141
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/utils.py +0 -78
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/visitor.py +0 -85
- mplang_nightly-0.1.dev269/mplang/v1/core/expr/walk.py +0 -387
- mplang_nightly-0.1.dev269/mplang/v1/core/interp.py +0 -160
- mplang_nightly-0.1.dev269/mplang/v1/core/mask.py +0 -325
- mplang_nightly-0.1.dev269/mplang/v1/core/mpir.py +0 -965
- mplang_nightly-0.1.dev269/mplang/v1/core/mpobject.py +0 -117
- mplang_nightly-0.1.dev269/mplang/v1/core/mptype.py +0 -407
- mplang_nightly-0.1.dev269/mplang/v1/core/pfunc.py +0 -130
- mplang_nightly-0.1.dev269/mplang/v1/core/primitive.py +0 -877
- mplang_nightly-0.1.dev269/mplang/v1/core/table.py +0 -218
- mplang_nightly-0.1.dev269/mplang/v1/core/tensor.py +0 -75
- mplang_nightly-0.1.dev269/mplang/v1/core/tracer.py +0 -383
- mplang_nightly-0.1.dev269/mplang/v1/host.py +0 -130
- mplang_nightly-0.1.dev269/mplang/v1/kernels/__init__.py +0 -41
- mplang_nightly-0.1.dev269/mplang/v1/kernels/base.py +0 -125
- mplang_nightly-0.1.dev269/mplang/v1/kernels/basic.py +0 -240
- mplang_nightly-0.1.dev269/mplang/v1/kernels/context.py +0 -369
- mplang_nightly-0.1.dev269/mplang/v1/kernels/crypto.py +0 -122
- mplang_nightly-0.1.dev269/mplang/v1/kernels/fhe.py +0 -858
- mplang_nightly-0.1.dev269/mplang/v1/kernels/mock_tee.py +0 -72
- mplang_nightly-0.1.dev269/mplang/v1/kernels/phe.py +0 -1864
- mplang_nightly-0.1.dev269/mplang/v1/kernels/spu.py +0 -341
- mplang_nightly-0.1.dev269/mplang/v1/kernels/sql_duckdb.py +0 -44
- mplang_nightly-0.1.dev269/mplang/v1/kernels/stablehlo.py +0 -90
- mplang_nightly-0.1.dev269/mplang/v1/kernels/value.py +0 -626
- mplang_nightly-0.1.dev269/mplang/v1/ops/__init__.py +0 -35
- mplang_nightly-0.1.dev269/mplang/v1/ops/base.py +0 -424
- mplang_nightly-0.1.dev269/mplang/v1/ops/basic.py +0 -294
- mplang_nightly-0.1.dev269/mplang/v1/ops/crypto.py +0 -262
- mplang_nightly-0.1.dev269/mplang/v1/ops/fhe.py +0 -272
- mplang_nightly-0.1.dev269/mplang/v1/ops/jax_cc.py +0 -147
- mplang_nightly-0.1.dev269/mplang/v1/ops/nnx_cc.py +0 -168
- mplang_nightly-0.1.dev269/mplang/v1/ops/phe.py +0 -216
- mplang_nightly-0.1.dev269/mplang/v1/ops/spu.py +0 -151
- mplang_nightly-0.1.dev269/mplang/v1/ops/sql_cc.py +0 -303
- mplang_nightly-0.1.dev269/mplang/v1/ops/tee.py +0 -36
- mplang_nightly-0.1.dev269/mplang/v1/protos/v1alpha1/mpir_pb2.py +0 -63
- mplang_nightly-0.1.dev269/mplang/v1/protos/v1alpha1/mpir_pb2.pyi +0 -557
- mplang_nightly-0.1.dev269/mplang/v1/protos/v1alpha1/value_pb2.py +0 -34
- mplang_nightly-0.1.dev269/mplang/v1/protos/v1alpha1/value_pb2.pyi +0 -169
- mplang_nightly-0.1.dev269/mplang/v1/runtime/channel.py +0 -230
- mplang_nightly-0.1.dev269/mplang/v1/runtime/cli.py +0 -451
- mplang_nightly-0.1.dev269/mplang/v1/runtime/client.py +0 -456
- mplang_nightly-0.1.dev269/mplang/v1/runtime/communicator.py +0 -131
- mplang_nightly-0.1.dev269/mplang/v1/runtime/data_providers.py +0 -303
- mplang_nightly-0.1.dev269/mplang/v1/runtime/driver.py +0 -324
- mplang_nightly-0.1.dev269/mplang/v1/runtime/exceptions.py +0 -27
- mplang_nightly-0.1.dev269/mplang/v1/runtime/http_api.md +0 -56
- mplang_nightly-0.1.dev269/mplang/v1/runtime/link_comm.py +0 -196
- mplang_nightly-0.1.dev269/mplang/v1/runtime/server.py +0 -501
- mplang_nightly-0.1.dev269/mplang/v1/runtime/session.py +0 -270
- mplang_nightly-0.1.dev269/mplang/v1/runtime/simulation.py +0 -324
- mplang_nightly-0.1.dev269/mplang/v1/simp/__init__.py +0 -13
- mplang_nightly-0.1.dev269/mplang/v1/simp/api.py +0 -353
- mplang_nightly-0.1.dev269/mplang/v1/simp/mpi.py +0 -131
- mplang_nightly-0.1.dev269/mplang/v1/simp/party.py +0 -225
- mplang_nightly-0.1.dev269/mplang/v1/simp/random.py +0 -120
- mplang_nightly-0.1.dev269/mplang/v1/simp/smpc.py +0 -238
- mplang_nightly-0.1.dev269/mplang/v1/utils/__init__.py +0 -13
- mplang_nightly-0.1.dev269/mplang/v1/utils/crypto.py +0 -32
- mplang_nightly-0.1.dev269/mplang/v1/utils/spu_utils.py +0 -130
- mplang_nightly-0.1.dev269/mplang/v1/utils/table_utils.py +0 -185
- mplang_nightly-0.1.dev269/tests/__init__.py +0 -15
- mplang_nightly-0.1.dev269/tests/conftest.py +0 -17
- mplang_nightly-0.1.dev269/tests/v1/__init__.py +0 -15
- mplang_nightly-0.1.dev269/tests/v1/analysis/test_diagram.py +0 -96
- mplang_nightly-0.1.dev269/tests/v1/conftest.py +0 -17
- mplang_nightly-0.1.dev269/tests/v1/core/__init__.py +0 -17
- mplang_nightly-0.1.dev269/tests/v1/core/expr/__init__.py +0 -17
- mplang_nightly-0.1.dev269/tests/v1/core/expr/conftest.py +0 -227
- mplang_nightly-0.1.dev269/tests/v1/core/expr/test_ast.py +0 -375
- mplang_nightly-0.1.dev269/tests/v1/core/expr/test_printer.py +0 -847
- mplang_nightly-0.1.dev269/tests/v1/core/expr/test_utils.py +0 -150
- mplang_nightly-0.1.dev269/tests/v1/core/expr/test_walk.py +0 -166
- mplang_nightly-0.1.dev269/tests/v1/core/test_cluster.py +0 -524
- mplang_nightly-0.1.dev269/tests/v1/core/test_dtype.py +0 -441
- mplang_nightly-0.1.dev269/tests/v1/core/test_mask.py +0 -189
- mplang_nightly-0.1.dev269/tests/v1/core/test_mpir.py +0 -1092
- mplang_nightly-0.1.dev269/tests/v1/core/test_mptype.py +0 -221
- mplang_nightly-0.1.dev269/tests/v1/core/test_primitive.py +0 -1596
- mplang_nightly-0.1.dev269/tests/v1/core/test_table.py +0 -330
- mplang_nightly-0.1.dev269/tests/v1/core/test_tensor.py +0 -128
- mplang_nightly-0.1.dev269/tests/v1/core/test_tracer.py +0 -546
- mplang_nightly-0.1.dev269/tests/v1/device/__init__.py +0 -13
- mplang_nightly-0.1.dev269/tests/v1/device/test_device_basic.py +0 -179
- mplang_nightly-0.1.dev269/tests/v1/integration/README.md +0 -78
- mplang_nightly-0.1.dev269/tests/v1/integration/test_crypto_roundtrip.py +0 -124
- mplang_nightly-0.1.dev269/tests/v1/integration/test_http_e2e.py +0 -264
- mplang_nightly-0.1.dev269/tests/v1/integration/test_symbols_roundtrip.py +0 -124
- mplang_nightly-0.1.dev269/tests/v1/integration/test_tee_workflow.py +0 -83
- mplang_nightly-0.1.dev269/tests/v1/integration/test_tutorials.py +0 -318
- mplang_nightly-0.1.dev269/tests/v1/integration/test_unused_param_integration.py +0 -190
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_basic.py +0 -295
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_debug_print.py +0 -70
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_fhe.py +0 -876
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_kernel_binding.py +0 -134
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_phe.py +0 -1989
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_spu.py +0 -274
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_sql_duckdb.py +0 -57
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_stablehlo.py +0 -163
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_value.py +0 -324
- mplang_nightly-0.1.dev269/tests/v1/kernels/test_value_serde.py +0 -377
- mplang_nightly-0.1.dev269/tests/v1/ops/__init__.py +0 -13
- mplang_nightly-0.1.dev269/tests/v1/ops/dummy.py +0 -68
- mplang_nightly-0.1.dev269/tests/v1/ops/test_basic_pack.py +0 -82
- mplang_nightly-0.1.dev269/tests/v1/ops/test_crypto.py +0 -364
- mplang_nightly-0.1.dev269/tests/v1/ops/test_feop_base.py +0 -130
- mplang_nightly-0.1.dev269/tests/v1/ops/test_jax_cc.py +0 -280
- mplang_nightly-0.1.dev269/tests/v1/ops/test_nnx_cc.py +0 -265
- mplang_nightly-0.1.dev269/tests/v1/ops/test_phe.py +0 -62
- mplang_nightly-0.1.dev269/tests/v1/ops/test_spu.py +0 -87
- mplang_nightly-0.1.dev269/tests/v1/ops/test_spu_defensive.py +0 -134
- mplang_nightly-0.1.dev269/tests/v1/ops/test_sql.py +0 -48
- mplang_nightly-0.1.dev269/tests/v1/ops/test_sql_cc.py +0 -116
- mplang_nightly-0.1.dev269/tests/v1/ops/test_table_tensor_conversion.py +0 -201
- mplang_nightly-0.1.dev269/tests/v1/runtime/__init__.py +0 -13
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_channel.py +0 -613
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_cli.py +0 -361
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_communicator.py +0 -360
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_driver.py +0 -122
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_server.py +0 -179
- mplang_nightly-0.1.dev269/tests/v1/runtime/test_simulation.py +0 -2055
- mplang_nightly-0.1.dev269/tests/v1/simp/test_mpi.py +0 -403
- mplang_nightly-0.1.dev269/tests/v1/simp/test_random.py +0 -130
- mplang_nightly-0.1.dev269/tests/v1/simp/test_smpc.py +0 -218
- mplang_nightly-0.1.dev269/tests/v1/simp/test_sugar.py +0 -107
- mplang_nightly-0.1.dev269/tests/v1/utils/__init__.py +0 -15
- mplang_nightly-0.1.dev269/tests/v1/utils/server_fixtures.py +0 -260
- mplang_nightly-0.1.dev269/tests/v1/utils/test_spu_utils.py +0 -115
- mplang_nightly-0.1.dev269/tests/v1/utils/test_table_utils.py +0 -64
- mplang_nightly-0.1.dev269/tests/v2/utils/__init__.py +0 -13
- mplang_nightly-0.1.dev269/tutorials/README.md +0 -125
- mplang_nightly-0.1.dev269/tutorials/__init__.py +0 -15
- mplang_nightly-0.1.dev269/tutorials/v1/device/00_device_basics.py +0 -168
- mplang_nightly-0.1.dev269/tutorials/v1/device/01_function_decorator.py +0 -127
- mplang_nightly-0.1.dev269/tutorials/v1/device/02_simulation_and_driver.py +0 -139
- mplang_nightly-0.1.dev269/tutorials/v1/device/03_run_jax.py +0 -164
- mplang_nightly-0.1.dev269/tutorials/v1/device/04_run_sql.py +0 -174
- mplang_nightly-0.1.dev269/tutorials/v1/device/05_pipeline.py +0 -242
- mplang_nightly-0.1.dev269/tutorials/v1/device/06_ir_dump_and_analysis.py +0 -83
- mplang_nightly-0.1.dev269/tutorials/v1/device/07_run_nnx.py +0 -627
- mplang_nightly-0.1.dev269/tutorials/v1/pitfalls/late_binding.py +0 -107
- mplang_nightly-0.1.dev269/tutorials/v1/pitfalls/rand.py +0 -125
- mplang_nightly-0.1.dev269/tutorials/v1/simp/00_basic.py +0 -184
- mplang_nightly-0.1.dev269/tutorials/v1/simp/01_condition.py +0 -164
- mplang_nightly-0.1.dev269/tutorials/v1/simp/02_whileloop.py +0 -108
- mplang_nightly-0.1.dev269/tutorials/v1/simp/03_stdio.py +0 -67
- mplang_nightly-0.1.dev269/tutorials/v1/simp/04_phe.py +0 -77
- mplang_nightly-0.1.dev269/tutorials/v1/simp/05_tee.py +0 -218
- mplang_nightly-0.1.dev269/tutorials/v1/simp/06_fhe.py +0 -95
- mplang_nightly-0.1.dev269/tutorials/v1/simp/07_advanced.py +0 -39
- mplang_nightly-0.1.dev269/tutorials/v1/simp/08_simple_secret_sharing.py +0 -291
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/.gitignore +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/LICENSE +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/README.md +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/hatch_build.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/channel.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/README.md +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/edsl/registry.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/Makefile +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/kernels/gf128.cpp +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/device/cluster.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/analytics/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/analytics/groupby.md +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/common/constants.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/ot/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/psi/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/libs/mpc/vole/__init__.py +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/mplang/py.typed +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/runtime/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/runtime/dialect_state.py +0 -0
- {mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/runtime/object_store.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v1/kernels → mplang_nightly-0.1.dev271/tests}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests/backends}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/simp_driver/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/backends/simp_worker/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2/backends → mplang_nightly-0.1.dev271/tests/dialects}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/edsl/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2/dialects → mplang_nightly-0.1.dev271/tests/libs/device}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/ml/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2/libs/device → mplang_nightly-0.1.dev271/tests/libs/mpc}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/analytics/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/ot/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/psi/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2 → mplang_nightly-0.1.dev271/tests}/libs/mpc/vole/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tests/v2/libs/mpc → mplang_nightly-0.1.dev271/tests/utils}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269/tutorials/v2 → mplang_nightly-0.1.dev271/tutorials}/__init__.py +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/tutorials/data/alice.csv +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/tutorials/data/bob.csv +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/tutorials/data/prepare_vertical_iris.py +0 -0
- {mplang_nightly-0.1.dev269 → mplang_nightly-0.1.dev271}/tutorials/run.sh +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mplang-nightly
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.dev271
|
|
4
4
|
Summary: Multi-Party Programming Language
|
|
5
5
|
Author-email: SecretFlow Team <secretflow-contact@service.alipay.com>
|
|
6
6
|
License: Apache License
|
|
@@ -214,7 +214,7 @@ Requires-Dist: flax>=0.12.0
|
|
|
214
214
|
Requires-Dist: httpx<1.0.0,>=0.27.0
|
|
215
215
|
Requires-Dist: jax[cpu]==0.8.0
|
|
216
216
|
Requires-Dist: lightphe<0.1.0,>=0.0.15
|
|
217
|
-
Requires-Dist: numpy
|
|
217
|
+
Requires-Dist: numpy!=2.4.0,>=2.0.0
|
|
218
218
|
Requires-Dist: pandas>=2.0.0
|
|
219
219
|
Requires-Dist: protobuf<6.0,>=5.0
|
|
220
220
|
Requires-Dist: pyarrow>=14.0.0
|
|
@@ -25,25 +25,22 @@ from __future__ import annotations
|
|
|
25
25
|
from collections.abc import Callable
|
|
26
26
|
from typing import Any
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
#
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
from mplang.
|
|
41
|
-
from mplang.
|
|
42
|
-
from mplang.
|
|
43
|
-
from mplang.
|
|
44
|
-
from mplang.v2.backends.simp_worker.ops import WORKER_HANDLERS
|
|
45
|
-
from mplang.v2.dialects.simp import make_driver, make_simulator
|
|
46
|
-
from mplang.v2.edsl import (
|
|
28
|
+
# Version is managed by hatch-vcs and available after package installation
|
|
29
|
+
try:
|
|
30
|
+
from importlib.metadata import version
|
|
31
|
+
|
|
32
|
+
__version__ = version("mplang")
|
|
33
|
+
except Exception:
|
|
34
|
+
# Fallback for development/editable installs when package is not installed
|
|
35
|
+
__version__ = "0.0.0-dev"
|
|
36
|
+
|
|
37
|
+
from mplang import dialects
|
|
38
|
+
from mplang.backends.simp_driver.ops import DRIVER_HANDLERS
|
|
39
|
+
from mplang.backends.simp_worker import SimpWorker
|
|
40
|
+
from mplang.backends.simp_worker.mem import LocalMesh
|
|
41
|
+
from mplang.backends.simp_worker.ops import WORKER_HANDLERS
|
|
42
|
+
from mplang.dialects.simp import make_driver, make_simulator
|
|
43
|
+
from mplang.edsl import (
|
|
47
44
|
Graph,
|
|
48
45
|
GraphPrinter,
|
|
49
46
|
Object,
|
|
@@ -67,10 +64,10 @@ from mplang.v2.edsl import (
|
|
|
67
64
|
set_root_context,
|
|
68
65
|
trace,
|
|
69
66
|
)
|
|
70
|
-
from mplang.
|
|
67
|
+
from mplang.edsl.registry import get_profiler
|
|
71
68
|
|
|
72
69
|
# Type system
|
|
73
|
-
from mplang.
|
|
70
|
+
from mplang.edsl.typing import (
|
|
74
71
|
MPType,
|
|
75
72
|
ScalarType,
|
|
76
73
|
SSType,
|
|
@@ -82,7 +79,7 @@ from mplang.v2.edsl.typing import (
|
|
|
82
79
|
# =============================================================================
|
|
83
80
|
# Device API (compatible with mplang v1)
|
|
84
81
|
# =============================================================================
|
|
85
|
-
from mplang.
|
|
82
|
+
from mplang.libs.device import (
|
|
86
83
|
ClusterSpec,
|
|
87
84
|
Device,
|
|
88
85
|
Node,
|
|
@@ -93,8 +90,8 @@ from mplang.v2.libs.device import (
|
|
|
93
90
|
put,
|
|
94
91
|
set_dev_attr,
|
|
95
92
|
)
|
|
96
|
-
from mplang.
|
|
97
|
-
from mplang.
|
|
93
|
+
from mplang.libs.device import fetch as device_fetch
|
|
94
|
+
from mplang.runtime.interpreter import Interpreter
|
|
98
95
|
|
|
99
96
|
# =============================================================================
|
|
100
97
|
# Context Management API (JAX-like pattern)
|
|
@@ -147,8 +144,8 @@ def evaluate(
|
|
|
147
144
|
>>> # Or explicitly:
|
|
148
145
|
>>> result = mp.evaluate(traced, context=sim)
|
|
149
146
|
"""
|
|
150
|
-
from mplang.
|
|
151
|
-
from mplang.
|
|
147
|
+
from mplang.edsl.tracer import TracedFunction
|
|
148
|
+
from mplang.runtime.interpreter import InterpObject
|
|
152
149
|
|
|
153
150
|
interp = _get_context(context)
|
|
154
151
|
|
|
@@ -220,10 +217,10 @@ def fetch(
|
|
|
220
217
|
"""
|
|
221
218
|
from jax.tree_util import tree_map
|
|
222
219
|
|
|
223
|
-
from mplang.
|
|
224
|
-
from mplang.
|
|
225
|
-
from mplang.
|
|
226
|
-
from mplang.
|
|
220
|
+
from mplang.backends.simp_driver.values import DriverVar
|
|
221
|
+
from mplang.edsl.context import is_tracing
|
|
222
|
+
from mplang.runtime.interpreter import InterpObject
|
|
223
|
+
from mplang.runtime.value import WrapValue
|
|
227
224
|
|
|
228
225
|
# Check if we are in tracing context - if so, return identity
|
|
229
226
|
if is_tracing():
|
|
@@ -244,7 +241,7 @@ def fetch(
|
|
|
244
241
|
|
|
245
242
|
# DriverVar (simp dialect) - remote fetch from workers
|
|
246
243
|
if isinstance(var, DriverVar):
|
|
247
|
-
from mplang.
|
|
244
|
+
from mplang.backends.simp_driver.state import SimpDriver
|
|
248
245
|
|
|
249
246
|
simp_state = interp.get_dialect_state("simp")
|
|
250
247
|
assert isinstance(simp_state, SimpDriver), "DriverVar requires simp state"
|
|
@@ -291,7 +288,7 @@ def function(fn: Callable[..., Any] | None = None) -> Callable[..., Any]:
|
|
|
291
288
|
"""
|
|
292
289
|
import functools
|
|
293
290
|
|
|
294
|
-
from mplang.
|
|
291
|
+
from mplang.dialects import simp
|
|
295
292
|
|
|
296
293
|
if fn is None:
|
|
297
294
|
return function
|
|
@@ -304,7 +301,7 @@ def function(fn: Callable[..., Any] | None = None) -> Callable[..., Any]:
|
|
|
304
301
|
|
|
305
302
|
@functools.wraps(fn)
|
|
306
303
|
def wrapper(*args: Any, **kwargs: Any) -> Any:
|
|
307
|
-
from mplang.
|
|
304
|
+
from mplang.edsl.context import find_context
|
|
308
305
|
|
|
309
306
|
# Find context with simp dialect state
|
|
310
307
|
ctx = find_context(has_simp_state)
|
|
@@ -393,7 +390,6 @@ __all__ = [ # noqa: RUF022
|
|
|
393
390
|
"get_default_context",
|
|
394
391
|
"is_tracing",
|
|
395
392
|
"jit",
|
|
396
|
-
"mplang",
|
|
397
393
|
"pop_context",
|
|
398
394
|
"primitive",
|
|
399
395
|
"push_context",
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/__init__.py
RENAMED
|
@@ -41,13 +41,15 @@ def load_builtins() -> None:
|
|
|
41
41
|
"""Load all built-in backend implementations."""
|
|
42
42
|
# Core backends that are expected to be present
|
|
43
43
|
builtin_backends = [
|
|
44
|
-
"mplang.
|
|
45
|
-
"mplang.
|
|
46
|
-
"mplang.
|
|
47
|
-
"mplang.
|
|
48
|
-
"mplang.
|
|
49
|
-
"mplang.
|
|
50
|
-
"mplang.
|
|
44
|
+
"mplang.backends.spu_impl",
|
|
45
|
+
"mplang.backends.tensor_impl",
|
|
46
|
+
"mplang.backends.table_impl",
|
|
47
|
+
"mplang.backends.crypto_impl",
|
|
48
|
+
"mplang.backends.tee_impl",
|
|
49
|
+
"mplang.backends.bfv_impl",
|
|
50
|
+
"mplang.backends.store_impl",
|
|
51
|
+
"mplang.backends.func_impl",
|
|
52
|
+
"mplang.backends.field_impl",
|
|
51
53
|
]
|
|
52
54
|
|
|
53
55
|
for module_name in builtin_backends:
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/bfv_impl.py
RENAMED
|
@@ -29,12 +29,12 @@ import numpy as np
|
|
|
29
29
|
import tenseal as ts
|
|
30
30
|
import tenseal.sealapi as sealapi
|
|
31
31
|
|
|
32
|
-
from mplang.
|
|
33
|
-
from mplang.
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
36
|
-
from mplang.
|
|
37
|
-
from mplang.
|
|
32
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
33
|
+
from mplang.dialects import bfv
|
|
34
|
+
from mplang.edsl import serde
|
|
35
|
+
from mplang.edsl.graph import Operation
|
|
36
|
+
from mplang.runtime.interpreter import Interpreter
|
|
37
|
+
from mplang.runtime.value import Value, WrapValue
|
|
38
38
|
|
|
39
39
|
# =============================================================================
|
|
40
40
|
# Helper for SEAL serialization
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/crypto_impl.py
RENAMED
|
@@ -26,12 +26,12 @@ import coincurve
|
|
|
26
26
|
import numpy as np
|
|
27
27
|
from cryptography.hazmat.primitives.ciphers.aead import AESGCM
|
|
28
28
|
|
|
29
|
-
from mplang.
|
|
30
|
-
from mplang.
|
|
31
|
-
from mplang.
|
|
32
|
-
from mplang.
|
|
33
|
-
from mplang.
|
|
34
|
-
from mplang.
|
|
29
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
30
|
+
from mplang.dialects import crypto
|
|
31
|
+
from mplang.edsl import serde
|
|
32
|
+
from mplang.edsl.graph import Operation
|
|
33
|
+
from mplang.runtime.interpreter import Interpreter
|
|
34
|
+
from mplang.runtime.value import Value, WrapValue
|
|
35
35
|
|
|
36
36
|
# =============================================================================
|
|
37
37
|
# BytesValue - Wrapper for raw bytes (keys, hashes, ciphertexts)
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/field_impl.py
RENAMED
|
@@ -29,11 +29,11 @@ import threading
|
|
|
29
29
|
import jax.numpy as jnp
|
|
30
30
|
import numpy as np
|
|
31
31
|
|
|
32
|
-
from mplang.
|
|
33
|
-
from mplang.
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
36
|
-
from mplang.
|
|
32
|
+
from mplang.backends.tensor_impl import TensorValue, _unwrap, _wrap
|
|
33
|
+
from mplang.dialects import field
|
|
34
|
+
from mplang.edsl.graph import Operation
|
|
35
|
+
from mplang.kernels import py_kernels
|
|
36
|
+
from mplang.runtime.interpreter import Interpreter
|
|
37
37
|
|
|
38
38
|
# =============================================================================
|
|
39
39
|
# Kernel Loading
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/func_impl.py
RENAMED
|
@@ -23,10 +23,10 @@ from __future__ import annotations
|
|
|
23
23
|
|
|
24
24
|
from typing import TYPE_CHECKING, Any, ClassVar
|
|
25
25
|
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
28
|
-
from mplang.
|
|
29
|
-
from mplang.
|
|
26
|
+
from mplang.dialects.func import call_p, func_def_p
|
|
27
|
+
from mplang.edsl import serde
|
|
28
|
+
from mplang.edsl.graph import Graph, Operation
|
|
29
|
+
from mplang.runtime.value import Value
|
|
30
30
|
|
|
31
31
|
if TYPE_CHECKING:
|
|
32
32
|
from typing import Self
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/phe_impl.py
RENAMED
|
@@ -22,9 +22,9 @@ from typing import Any, cast
|
|
|
22
22
|
from lightphe import LightPHE
|
|
23
23
|
from lightphe.models.Ciphertext import Ciphertext
|
|
24
24
|
|
|
25
|
-
from mplang.
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
25
|
+
from mplang.dialects import phe
|
|
26
|
+
from mplang.edsl.graph import Operation
|
|
27
|
+
from mplang.runtime.interpreter import Interpreter
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
class PHEContext:
|
|
@@ -17,16 +17,16 @@
|
|
|
17
17
|
Provides Driver-side state, values, and ops for the simp dialect.
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
|
-
from mplang.
|
|
21
|
-
from mplang.
|
|
20
|
+
from mplang.backends.simp_driver.http import SimpHttpDriver, make_driver
|
|
21
|
+
from mplang.backends.simp_driver.mem import (
|
|
22
22
|
LocalCluster,
|
|
23
23
|
MemCluster,
|
|
24
24
|
SimpMemDriver,
|
|
25
25
|
make_simulator,
|
|
26
26
|
)
|
|
27
|
-
from mplang.
|
|
28
|
-
from mplang.
|
|
29
|
-
from mplang.
|
|
27
|
+
from mplang.backends.simp_driver.ops import DRIVER_HANDLERS
|
|
28
|
+
from mplang.backends.simp_driver.state import SimpDriver
|
|
29
|
+
from mplang.backends.simp_driver.values import DriverVar
|
|
30
30
|
|
|
31
31
|
__all__ = [
|
|
32
32
|
"DRIVER_HANDLERS",
|
|
@@ -23,16 +23,16 @@ from typing import TYPE_CHECKING, Any
|
|
|
23
23
|
|
|
24
24
|
import httpx
|
|
25
25
|
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
28
|
-
from mplang.
|
|
29
|
-
from mplang.
|
|
26
|
+
from mplang.backends.simp_driver.state import SimpDriver
|
|
27
|
+
from mplang.edsl import serde
|
|
28
|
+
from mplang.runtime.interpreter import Interpreter
|
|
29
|
+
from mplang.runtime.object_store import ObjectStore
|
|
30
30
|
|
|
31
31
|
if TYPE_CHECKING:
|
|
32
32
|
from concurrent.futures import Future
|
|
33
33
|
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
34
|
+
from mplang.edsl.graph import Graph
|
|
35
|
+
from mplang.libs.device import ClusterSpec
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
class SimpHttpDriver(SimpDriver):
|
|
@@ -142,10 +142,10 @@ def make_driver(endpoints: list[str], *, cluster_spec: Any = None) -> Interprete
|
|
|
142
142
|
>>> with interp:
|
|
143
143
|
... result = my_func()
|
|
144
144
|
"""
|
|
145
|
-
from mplang.
|
|
145
|
+
from mplang.backends.simp_driver.ops import DRIVER_HANDLERS
|
|
146
146
|
|
|
147
147
|
if cluster_spec is None:
|
|
148
|
-
from mplang.
|
|
148
|
+
from mplang.libs.device import ClusterSpec
|
|
149
149
|
|
|
150
150
|
cluster_spec = ClusterSpec.simple(
|
|
151
151
|
world_size=len(endpoints), endpoints=endpoints
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/mem.py
RENAMED
|
@@ -22,17 +22,17 @@ import pathlib
|
|
|
22
22
|
from collections.abc import Callable
|
|
23
23
|
from typing import TYPE_CHECKING, Any, cast
|
|
24
24
|
|
|
25
|
-
from mplang.
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
28
|
-
from mplang.
|
|
29
|
-
from mplang.
|
|
25
|
+
from mplang.backends.simp_driver.state import SimpDriver
|
|
26
|
+
from mplang.backends.simp_worker import WORKER_HANDLERS, SimpWorker
|
|
27
|
+
from mplang.backends.simp_worker.mem import LocalMesh
|
|
28
|
+
from mplang.runtime.interpreter import ExecutionTracer, Interpreter
|
|
29
|
+
from mplang.runtime.object_store import ObjectStore
|
|
30
30
|
|
|
31
31
|
if TYPE_CHECKING:
|
|
32
32
|
from concurrent.futures import Future
|
|
33
33
|
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
34
|
+
from mplang.edsl.graph import Graph
|
|
35
|
+
from mplang.libs.device import ClusterSpec
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
class MemCluster:
|
|
@@ -245,10 +245,10 @@ def make_simulator(
|
|
|
245
245
|
>>> with interp:
|
|
246
246
|
... result = my_func()
|
|
247
247
|
"""
|
|
248
|
-
from mplang.
|
|
248
|
+
from mplang.backends.simp_driver.ops import DRIVER_HANDLERS
|
|
249
249
|
|
|
250
250
|
if cluster_spec is None:
|
|
251
|
-
from mplang.
|
|
251
|
+
from mplang.libs.device import ClusterSpec
|
|
252
252
|
|
|
253
253
|
cluster_spec = ClusterSpec.simple(world_size)
|
|
254
254
|
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_driver/ops.py
RENAMED
|
@@ -23,10 +23,10 @@ from __future__ import annotations
|
|
|
23
23
|
|
|
24
24
|
from typing import Any
|
|
25
25
|
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
28
|
-
from mplang.
|
|
29
|
-
from mplang.
|
|
26
|
+
from mplang.backends.simp_driver.values import DriverVar
|
|
27
|
+
from mplang.dialects import simp
|
|
28
|
+
from mplang.edsl.graph import Graph, Operation
|
|
29
|
+
from mplang.edsl.typing import CustomType
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
def _get_driver_context(interpreter: Any) -> Any:
|
|
@@ -19,12 +19,12 @@ from __future__ import annotations
|
|
|
19
19
|
from abc import ABC, abstractmethod
|
|
20
20
|
from typing import TYPE_CHECKING, Any
|
|
21
21
|
|
|
22
|
-
from mplang.
|
|
22
|
+
from mplang.runtime.dialect_state import DialectState
|
|
23
23
|
|
|
24
24
|
if TYPE_CHECKING:
|
|
25
25
|
from concurrent.futures import Future
|
|
26
26
|
|
|
27
|
-
from mplang.
|
|
27
|
+
from mplang.edsl.graph import Graph
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
class SimpDriver(DialectState, ABC):
|
|
@@ -18,8 +18,8 @@ from __future__ import annotations
|
|
|
18
18
|
|
|
19
19
|
from typing import Any, ClassVar, Self
|
|
20
20
|
|
|
21
|
-
from mplang.
|
|
22
|
-
from mplang.
|
|
21
|
+
from mplang.edsl import serde
|
|
22
|
+
from mplang.runtime.value import Value
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
@serde.register_class
|
|
@@ -17,9 +17,9 @@
|
|
|
17
17
|
Provides Worker-side state and ops for the simp dialect.
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
|
-
from mplang.
|
|
21
|
-
from mplang.
|
|
22
|
-
from mplang.
|
|
20
|
+
from mplang.backends.simp_worker.mem import LocalMesh, ThreadCommunicator
|
|
21
|
+
from mplang.backends.simp_worker.ops import WORKER_HANDLERS
|
|
22
|
+
from mplang.backends.simp_worker.state import SimpWorker
|
|
23
23
|
|
|
24
24
|
__all__ = [
|
|
25
25
|
"WORKER_HANDLERS",
|
|
@@ -21,7 +21,7 @@ This module contains:
|
|
|
21
21
|
|
|
22
22
|
Usage:
|
|
23
23
|
# Start a worker server
|
|
24
|
-
from mplang.
|
|
24
|
+
from mplang.backends.simp_http_worker import create_worker_app
|
|
25
25
|
import uvicorn
|
|
26
26
|
|
|
27
27
|
app = create_worker_app(rank=0, world_size=3, endpoints=[...])
|
|
@@ -47,16 +47,16 @@ import httpx
|
|
|
47
47
|
from fastapi import FastAPI, HTTPException
|
|
48
48
|
from pydantic import BaseModel
|
|
49
49
|
|
|
50
|
-
from mplang.
|
|
51
|
-
from mplang.
|
|
50
|
+
from mplang.backends import spu_impl as _spu_impl # noqa: F401
|
|
51
|
+
from mplang.backends import tensor_impl as _tensor_impl # noqa: F401
|
|
52
52
|
|
|
53
53
|
# Register operation implementations (side-effect imports)
|
|
54
|
-
from mplang.
|
|
55
|
-
from mplang.
|
|
56
|
-
from mplang.
|
|
57
|
-
from mplang.
|
|
58
|
-
from mplang.
|
|
59
|
-
from mplang.
|
|
54
|
+
from mplang.backends.simp_worker import SimpWorker
|
|
55
|
+
from mplang.backends.simp_worker import ops as _simp_worker_ops # noqa: F401
|
|
56
|
+
from mplang.edsl import serde
|
|
57
|
+
from mplang.edsl.graph import Graph
|
|
58
|
+
from mplang.runtime.interpreter import ExecutionTracer, Interpreter
|
|
59
|
+
from mplang.runtime.object_store import ObjectStore
|
|
60
60
|
|
|
61
61
|
logger = logging.getLogger(__name__)
|
|
62
62
|
|
|
@@ -250,7 +250,7 @@ def create_worker_app(
|
|
|
250
250
|
from collections.abc import Callable
|
|
251
251
|
from typing import cast
|
|
252
252
|
|
|
253
|
-
from mplang.
|
|
253
|
+
from mplang.backends.simp_worker.ops import WORKER_HANDLERS
|
|
254
254
|
|
|
255
255
|
# func_impl is already imported at module level for side-effects
|
|
256
256
|
handlers: dict[str, Callable[..., Any]] = {**WORKER_HANDLERS} # type: ignore[dict-item]
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/mem.py
RENAMED
|
@@ -53,7 +53,7 @@ class ThreadCommunicator:
|
|
|
53
53
|
def send(self, to: int, key: str, data: Any) -> None:
|
|
54
54
|
assert 0 <= to < self.world_size
|
|
55
55
|
if self.use_serde:
|
|
56
|
-
from mplang.
|
|
56
|
+
from mplang.edsl import serde
|
|
57
57
|
|
|
58
58
|
data = serde.loads(serde.dumps(data))
|
|
59
59
|
self.peers[to]._on_receive(self.rank, key, data)
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/simp_worker/ops.py
RENAMED
|
@@ -22,9 +22,9 @@ from __future__ import annotations
|
|
|
22
22
|
|
|
23
23
|
from typing import Any
|
|
24
24
|
|
|
25
|
-
from mplang.
|
|
26
|
-
from mplang.
|
|
27
|
-
from mplang.
|
|
25
|
+
from mplang.dialects import simp
|
|
26
|
+
from mplang.edsl.graph import Operation
|
|
27
|
+
from mplang.runtime.interpreter import Interpreter
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
def _ensure_worker_context(interpreter: Any, op_name: str) -> Any:
|
|
@@ -111,7 +111,7 @@ def _uniform_cond_worker_impl(
|
|
|
111
111
|
interpreter: Interpreter, op: Operation, pred: Any, *args: Any
|
|
112
112
|
) -> Any:
|
|
113
113
|
"""Worker implementation of simp.uniform_cond."""
|
|
114
|
-
from mplang.
|
|
114
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
115
115
|
|
|
116
116
|
if op.attrs.get("verify_uniform", True):
|
|
117
117
|
pass # TODO: Implement AllReduce verification
|
|
@@ -128,7 +128,7 @@ def _uniform_cond_worker_impl(
|
|
|
128
128
|
|
|
129
129
|
def _while_loop_worker_impl(interpreter: Interpreter, op: Operation, *args: Any) -> Any:
|
|
130
130
|
"""Worker implementation of simp.while_loop."""
|
|
131
|
-
from mplang.
|
|
131
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
132
132
|
|
|
133
133
|
cond_graph = op.regions[0]
|
|
134
134
|
body_graph = op.regions[1]
|
|
@@ -18,10 +18,8 @@ from __future__ import annotations
|
|
|
18
18
|
|
|
19
19
|
from typing import Any
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
from mplang.v2.runtime.dialect_state import DialectState
|
|
24
|
-
from mplang.v2.runtime.object_store import ObjectStore
|
|
21
|
+
from mplang.runtime.dialect_state import DialectState
|
|
22
|
+
from mplang.runtime.object_store import ObjectStore
|
|
25
23
|
|
|
26
24
|
|
|
27
25
|
class SimpWorker(DialectState):
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/spu_impl.py
RENAMED
|
@@ -26,13 +26,13 @@ import numpy as np
|
|
|
26
26
|
import spu.api as spu_api
|
|
27
27
|
import spu.libspu as libspu
|
|
28
28
|
|
|
29
|
-
from mplang.
|
|
30
|
-
from mplang.
|
|
31
|
-
from mplang.
|
|
32
|
-
from mplang.
|
|
33
|
-
from mplang.
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
29
|
+
from mplang.backends.spu_state import SPUState
|
|
30
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
31
|
+
from mplang.dialects import spu
|
|
32
|
+
from mplang.edsl import serde
|
|
33
|
+
from mplang.edsl.graph import Operation
|
|
34
|
+
from mplang.runtime.interpreter import Interpreter
|
|
35
|
+
from mplang.runtime.value import WrapValue
|
|
36
36
|
|
|
37
37
|
# =============================================================================
|
|
38
38
|
# SPU Share Wrapper
|
|
@@ -160,7 +160,7 @@ def exec_impl(interpreter: Interpreter, op: Operation, *args: Any) -> Any:
|
|
|
160
160
|
The SPU config must contain parties info to correctly map global rank
|
|
161
161
|
to local SPU rank and determine SPU world size.
|
|
162
162
|
"""
|
|
163
|
-
from mplang.
|
|
163
|
+
from mplang.backends.simp_worker.state import SimpWorker
|
|
164
164
|
|
|
165
165
|
# Get SPU config from attrs (passed through from run_jax)
|
|
166
166
|
config: spu.SPUConfig = op.attrs["config"]
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/spu_state.py
RENAMED
|
@@ -25,10 +25,10 @@ from typing import TYPE_CHECKING, Any
|
|
|
25
25
|
import spu.api as spu_api
|
|
26
26
|
import spu.libspu as libspu
|
|
27
27
|
|
|
28
|
-
from mplang.
|
|
28
|
+
from mplang.runtime.dialect_state import DialectState
|
|
29
29
|
|
|
30
30
|
if TYPE_CHECKING:
|
|
31
|
-
from mplang.
|
|
31
|
+
from mplang.dialects import spu
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
class SPUState(DialectState):
|
|
@@ -74,7 +74,7 @@ class SPUState(DialectState):
|
|
|
74
74
|
Returns:
|
|
75
75
|
A tuple of (Runtime, Io) for this party.
|
|
76
76
|
"""
|
|
77
|
-
from mplang.
|
|
77
|
+
from mplang.backends.spu_impl import to_runtime_config
|
|
78
78
|
|
|
79
79
|
# Determine link mode
|
|
80
80
|
if communicator is not None:
|
|
@@ -143,7 +143,7 @@ class SPUState(DialectState):
|
|
|
143
143
|
Returns:
|
|
144
144
|
libspu link context using BaseChannel adapters
|
|
145
145
|
"""
|
|
146
|
-
from mplang.
|
|
146
|
+
from mplang.backends.channel import BaseChannel
|
|
147
147
|
|
|
148
148
|
# Get this worker's global rank
|
|
149
149
|
global_rank = parties[local_rank]
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/store_impl.py
RENAMED
|
@@ -18,9 +18,9 @@ from __future__ import annotations
|
|
|
18
18
|
|
|
19
19
|
from typing import Any
|
|
20
20
|
|
|
21
|
-
from mplang.
|
|
22
|
-
from mplang.
|
|
23
|
-
from mplang.
|
|
21
|
+
from mplang.dialects import store
|
|
22
|
+
from mplang.edsl.graph import Operation
|
|
23
|
+
from mplang.runtime.interpreter import Interpreter
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
def _get_uri(uri_base: str) -> str:
|
{mplang_nightly-0.1.dev269/mplang/v2 → mplang_nightly-0.1.dev271/mplang}/backends/table_impl.py
RENAMED
|
@@ -28,13 +28,13 @@ import duckdb
|
|
|
28
28
|
import pandas as pd
|
|
29
29
|
import pyarrow as pa
|
|
30
30
|
|
|
31
|
-
import mplang.
|
|
32
|
-
from mplang.
|
|
33
|
-
from mplang.
|
|
34
|
-
from mplang.
|
|
35
|
-
from mplang.
|
|
36
|
-
from mplang.
|
|
37
|
-
from mplang.
|
|
31
|
+
import mplang.edsl.typing as elt
|
|
32
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
33
|
+
from mplang.dialects import table
|
|
34
|
+
from mplang.edsl import serde
|
|
35
|
+
from mplang.edsl.graph import Operation
|
|
36
|
+
from mplang.runtime.interpreter import Interpreter
|
|
37
|
+
from mplang.runtime.value import WrapValue
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
class BatchReader(ABC):
|
|
@@ -631,7 +631,7 @@ def table2tensor_impl(interpreter: Interpreter, op: Operation, table_val: Any) -
|
|
|
631
631
|
|
|
632
632
|
Returns TensorValue if tensor_impl is available, otherwise raw np.ndarray.
|
|
633
633
|
"""
|
|
634
|
-
from mplang.
|
|
634
|
+
from mplang.backends.tensor_impl import TensorValue
|
|
635
635
|
|
|
636
636
|
tbl = _unwrap(table_val)
|
|
637
637
|
df = tbl.to_pandas()
|