mplang-nightly 0.1.dev253__py3-none-any.whl → 0.1.dev254__py3-none-any.whl

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.
@@ -300,12 +300,13 @@ def generate_sparse_noise(n: int, weight: int) -> el.Object:
300
300
 
301
301
  # Generate unique indices using rejection-free Fisher-Yates-like approach
302
302
  # Map random u64 to positions while ensuring uniqueness
303
- positions = jnp.zeros(weight, dtype=jnp.int32)
303
+ # Use int64 to avoid dtype mismatch warning in scatter operations
304
+ positions = jnp.zeros(weight, dtype=jnp.int64)
304
305
 
305
306
  # Build positions array (unrolled for JAX compatibility)
306
307
  for i in range(weight):
307
308
  # Map random value to remaining range [0, n-i)
308
- pos = jnp.int32(idx_entropy[i] % (n - i))
309
+ pos = jnp.int64(idx_entropy[i] % (n - i))
309
310
 
310
311
  # Shift position to avoid already-used indices
311
312
  # Count how many existing positions are <= current pos
@@ -360,6 +360,32 @@ class Interpreter(AbstractInterpreter):
360
360
  self.trace_pid = trace_pid
361
361
  self.store: ObjectStore | None = store
362
362
 
363
+ def shutdown(self) -> None:
364
+ """Shutdown the interpreter and release resources.
365
+
366
+ This method is idempotent and safe to call multiple times.
367
+ It performs the following cleanup:
368
+ 1. Shuts down the internal executor (if any).
369
+ 2. Stops the execution tracer (if any).
370
+ 3. Shuts down any attached dialect states (e.g., stopping drivers).
371
+ """
372
+ # 1. Shutdown Executor
373
+ if self.executor:
374
+ self.executor.shutdown(wait=True)
375
+ self.executor = None
376
+
377
+ # 2. Stop Tracer
378
+ if self.tracer:
379
+ self.tracer.stop()
380
+ # Don't clear self.tracer, as we might want to read stats later
381
+
382
+ # 3. Shutdown Dialect States
383
+ # Iterate over all attached states (e.g., drivers, cluster managers)
384
+ # and shut them down if they support it.
385
+ for state in self._states.values():
386
+ if hasattr(state, "shutdown") and callable(state.shutdown):
387
+ state.shutdown()
388
+
363
389
  # =========================================================================
364
390
  # Dialect State Management
365
391
  # =========================================================================
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mplang-nightly
3
- Version: 0.1.dev253
3
+ Version: 0.1.dev254
4
4
  Summary: Multi-Party Programming Language
5
5
  Author-email: SecretFlow Team <secretflow-contact@service.alipay.com>
6
6
  License: Apache License
@@ -78,7 +78,7 @@ mplang/v1/utils/func_utils.py,sha256=vCJcZmu0bEbqhOQKdpttV2_MBllIcPSN0b8U4WjNGGo
78
78
  mplang/v1/utils/spu_utils.py,sha256=S3L9RBkBe2AvSuMSQQ12cBY5Y1NPthubvErSX_7nj1A,4158
79
79
  mplang/v1/utils/table_utils.py,sha256=1fDgZLrRf2bvKvA45egT6RtMPgwE1cI2BokMHUU_xv4,5945
80
80
  mplang/v2/__init__.py,sha256=SqVxDiRvA9W49NaXaT70spf6-xSbat1ZfIdI4j8KgFk,13816
81
- mplang/v2/cli.py,sha256=KBKJbgqsxAdrDYXjj3KMWO1zdhHQdQeJF94tOuKbLio,19665
81
+ mplang/v2/cli.py,sha256=QtiTFG418k26opRy4GhVV8fwFqRS11xTLH3xRCIIm6M,19665
82
82
  mplang/v2/cli_guide.md,sha256=kyoCaqkvIJJ1vsvCyBu3qgOuRSb0txu9BDZoy9GU5S0,3617
83
83
  mplang/v2/backends/__init__.py,sha256=H-4-jBEPWBZl6XT7AxBShRINnruF_f_2lB4iaiQoXME,1988
84
84
  mplang/v2/backends/bfv_impl.py,sha256=cQPinze3c2xN4CmIIoXxZoIEhu9ynoGaXbdF95z_aTE,25709
@@ -94,7 +94,7 @@ mplang/v2/backends/tee_impl.py,sha256=5PzzQ6mibd6-Wyvvt_8DD6G-CzA4VAmqGk6H1Z9ris
94
94
  mplang/v2/backends/tensor_impl.py,sha256=8f9f4-_e-m4JWGZSbXLmSSHcgPykRBc1sAYrA3OIxEg,18906
95
95
  mplang/v2/backends/simp_driver/__init__.py,sha256=ahOPYYvtFVwqxiFxkpSNP8BCTao_MfCXmtt5zsMaJxg,1258
96
96
  mplang/v2/backends/simp_driver/http.py,sha256=nl7ny7f8bzhy1ubNIDXhMgA5P_WA8dhhgFNHvcmfSKk,5548
97
- mplang/v2/backends/simp_driver/mem.py,sha256=K5VR86M3Iy-0rcmvCCNHLO_XR46Z-g8miVjCRlzmzkA,9002
97
+ mplang/v2/backends/simp_driver/mem.py,sha256=nFA-KkYx5fDh6NseI8QOd5FkNErPDq4h_QjrWD7nMrE,9126
98
98
  mplang/v2/backends/simp_driver/ops.py,sha256=UeVC3eaCUwxrkN6OsJyMYj8qMDufMFQI0YogeSbhkjM,4515
99
99
  mplang/v2/backends/simp_driver/state.py,sha256=6tQyQg_PNzHOJkjCoNm51Wvknl3XiJZzpQXuRB4qRtM,1719
100
100
  mplang/v2/backends/simp_driver/values.py,sha256=OQ_7Kt6l7Pcfx5eB6GVbpunS6CG60Lj0AS6H9Wx9sKQ,1515
@@ -118,7 +118,7 @@ mplang/v2/dialects/tee.py,sha256=R_XySt-JNhZJNdjRiUw-nU4BjwBNMtV4sYFMOtvJZzc,115
118
118
  mplang/v2/dialects/tensor.py,sha256=FxPKsiNi2vFb-R2hqRgR7zYYO5LdRu_rdDHfjE3_2Lw,40003
119
119
  mplang/v2/edsl/README.md,sha256=viflvdRojOa6Xk_UMRPqpuPGXcPGmdlv2-XR6LO7B58,7592
120
120
  mplang/v2/edsl/__init__.py,sha256=YqmtrJXD1NLKS-_Ofnxtiv77muokTZnrAiV7dXUZVyo,2607
121
- mplang/v2/edsl/context.py,sha256=jkz0Fs6dMGQ9V68-h5ki-7hdBXJ6s5WqoYVJSctPRds,10089
121
+ mplang/v2/edsl/context.py,sha256=0RgQAt7cbPudt9kyBb7wjZ31HzGMnq81Ah5sgs_qU2U,10093
122
122
  mplang/v2/edsl/graph.py,sha256=VXeE_9Oc9E0qfnwFDYBvFyDL79qvABLs1aFC-lheJ8M,14983
123
123
  mplang/v2/edsl/jit.py,sha256=tofGAqNSUPuEmqy0flaZpNaR1Y425Pk2FdmCKxRPCM8,2069
124
124
  mplang/v2/edsl/object.py,sha256=rijDu4yuG_Sitgfz5gk8-mJ1-3Bgor0QrQU04q9mkgo,1909
@@ -139,6 +139,8 @@ mplang/v2/libs/collective.py,sha256=pfXq9tmFUNKjeHhWMTjtzOi-m2Fn1lLru1G6txZVyic,
139
139
  mplang/v2/libs/device/__init__.py,sha256=mXsSvXrWmlHu6Ch87Vcd85m4L_qdDkbSvJyHyuai2fc,1251
140
140
  mplang/v2/libs/device/api.py,sha256=8i0KP3q_XbOfPYB9fzs7pA6vVY4Ib6lxdoiwAi_RlmU,27838
141
141
  mplang/v2/libs/device/cluster.py,sha256=YUqYZ_IBS6rpV5ejUFP3kTxcTQHSyeDeuaJcsiFY_Js,12508
142
+ mplang/v2/libs/ml/__init__.py,sha256=xTxhC_YwHP32muUEFCEwOjc-3Ml-vmO48NNECU90zm4,787
143
+ mplang/v2/libs/ml/sgb.py,sha256=qoJww01EEbWo9nvwB5w-JZqx9BchcmhSrToypxV7fPg,60297
142
144
  mplang/v2/libs/mpc/__init__.py,sha256=znADXBv0cATTvNN9pVOH8V47O5vmYZnR1Y7tfh1QVjw,1405
143
145
  mplang/v2/libs/mpc/_utils.py,sha256=Xzt5jIQSm2e8_xFC6zrdKL93IqbTDb40apk2JBbEgBI,3215
144
146
  mplang/v2/libs/mpc/analytics/__init__.py,sha256=8_1Sm05nrO2ISat1hNZT6UXHpKQ-SDBby1eeS-wm_fE,1204
@@ -160,15 +162,15 @@ mplang/v2/libs/mpc/psi/rr22.py,sha256=2mN1zbjrBUgaWCsF3Lj8ohtK6gcG95PtBb3EseS-Ns
160
162
  mplang/v2/libs/mpc/psi/unbalanced.py,sha256=hC84TVsgnlJDg6hpUrx8kbUbmFb27T9wrHG0zv3FXLc,7433
161
163
  mplang/v2/libs/mpc/vole/__init__.py,sha256=2dU4X6n73HoK-YCiCl4b36SkLRKR6rofe2xxLxBz6Rc,968
162
164
  mplang/v2/libs/mpc/vole/gilboa.py,sha256=apnKOYR4_dJ2wkzGq7PBlwauA-W5i5MPESdetCWTegU,9951
163
- mplang/v2/libs/mpc/vole/ldpc.py,sha256=FMmK8SNifFr8qTXBSWjFEXvsZvWPyyG5L5OglXJhmas,12712
165
+ mplang/v2/libs/mpc/vole/ldpc.py,sha256=1H_Dz1xdZTN2f3V6lz9NKBaY-How9Qu1GgwN0IJZero,12786
164
166
  mplang/v2/libs/mpc/vole/silver.py,sha256=Qnk3EiA18i6RJl-iDCMHOwNdf0Zvkmxq_57O3Y0HPFw,12236
165
167
  mplang/v2/runtime/__init__.py,sha256=VdUwJ3kDaI46FvGw7iMGwcsjt0HTGmmRmaBwj99xKIw,620
166
168
  mplang/v2/runtime/dialect_state.py,sha256=HxO1i4kSOujS2tQzAF9-WmI3nChSaGgupf2_07dHetY,1277
167
- mplang/v2/runtime/interpreter.py,sha256=vQRcK6RHJVHVjqOOA6QgySFEaEWvlvq0qpXvgk-HiW0,31301
169
+ mplang/v2/runtime/interpreter.py,sha256=UzrM5oepka6H0YKRZncNXhsuwKVm4pliG5J92fFRZMI,32300
168
170
  mplang/v2/runtime/object_store.py,sha256=yT6jtKG2GUEJVmpq3gnQ8mCMvUFYzgBciC5A-J5KRdk,5998
169
171
  mplang/v2/runtime/value.py,sha256=CMOxElJP78v7pjasPhEpbxWbSgB2KsLbpPmzz0mQX0E,4317
170
- mplang_nightly-0.1.dev253.dist-info/METADATA,sha256=6kbK79_gaRWSwlyJhIVZxD-ToGqhWe60IOyt2aKSe2U,16768
171
- mplang_nightly-0.1.dev253.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
172
- mplang_nightly-0.1.dev253.dist-info/entry_points.txt,sha256=mG1oJT-GAjQR834a62_QIWb7litzWPPyVnwFqm-rWuY,55
173
- mplang_nightly-0.1.dev253.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
174
- mplang_nightly-0.1.dev253.dist-info/RECORD,,
172
+ mplang_nightly-0.1.dev254.dist-info/METADATA,sha256=ZcoLTH8VISCxJm5lA7S8eZBNSF5vEYWphlx8Ni9fO38,16768
173
+ mplang_nightly-0.1.dev254.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
174
+ mplang_nightly-0.1.dev254.dist-info/entry_points.txt,sha256=mG1oJT-GAjQR834a62_QIWb7litzWPPyVnwFqm-rWuY,55
175
+ mplang_nightly-0.1.dev254.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
176
+ mplang_nightly-0.1.dev254.dist-info/RECORD,,