torchmonarch-nightly 2025.6.5__cp310-cp310-manylinux2014_x86_64.whl → 2025.6.6__cp310-cp310-manylinux2014_x86_64.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.
monarch/_rust_bindings.so CHANGED
Binary file
monarch/actor_mesh.py CHANGED
@@ -50,7 +50,7 @@ from monarch._rust_bindings.monarch_hyperactor.mailbox import (
50
50
  from monarch._rust_bindings.monarch_hyperactor.proc import ActorId
51
51
  from monarch._rust_bindings.monarch_hyperactor.shape import Point as HyPoint, Shape
52
52
  from monarch.common.pickle_flatten import flatten, unflatten
53
- from monarch.common.shape import MeshTrait, NDSlice, Shape
53
+ from monarch.common.shape import MeshTrait, NDSlice
54
54
 
55
55
  logger = logging.getLogger(__name__)
56
56
 
@@ -158,7 +158,7 @@ class _ActorMeshRefImpl:
158
158
  mailbox,
159
159
  hy_actor_mesh,
160
160
  hy_actor_mesh.shape,
161
- [cast(ActorId, hy_actor_mesh.get(i)) for i in range(len(shape.ndslice))],
161
+ [cast(ActorId, hy_actor_mesh.get(i)) for i in range(len(shape))],
162
162
  )
163
163
 
164
164
  @staticmethod
@@ -204,7 +204,7 @@ class _ActorMeshRefImpl:
204
204
  # The fix is to provide a first-class reference into Python, and always call "cast"
205
205
  # on it, including for load balanced requests.
206
206
  if selection == "choose":
207
- idx = _load_balancing_seed.randrange(len(self._shape.ndslice))
207
+ idx = _load_balancing_seed.randrange(len(self._shape))
208
208
  actor_rank = self._shape.ndslice[idx]
209
209
  self._mailbox.post(self._please_replace_me_actor_ids[actor_rank], message)
210
210
  return
@@ -223,9 +223,8 @@ class _ActorMeshRefImpl:
223
223
  else:
224
224
  raise ValueError(f"invalid selection: {selection}")
225
225
 
226
- @property
227
- def len(self) -> int:
228
- return len(self._shape.ndslice)
226
+ def __len__(self) -> int:
227
+ return len(self._shape)
229
228
 
230
229
 
231
230
  class Endpoint(Generic[P, R]):
@@ -258,7 +257,7 @@ class Endpoint(Generic[P, R]):
258
257
  return r.recv()
259
258
 
260
259
  def call_one(self, *args: P.args, **kwargs: P.kwargs) -> Future[R]:
261
- if self._actor_mesh.len != 1:
260
+ if len(self._actor_mesh) != 1:
262
261
  raise ValueError(
263
262
  f"Can only use 'call_one' on a single Actor but this actor has shape {self._actor_mesh._shape}"
264
263
  )
@@ -270,8 +269,8 @@ class Endpoint(Generic[P, R]):
270
269
  send(self, args, kwargs, port=p)
271
270
 
272
271
  async def process():
273
- results = [None] * self._actor_mesh.len
274
- for _ in range(self._actor_mesh.len):
272
+ results = [None] * len(self._actor_mesh)
273
+ for _ in range(len(self._actor_mesh)):
275
274
  rank, value = await r.recv()
276
275
  results[rank] = value
277
276
  call_shape = Shape(
@@ -292,7 +291,7 @@ class Endpoint(Generic[P, R]):
292
291
  p, r = port(self)
293
292
  # pyre-ignore
294
293
  send(self, args, kwargs, port=p)
295
- for _ in range(self._actor_mesh.len):
294
+ for _ in range(len(self._actor_mesh)):
296
295
  yield await r.recv()
297
296
 
298
297
  def broadcast(self, *args: P.args, **kwargs: P.kwargs) -> None:
@@ -346,6 +345,9 @@ class ValueMesh(MeshTrait, Generic[R]):
346
345
  for rank in self._shape.ranks():
347
346
  yield Point(rank, self._shape), self._values[rank]
348
347
 
348
+ def __len__(self):
349
+ return len(self._shape)
350
+
349
351
  @property
350
352
  def _ndslice(self) -> NDSlice:
351
353
  return self._shape.ndslice
Binary file
Binary file
monarch/sim_mesh.py CHANGED
@@ -205,7 +205,7 @@ class Bootstrap:
205
205
  self.client_bootstrap_addr: str = (
206
206
  f"sim!unix!@client,{proxy_addr},unix!@system,{proxy_addr}"
207
207
  )
208
- bootstrap_simulator_backend(self.bootstrap_addr, world_size)
208
+ bootstrap_simulator_backend(self.bootstrap_addr, proxy_addr, world_size)
209
209
 
210
210
  self._simulator_client = SimulatorClient(proxy_addr)
211
211
  for i in range(num_meshes):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: torchmonarch-nightly
3
- Version: 2025.6.5
3
+ Version: 2025.6.6
4
4
  Summary: Monarch: Single controller library
5
5
  Author: Meta
6
6
  Author-email: oncall+monarch@xmail.facebook.com
@@ -60,13 +60,13 @@ rustup default nightly
60
60
  # Install non-python dependencies
61
61
  conda install libunwind -y
62
62
 
63
- # Install the correct cuda and cuda-toolkit versions for your machine, as well as NCCL-dev
64
- sudo dnf install cuda-toolkit-12-0 cuda-12-0 libnccl-devel
63
+ # Install the correct cuda and cuda-toolkit versions for your machine
64
+ sudo dnf install cuda-toolkit-12-0 cuda-12-0
65
65
 
66
- # Install clang dev
67
- sudo dnf install clang-devel
68
- # In some envrionments, the following may be necessary instead
69
- conda install conda-forge::clangdev
66
+ # Install clang-dev and nccl-dev
67
+ sudo dnf install clang-devel libnccl-devel
68
+ # Or, in some envrionments, the following may be necessary instead
69
+ conda install -c conda-forge clangdev nccl
70
70
  conda update -n monarchenv --all -c conda-forge -y
71
71
 
72
72
  # Install build dependencies
@@ -1,7 +1,7 @@
1
1
  monarch/__init__.py,sha256=iUvWHc0-7Q2tovRoRxOIiA3TsefMXCbWl-jEfQ2djew,6897
2
- monarch/_rust_bindings.so,sha256=8U1_usPpweGa-Q2Q_8SqsFgxRFb3UoKCVPwshobKk_8,39091976
2
+ monarch/_rust_bindings.so,sha256=b3W_9ICPY2P_yDKwRY6liTdhGGhi2euITQwhj0-4hZk,39102560
3
3
  monarch/_testing.py,sha256=MN8DK1e-wzV0-R_nFW1b_7-O5oKfWvZ12BMGD4Z7PQk,6755
4
- monarch/actor_mesh.py,sha256=kfky0QPtji5yDaZ_vVIbWncL7M_parqoxzECvZNc2_c,22301
4
+ monarch/actor_mesh.py,sha256=KfvHST97c35kyL7FslAfkRxo22UN33u3_gk2yrbZu4A,22320
5
5
  monarch/allocator.py,sha256=_2DKFP9pSD33zDgH7xZJC8Tq7BQrCeQEUmMB7_xCT0Y,1784
6
6
  monarch/bootstrap_main.py,sha256=_LgEvfI_kFHj2QWH8CLRBQI1tbxS0uWrnHqwzOVbjeI,2417
7
7
  monarch/cached_remote_function.py,sha256=kYdB6r4OHx_T_uX4q3tCNcp1t2DJwF8tPTIahUiT2pU,8785
@@ -9,7 +9,7 @@ monarch/fetch.py,sha256=61jxo7sx4QNUTkc0_rF5NaJROen4tKbAaiIjrXWLOvg,1705
9
9
  monarch/future.py,sha256=lcdFEe7m1shYPPuvZ1RkS6JUIChEKGBWe3v7x_nu4Hg,731
10
10
  monarch/gradient_generator.py,sha256=Rl3dmXGceTdCc1mYBg2JciR88ywGPnW7TVkL86KwqEA,6366
11
11
  monarch/memory.py,sha256=ol86dBhFAJqg78iF25-BuK0wuwj1onR8FIioZ_B0gjw,1377
12
- monarch/monarch_controller,sha256=3LmdS4fndvO_lkXcuOVzNZH-HvkTe8oWfQaLVb-om3w,20692200
12
+ monarch/monarch_controller,sha256=LlUJ69r9spjCivWYdew83cFM4YszUx5Djqp9k_xxppo,20386688
13
13
  monarch/notebook.py,sha256=zu9MKDFKf1-rCM2TqFSRJjMBeiWuKcJSyUFLvoZRQzs,25949
14
14
  monarch/opaque_module.py,sha256=oajOu_WD1hD4hxE8HDdO-tvWY7KDHWd7VaAhJEa5L2I,10446
15
15
  monarch/opaque_object.py,sha256=IVpll4pyuKZMo_EnPh4s0qnx8RlAcJrJ1yoLX6E75wQ,2782
@@ -21,7 +21,7 @@ monarch/rdma.py,sha256=eWwYKurW-Y6j68m0xH8jeyE3bfmSgB5ZwM2j-RmbCHc,6397
21
21
  monarch/remote_class.py,sha256=-OAowzU1aDP6i4ik_SjXntVUC9h4dqAzgqwohkQ6Grc,4167
22
22
  monarch/rust_backend_mesh.py,sha256=1htC62of4MgFtkezWGlsxSFtKJdc0CIeqeSuOx7yu3M,9944
23
23
  monarch/rust_local_mesh.py,sha256=7ASptybn3wy4J7eoBc7LhGW4j4AA6bigl5Kuhyflw8s,47405
24
- monarch/sim_mesh.py,sha256=pJ4DDn35Y7CobsIwbkUefBbnEHaAc7Ro_7YQdNaP2Dg,12171
24
+ monarch/sim_mesh.py,sha256=9wkS99L0EpG2Gldi-nzA-3ww7z__DQ7Qp2uReMfn188,12183
25
25
  monarch/tensor_worker_main.py,sha256=Nbarl2sJKIddLeaRFsaUnqOerLHjzggUr9SqCr2_GYI,8300
26
26
  monarch/tensorboard.py,sha256=MnLgH5lbqeUJauEuirEgR6L_qYl2NGdtwZOWIAuOZao,2587
27
27
  monarch/world_mesh.py,sha256=GqZpFoVNJPxYa70rLYgv0vu8Vg1nXqx_GYERRb1E9Pc,975
@@ -77,7 +77,7 @@ monarch/controller/rust_backend/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTY
77
77
  monarch/controller/rust_backend/controller.py,sha256=-bZYE6u5sB9C0Cnc6NiBoBit9TvolKHRn05I-LUpB8I,9516
78
78
  monarch/gradient/__init__.py,sha256=kqmzwt16mMpk0M3GhpgP_f7da4DGnaV9chDzbt66k4Q,308
79
79
  monarch/gradient/_gradient_generator.pyi,sha256=6cX0UxaDt9NAlwgIhTgnweqGOf6qRhHiGnUzSWNCxdU,630
80
- monarch/gradient/_gradient_generator.so,sha256=povu68MOK7Yx1HHCCrYdLIK7bKnyjz-ZEXycpCsNYZU,11456608
80
+ monarch/gradient/_gradient_generator.so,sha256=RCslwjx2Ji9uqcA9M0IqnEsKSYAnS6NdExwyqfM71YA,11456536
81
81
  monarch/parallel/__init__.py,sha256=6920kIkhiX7AiyjYvyc1ad8ccP-bStJJ1sS5KkeN2P0,352
82
82
  monarch/parallel/pipelining/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
83
83
  monarch/parallel/pipelining/runtime.py,sha256=KK8TG1gUYEzSsquiZoPTWGSIC74mlncD7cYknKxfb3c,32470
@@ -149,9 +149,9 @@ tests/simulator/test_profiling.py,sha256=TGYCfzTLdkpIwnOuO6KApprmrgPIRQe60KRX3wk
149
149
  tests/simulator/test_simulator.py,sha256=LO8lA0ssY-OGEBL5ipEu74f97Y765TEwfUOv-DtIptM,14568
150
150
  tests/simulator/test_task.py,sha256=ipqBDuDAysuo1xOB9S5psaFvwe6VATD43IovCTSs0t4,2327
151
151
  tests/simulator/test_worker.py,sha256=QrWWIJ3HDgDLkBPRc2mwYPlOQoXQcj1qRfc0WUfKkFY,3507
152
- torchmonarch_nightly-2025.6.5.dist-info/licenses/LICENSE,sha256=e0Eotbf_rHOYPuEUlppIbvwy4SN98CZnl_hqwvbDA4Q,1530
153
- torchmonarch_nightly-2025.6.5.dist-info/METADATA,sha256=fZ_j4y-CPXYKHI6JBmYaUrSKsQBwDpgboeLy_QY8yj4,2768
154
- torchmonarch_nightly-2025.6.5.dist-info/WHEEL,sha256=_wZSFk0d90K9wOBp8Q-UGxshyiJ987JoPiyUBNC6VLk,104
155
- torchmonarch_nightly-2025.6.5.dist-info/entry_points.txt,sha256=sqfQ16oZqjEvttUI-uj9BBXIIE6jt05bYFSmy-2hyXI,106
156
- torchmonarch_nightly-2025.6.5.dist-info/top_level.txt,sha256=E-ZssZzyM17glpVrh-S9--qJ-w9p2EjuYOuNw9tQ4Eg,33
157
- torchmonarch_nightly-2025.6.5.dist-info/RECORD,,
152
+ torchmonarch_nightly-2025.6.6.dist-info/licenses/LICENSE,sha256=e0Eotbf_rHOYPuEUlppIbvwy4SN98CZnl_hqwvbDA4Q,1530
153
+ torchmonarch_nightly-2025.6.6.dist-info/METADATA,sha256=q8PbST0aYM1zzxSGM9AjrDdDbTmJbg-7gaMyH6sqDPQ,2771
154
+ torchmonarch_nightly-2025.6.6.dist-info/WHEEL,sha256=_wZSFk0d90K9wOBp8Q-UGxshyiJ987JoPiyUBNC6VLk,104
155
+ torchmonarch_nightly-2025.6.6.dist-info/entry_points.txt,sha256=sqfQ16oZqjEvttUI-uj9BBXIIE6jt05bYFSmy-2hyXI,106
156
+ torchmonarch_nightly-2025.6.6.dist-info/top_level.txt,sha256=E-ZssZzyM17glpVrh-S9--qJ-w9p2EjuYOuNw9tQ4Eg,33
157
+ torchmonarch_nightly-2025.6.6.dist-info/RECORD,,