torchmonarch-nightly 2025.8.1__cp311-cp311-manylinux2014_x86_64.whl → 2025.9.3__cp311-cp311-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.
Files changed (64) hide show
  1. monarch/_rust_bindings.so +0 -0
  2. monarch/_src/actor/actor_mesh.py +414 -216
  3. monarch/_src/actor/allocator.py +75 -6
  4. monarch/_src/actor/bootstrap_main.py +7 -4
  5. monarch/_src/actor/code_sync/__init__.py +2 -0
  6. monarch/_src/actor/debugger/__init__.py +7 -0
  7. monarch/_src/actor/{debugger.py → debugger/debugger.py} +246 -135
  8. monarch/_src/actor/{pdb_wrapper.py → debugger/pdb_wrapper.py} +62 -23
  9. monarch/_src/actor/endpoint.py +27 -45
  10. monarch/_src/actor/future.py +86 -24
  11. monarch/_src/actor/host_mesh.py +125 -0
  12. monarch/_src/actor/logging.py +94 -0
  13. monarch/_src/actor/pickle.py +25 -0
  14. monarch/_src/actor/proc_mesh.py +423 -156
  15. monarch/_src/actor/python_extension_methods.py +90 -0
  16. monarch/_src/actor/shape.py +8 -1
  17. monarch/_src/actor/source_loader.py +45 -0
  18. monarch/_src/actor/telemetry/__init__.py +172 -0
  19. monarch/_src/actor/telemetry/rust_span_tracing.py +6 -39
  20. monarch/_src/debug_cli/__init__.py +7 -0
  21. monarch/_src/debug_cli/debug_cli.py +43 -0
  22. monarch/_src/tensor_engine/rdma.py +64 -9
  23. monarch/_testing.py +1 -3
  24. monarch/actor/__init__.py +24 -4
  25. monarch/common/_C.so +0 -0
  26. monarch/common/device_mesh.py +14 -0
  27. monarch/common/future.py +10 -0
  28. monarch/common/remote.py +14 -25
  29. monarch/common/tensor.py +12 -0
  30. monarch/debug_cli/__init__.py +7 -0
  31. monarch/debug_cli/__main__.py +12 -0
  32. monarch/fetch.py +2 -2
  33. monarch/gradient/_gradient_generator.so +0 -0
  34. monarch/gradient_generator.py +4 -2
  35. monarch/mesh_controller.py +34 -14
  36. monarch/monarch_controller +0 -0
  37. monarch/tools/colors.py +25 -0
  38. monarch/tools/commands.py +42 -7
  39. monarch/tools/components/hyperactor.py +1 -1
  40. monarch/tools/config/__init__.py +31 -4
  41. monarch/tools/config/defaults.py +13 -3
  42. monarch/tools/config/environment.py +45 -0
  43. monarch/tools/config/workspace.py +165 -0
  44. monarch/tools/mesh_spec.py +2 -0
  45. monarch/utils/__init__.py +9 -0
  46. monarch/utils/utils.py +78 -0
  47. tests/error_test_binary.py +5 -3
  48. tests/python_actor_test_binary.py +52 -0
  49. tests/test_actor_error.py +142 -14
  50. tests/test_alloc.py +1 -1
  51. tests/test_allocator.py +59 -72
  52. tests/test_coalescing.py +1 -1
  53. tests/test_debugger.py +639 -45
  54. tests/test_env_before_cuda.py +4 -4
  55. tests/test_mesh_trait.py +38 -0
  56. tests/test_python_actors.py +979 -75
  57. tests/test_rdma.py +7 -6
  58. tests/test_tensor_engine.py +6 -6
  59. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/METADATA +82 -4
  60. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/RECORD +64 -48
  61. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/WHEEL +0 -0
  62. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/entry_points.txt +0 -0
  63. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/licenses/LICENSE +0 -0
  64. {torchmonarch_nightly-2025.8.1.dist-info → torchmonarch_nightly-2025.9.3.dist-info}/top_level.txt +0 -0
tests/test_rdma.py CHANGED
@@ -4,10 +4,11 @@
4
4
  # This source code is licensed under the BSD-style license found in the
5
5
  # LICENSE file in the root directory of this source tree.
6
6
 
7
+ # pyre-unsafe
7
8
  import pytest
8
9
 
9
10
  import torch
10
- from monarch.actor import Actor, current_rank, endpoint, proc_mesh
11
+ from monarch.actor import Actor, current_rank, endpoint, this_host
11
12
  from monarch.tensor_engine import is_available as rdma_available, RDMABuffer
12
13
 
13
14
 
@@ -66,7 +67,7 @@ class ParameterClient(Actor):
66
67
  @needs_rdma
67
68
  @needs_cuda
68
69
  async def test_proc_mesh_rdma():
69
- proc = await proc_mesh(gpus=1)
70
+ proc = this_host().spawn_procs(per_host={"gpus": 1})
70
71
  server = await proc.spawn("server", ParameterServer)
71
72
 
72
73
  # --- CPU TESTS ---
@@ -167,8 +168,8 @@ class GeneratorActor(Actor):
167
168
  @needs_rdma
168
169
  @needs_cuda
169
170
  async def test_gpu_trainer_generator():
170
- trainer_proc = await proc_mesh(gpus=1)
171
- gen_proc = await proc_mesh(gpus=1)
171
+ trainer_proc = this_host().spawn_procs(per_host={"gpus": 2})
172
+ gen_proc = this_host().spawn_procs(per_host={"gpus": 2})
172
173
  trainer = await trainer_proc.spawn("trainer", TrainerActor)
173
174
  generator = await gen_proc.spawn("gen", GeneratorActor)
174
175
 
@@ -184,8 +185,8 @@ async def test_gpu_trainer_generator():
184
185
  @needs_rdma
185
186
  @needs_cuda
186
187
  def test_gpu_trainer_generator_sync() -> None:
187
- trainer_proc = proc_mesh(gpus=1).get()
188
- gen_proc = proc_mesh(gpus=1).get()
188
+ trainer_proc = this_host().spawn_procs(per_host={"gpus": 1})
189
+ gen_proc = this_host().spawn_procs(per_host={"gpus": 1})
189
190
  trainer = trainer_proc.spawn("trainer", TrainerActor).get()
190
191
  generator = gen_proc.spawn("gen", GeneratorActor).get()
191
192
 
@@ -8,7 +8,7 @@ import monarch
8
8
  import pytest
9
9
  import torch
10
10
  from monarch import remote
11
- from monarch.actor import Actor, as_endpoint, endpoint, proc_mesh
11
+ from monarch.actor import Actor, as_endpoint, endpoint, proc_mesh, this_host
12
12
  from monarch.mesh_controller import spawn_tensor_engine
13
13
 
14
14
 
@@ -20,7 +20,7 @@ two_gpu = pytest.mark.skipif(
20
20
 
21
21
  @two_gpu
22
22
  def test_tensor_engine() -> None:
23
- pm = proc_mesh(gpus=2).get()
23
+ pm = proc_mesh(gpus=2)
24
24
 
25
25
  dm = spawn_tensor_engine(pm)
26
26
  with dm.activate():
@@ -46,7 +46,7 @@ def test_tensor_engine() -> None:
46
46
 
47
47
  @two_gpu
48
48
  def test_proc_mesh_tensor_engine() -> None:
49
- pm = proc_mesh(gpus=2).get()
49
+ pm = proc_mesh(gpus=2)
50
50
  with pm.activate():
51
51
  f = 10 * pm.rank_tensor("gpus").cuda()
52
52
  a = monarch.inspect(f, hosts=0, gpus=0)
@@ -73,7 +73,7 @@ class AddWithState(Actor):
73
73
 
74
74
  @two_gpu
75
75
  def test_actor_with_tensors() -> None:
76
- pm = proc_mesh(gpus=1).get()
76
+ pm = proc_mesh(gpus=1)
77
77
  with pm.activate():
78
78
  x = pm.spawn("adder", AddWithState, torch.ones(())).get()
79
79
  y = torch.ones(())
@@ -93,7 +93,7 @@ class Counter(Actor):
93
93
 
94
94
  @two_gpu
95
95
  def test_actor_tensor_ordering() -> None:
96
- pm = proc_mesh(gpus=1).get()
96
+ pm = proc_mesh(gpus=1)
97
97
  with pm.activate():
98
98
  counter = pm.spawn("a", Counter).get()
99
99
  results = []
@@ -120,7 +120,7 @@ class Linear(Actor):
120
120
 
121
121
  @two_gpu
122
122
  def test_rref_actor() -> None:
123
- pm = proc_mesh(gpus=1).get()
123
+ pm = proc_mesh(gpus=1)
124
124
  with pm.activate():
125
125
  x = pm.spawn("linear", Linear, 3, 4).get()
126
126
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: torchmonarch-nightly
3
- Version: 2025.8.1
3
+ Version: 2025.9.3
4
4
  Summary: Monarch: Single controller library
5
5
  Author: Meta
6
6
  Author-email: oncall+monarch@xmail.facebook.com
@@ -17,6 +17,7 @@ Requires-Dist: cloudpickle
17
17
  Requires-Dist: torchx-nightly
18
18
  Requires-Dist: lark
19
19
  Requires-Dist: tabulate
20
+ Requires-Dist: opentelemetry-api
20
21
  Dynamic: author
21
22
  Dynamic: author-email
22
23
  Dynamic: description
@@ -29,9 +30,41 @@ Dynamic: summary
29
30
 
30
31
  # Monarch 🦋
31
32
 
32
- **Monarch** is a distributed execution engine for PyTorch. Our overall goal is
33
- to deliver the high-quality user experience that people get from single-GPU
34
- PyTorch, but at cluster scale.
33
+ **Monarch** is a distributed programming framework for PyTorch based on scalable
34
+ actor messaging. It provides:
35
+
36
+ 1. Remote actors with scalable messaging: Actors are grouped into collections called meshes and messages can be broadcast to all members.
37
+ 2. Fault tolerance through supervision trees: Actors and processes for a tree and failures propagate up the tree, providing good default error behavior and enabling fine-grained fault recovery.
38
+ 3. Point-to-point RDMA transfers: cheap registration of any GPU or CPU memory in a process, with the one-sided tranfers based on libibverbs
39
+ 4. Distributed tensors: actors can work with tensor objects sharded across processes
40
+
41
+ Monarch code imperatively describes how to create processes and actors using a simple python API:
42
+
43
+ ```python
44
+ from monarch.actor import Actor, endpoint, this_host
45
+
46
+ # spawn 8 trainer processes one for each gpu
47
+ training_procs = this_host().spawn_procs({"gpus": 8})
48
+
49
+
50
+ # define the actor to run on each process
51
+ class Trainer(Actor):
52
+ @endpoint
53
+ def train(self, step: int): ...
54
+
55
+
56
+ # create the trainers
57
+ trainers = training_procs.spawn("trainers", Trainer)
58
+
59
+ # tell all the trainers to to take a step
60
+ fut = trainers.train.call(step=0)
61
+
62
+ # wait for all trainers to complete
63
+ fut.get()
64
+ ```
65
+
66
+
67
+ The [introduction to monarch concepts](getting_started.html) provides an introduction to using these features.
35
68
 
36
69
  > ⚠️ **Early Development Warning** Monarch is currently in an experimental
37
70
  > stage. You should expect bugs, incomplete features, and APIs that may change
@@ -42,6 +75,10 @@ PyTorch, but at cluster scale.
42
75
 
43
76
  Note: Monarch is currently only supported on Linux systems
44
77
 
78
+ ## 📖 Documentation
79
+
80
+ View Monarch's hosted documentation [at this link](https://meta-pytorch.org/monarch/).
81
+
45
82
  ## Installation
46
83
 
47
84
  ### On Fedora distributions
@@ -90,6 +127,47 @@ pip install --no-build-isolation -e .
90
127
  pytest python/tests/ -v -m "not oss_skip"
91
128
  ```
92
129
 
130
+ ### On Ubuntu distributions
131
+
132
+ ```sh
133
+ # Clone the repository and navigate to it
134
+ git clone https://github.com/meta-pytorch/monarch.git
135
+ cd monarch
136
+
137
+ # Install nightly rust toolchain
138
+ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
139
+ source $HOME/.cargo/env
140
+ rustup toolchain install nightly
141
+ rustup default nightly
142
+
143
+ # Install Ubuntu-specific system dependencies
144
+ sudo apt install -y ninja-build
145
+ sudo apt install -y libunwind-dev
146
+ sudo apt install -y clang
147
+
148
+ # Set clang as the default C/C++ compiler
149
+ export CC=clang
150
+ export CXX=clang++
151
+
152
+ # Install build dependencies
153
+ pip install -r build-requirements.txt
154
+ # Install test dependencies
155
+ pip install -r python/tests/requirements.txt
156
+
157
+ # Build and install Monarch (with tensor engine support)
158
+ pip install --no-build-isolation .
159
+
160
+ # or
161
+ # Build and install Monarch (without tensor engine support)
162
+ USE_TENSOR_ENGINE=0 pip install --no-build-isolation .
163
+
164
+ # or setup for development
165
+ pip install --no-build-isolation -e .
166
+
167
+ # Verify installation
168
+ pip list | grep monarch
169
+ ```
170
+
93
171
  ### On MacOS
94
172
 
95
173
  You can also build Monarch to run locally on a MacOS system.
@@ -1,14 +1,14 @@
1
1
  monarch/__init__.py,sha256=mgKiyD1kxky-1pvhMlNfF4VmxWnhi-FSYZNFzkW1BEM,7052
2
- monarch/_rust_bindings.so,sha256=pfc8gH0ySYtwhhuoMYrozn76tUrZ_ZxyPxttxWXE3WE,50337728
3
- monarch/_testing.py,sha256=_3MYNMq-_0T1qXCj2vxrW13GlWGdUuVFMskQF2Gsw_o,7877
2
+ monarch/_rust_bindings.so,sha256=V26PTUdu3YGZbYGLq-vcGxhxMhNpG2A4waq8dUhiKRs,61340152
3
+ monarch/_testing.py,sha256=5BDMVA4hBMo780rsJ39vRmUZi6mTN8aYY7I9grJRjJ8,7841
4
4
  monarch/actor_mesh.py,sha256=VtPU9syi_vUdwDSJJ639Z4Y_EcWZUScyoj0lQ88RQPs,421
5
5
  monarch/bootstrap_main.py,sha256=39OZpNMrfvvNJf-iwuNzgslzYA_ItaRPHfXGn_V74N0,524
6
6
  monarch/cached_remote_function.py,sha256=kYdB6r4OHx_T_uX4q3tCNcp1t2DJwF8tPTIahUiT2pU,8785
7
- monarch/fetch.py,sha256=JMxC8HdWMvpik0T4E6e-gfxvmNnOkA0ul4eo4R3Jg_o,1712
8
- monarch/gradient_generator.py,sha256=Rl3dmXGceTdCc1mYBg2JciR88ywGPnW7TVkL86KwqEA,6366
7
+ monarch/fetch.py,sha256=CssP25dMqyJnJAWoC41lwkMnSbvS-f2DL9PRbudJXfc,1704
8
+ monarch/gradient_generator.py,sha256=b7PmoN_F3c5hQglfHeW_v5htYnePKvJGkzZN-tpHR4A,6396
9
9
  monarch/memory.py,sha256=ol86dBhFAJqg78iF25-BuK0wuwj1onR8FIioZ_B0gjw,1377
10
- monarch/mesh_controller.py,sha256=R9ZnVV89wYva0QTAwOgHi_PkjYPEj_7_yF9810NHPak,14675
11
- monarch/monarch_controller,sha256=hWibamTUN_4S43pDp2Sy_0N1pPok4OZc3G42VwfgtRI,24036008
10
+ monarch/mesh_controller.py,sha256=Y_26Cnmp72TccNbWdDQhq18j7de7pSw83E_fREJX9Yo,15372
11
+ monarch/monarch_controller,sha256=LVqFQjApcnCW9AWWvgSrIdggGFtJJ9hh0Cf2yU1Qxhs,32390232
12
12
  monarch/notebook.py,sha256=zu9MKDFKf1-rCM2TqFSRJjMBeiWuKcJSyUFLvoZRQzs,25949
13
13
  monarch/opaque_module.py,sha256=jCcg0DjbcEVXA9WNG0NhUzGteLHOJLTZEBvrIYJIAns,10436
14
14
  monarch/opaque_object.py,sha256=x1LoX6RIMGh4ux52xIfhPgoh6PhZHdkf9bMccHW3DW0,2808
@@ -25,32 +25,39 @@ monarch/tensorboard.py,sha256=MnLgH5lbqeUJauEuirEgR6L_qYl2NGdtwZOWIAuOZao,2587
25
25
  monarch/world_mesh.py,sha256=ob5dJWaC49Uw0xqClHBm8CQLvL4xKnjd4TGzk7k8NxI,980
26
26
  monarch/_src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
27
  monarch/_src/actor/__init__.py,sha256=4iK3nzQZmEPe0HGNY70fABBenw3lCVVaaF0xddF5Fa0,235
28
- monarch/_src/actor/actor_mesh.py,sha256=LWSb2NskXMx29kLxtQkjsJKAqsxOBkOIRty_sDeyFvA,30920
29
- monarch/_src/actor/allocator.py,sha256=otfvkq3RfXHOQz12SMrgxBCjG0uD1a6wa_IrAwxpZ94,7278
30
- monarch/_src/actor/bootstrap_main.py,sha256=e5eU3GvX60MWWmCty7VcZrAmukD29iJdWBysNgQ2o3A,2342
31
- monarch/_src/actor/debugger.py,sha256=viN-cJ8TobWdNR7y_GQA6fVGZ_VUqEM6vC8UIBFTJyA,22277
28
+ monarch/_src/actor/actor_mesh.py,sha256=Y4IaWtVwL4h8nZ2qpOEIs3sqI2uCpVwYQZUCCHUSO80,37707
29
+ monarch/_src/actor/allocator.py,sha256=UVGhrkPQMqPQp6vUngPI361s6yCEfZ0gfz8WTtG2om4,9392
30
+ monarch/_src/actor/bootstrap_main.py,sha256=7T7ARumcHLZ5RI-k5jej9tBil0J7-BUSVFKwAZO2tJU,2413
32
31
  monarch/_src/actor/device_utils.py,sha256=gBpl23wMjppVAEzzj8U9HyX-B7Bs2_3ftiMAkzUS4j4,577
33
- monarch/_src/actor/endpoint.py,sha256=NlcFQX_-LmAa9pirWnRCLiWWZu08lqQwS5ahkC9c8uU,11451
32
+ monarch/_src/actor/endpoint.py,sha256=_VaPHc0Fcj1P5nDzUXt8xnS6iw7-HO6hGx7W5RtU3eU,10916
34
33
  monarch/_src/actor/event_loop.py,sha256=2i4fKIkemBzua_t47BqVa2roZ6fWB6sbmMFPNx2zKN0,2832
35
- monarch/_src/actor/future.py,sha256=7QDiPu6-CnTw7cN_GWomQa9qGxDo5yXqCSqgyCJ7roU,5195
36
- monarch/_src/actor/pdb_wrapper.py,sha256=3pjk-eTSc7_rctDiZl-vilqTXQoaERGqyi1LueyoQGg,4342
37
- monarch/_src/actor/pickle.py,sha256=jD_3E07OJmMIlcMOOrNFnIuRKZU2F_Q_BP-njDFXUNM,2044
38
- monarch/_src/actor/proc_mesh.py,sha256=5AKgjsskVe7blJjwROom31p1EXzx9ANg3ADzvcLcU5s,15746
39
- monarch/_src/actor/shape.py,sha256=E9kxf1RNym1LNJNXF18gNDmnAHR7SDcl3W4nXR65BPY,8293
34
+ monarch/_src/actor/future.py,sha256=idgqzU_B5qWfClIP5dTLapmBflWq5va-ujAzUbT1Asc,7490
35
+ monarch/_src/actor/host_mesh.py,sha256=xSto21T4ESnF55UfcQOkWZxsIiiv3VnOzyrcrZ_or7Y,4405
36
+ monarch/_src/actor/logging.py,sha256=9aguohqCtvLVwWGTFM7o-rBptT26BjI2s6E5Of2imM4,3311
37
+ monarch/_src/actor/pickle.py,sha256=FhdbAEsGrsD7f25bxF7HlROLm6j2TTvmToq8P1kyhB8,2913
38
+ monarch/_src/actor/proc_mesh.py,sha256=fijaxhvVn1adtPFPaZ_-16pvWo1-rhjbB6qHkW2dAkk,24779
39
+ monarch/_src/actor/python_extension_methods.py,sha256=QujLWOQQbDdGCin8tZfDxyIwkM-Md4t9QtcTGTHOE_s,3493
40
+ monarch/_src/actor/shape.py,sha256=PJqxpQEISHlxK8rrlKWpcNMEHiGxBbc6TsHcGZCOsyE,8472
41
+ monarch/_src/actor/source_loader.py,sha256=TGHmExLyxPDcCyuG254zo6aUqHMpl-j0VWzxa9rkJYQ,1405
40
42
  monarch/_src/actor/sync_state.py,sha256=GB6bTAGztkcN8fZ9K7zXklOzjYzv6cvkJeBje20xFkE,471
41
43
  monarch/_src/actor/tensor_engine_shim.py,sha256=hupavQ2rjPwECaTlDAhY-eeiEY18Wyyx59MZHcSEcYM,1622
42
- monarch/_src/actor/code_sync/__init__.py,sha256=qzWoFNJEJvEbqab0QuHbkvhdz6FHi7BOTw6-2B3p0A4,378
44
+ monarch/_src/actor/code_sync/__init__.py,sha256=-0LHqsU8-wClVwgDN-wiqqH7RE3SAuwh5m7iYbaIVDs,419
43
45
  monarch/_src/actor/code_sync/auto_reload.py,sha256=kqXCQuSzjxMw8bcDLsUZiL_NImo4j2EScfNklwpltmU,6685
44
- monarch/_src/actor/telemetry/__init__.py,sha256=sHA5fmFdWU9jcUJVszNFhbXbjRSIBmuDXDMwJrrE0hw,523
45
- monarch/_src/actor/telemetry/rust_span_tracing.py,sha256=UvkywuwjQX7tIyLdKZbF-fcmI_aHporAejsTRTyJNNg,4445
46
+ monarch/_src/actor/debugger/__init__.py,sha256=NNrKh5KdiYdbxOhin8x-gw_-tvcuGex2UbS_z7MV9g0,223
47
+ monarch/_src/actor/debugger/debugger.py,sha256=YwRE9fqS0H1Tulf_A39YDsLResw9I1ASw0EI4hqfK6E,26956
48
+ monarch/_src/actor/debugger/pdb_wrapper.py,sha256=R7UMgVj3ktvqbg3mmC4gZPxxPDOHtgXp68gM_HweH5M,5764
49
+ monarch/_src/actor/telemetry/__init__.py,sha256=-drzzqmrJltrq85jm2BpHTBNN9MiO4MLYZBEinLnw5o,5087
50
+ monarch/_src/actor/telemetry/rust_span_tracing.py,sha256=92nQlaf_UtuwhFAC3_m-f1U-jf954qRyc43h-jWZZ5A,3919
51
+ monarch/_src/debug_cli/__init__.py,sha256=NNrKh5KdiYdbxOhin8x-gw_-tvcuGex2UbS_z7MV9g0,223
52
+ monarch/_src/debug_cli/debug_cli.py,sha256=OJqqVFXcMkj-bnrxcE2VnjIgA5xrlKjEtCstrsdPcm0,1146
46
53
  monarch/_src/tensor_engine/__init__.py,sha256=Md3cCHD7Ano9kV15PqGbicgUO-RMdh4aVy1yKiDt_xE,208
47
- monarch/_src/tensor_engine/rdma.py,sha256=Fo4IjlHW0qfZsjr_lOTaWEaeKT5TW7A4GMKWyUiCbtE,6419
48
- monarch/actor/__init__.py,sha256=F87BC7owDdH_yRjLvMu6pbICbajndsEbtWG2W53Rapo,1050
54
+ monarch/_src/tensor_engine/rdma.py,sha256=62saqcXo6oUxH9rEZShNGLYdRZ_zizLQKhub7LDSaBg,8418
55
+ monarch/actor/__init__.py,sha256=9CXerFsBVR-lcpSEw_lIsNNP0qqCWoSA9exyDhhGvHI,1458
49
56
  monarch/builtins/__init__.py,sha256=QcfnHZGbc2qktBg7DyZt2ruE6VahnIt4S8lEZLHdJqU,443
50
57
  monarch/builtins/log.py,sha256=H1QkuVzwxyi36Zyv-XR0VN0QsNimBWwxE1__fjs0_2o,554
51
58
  monarch/builtins/random.py,sha256=wPbvscg7u53EXpMFo885fO2XOlsyjrNAJ4rBxLzfxdg,1839
52
59
  monarch/common/_C.pyi,sha256=kHY2G3ksMAjQJ6IcPb4F1bBh5knzw5RVVNhhBlEmwFU,314
53
- monarch/common/_C.so,sha256=UkDicojkbKES7dnq9ApTaKIYn6JQnIU_HDrFMGm2AEE,715584
60
+ monarch/common/_C.so,sha256=6hD9BzYQwBIN6PhoqGJZ7Pu0lCMmCXrCgxtSZKzD32Y,715584
54
61
  monarch/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
62
  monarch/common/_coalescing.py,sha256=HXf5cXAPSU_tpw9jFkzs2muytG_6sTZJSqSKV0XuFZE,10925
56
63
  monarch/common/_tensor_to_table.py,sha256=yRjCNwvtl188Z1Dwkx3ZU-Bh2mwYnQ0Lnue2RAztwvc,5753
@@ -60,11 +67,11 @@ monarch/common/client.py,sha256=RIs-YFTb7yLEV6njVhsIuD2ofnLYGtT1dAoU5htk4Vw,2581
60
67
  monarch/common/constants.py,sha256=ohvsVYMpfeWopv3KXDAeHWDFLukwc-OY37VRxpKNBE8,300
61
68
  monarch/common/context_manager.py,sha256=GOeyaFbyCqvQmkJ0oI7q6IxRd8_0mVyYKZRccI8iaug,1067
62
69
  monarch/common/controller_api.py,sha256=G-8BMuW3rtySng-EGjXAvw8IVqXcK6lymKuZGyyW_Ow,3207
63
- monarch/common/device_mesh.py,sha256=YUv1TfpoxqIcHQ7eVS5KhHDPK9o95RyBLuf2Cf4w74o,12550
70
+ monarch/common/device_mesh.py,sha256=dT6mFb4M9ulrDPCgaaVkEHC6DfopGEsJgcfsk5bgtr4,13163
64
71
  monarch/common/fake.py,sha256=h57Cggz2qXNqImZ7yPuOZOSe9-l9i553ki1z-YHlgQA,1801
65
72
  monarch/common/function.py,sha256=V8kdgSRTvild2SpcewWa5IETX3QiWDZQ2BEIDFa5zz8,4374
66
73
  monarch/common/function_caching.py,sha256=HVdbWtv6Eea7ENMWi8iv36w1G1TaVuUJhkUX_JxGx5A,5060
67
- monarch/common/future.py,sha256=D1UJ_8Rvb8-VG9vNE-z7xz2m2otMd2HgB0rnA02nlvA,4681
74
+ monarch/common/future.py,sha256=v3LLyej8_UNkZUFmy9RNmaPwISp2ftmZHmOrdfRmqN8,5060
68
75
  monarch/common/invocation.py,sha256=L4mSmzqlHMxo1Tb71hBU_M8aBZCRCOcb6vvPhvvewec,4195
69
76
  monarch/common/mast.py,sha256=XTzYljGR0aZ7GjmNMPgU2HyuL4HWSAy4IwE3kEDqdOw,7735
70
77
  monarch/common/messages.py,sha256=jwwJMVVx3gKd39AXcnRxjMr7lPJRLimHtZYel3zjq4o,18833
@@ -74,10 +81,10 @@ monarch/common/pipe.py,sha256=9pTf8--3yOv4HpnJEhgcmc_JM6Az4uL1y72TSQA55dw,5013
74
81
  monarch/common/process_group.py,sha256=FbJ_AJRZYFkvQ68L2naRq64J_aNuAKe5kO0MWdn_x74,1662
75
82
  monarch/common/recording.py,sha256=Q39Zhb3kT52NCPf4VVMox2WXjtXju5eTuvPMZ_QGW7o,4660
76
83
  monarch/common/reference.py,sha256=O26lkzEeVwj0S1xEy-OLqdHVnACmmlbQCUmXRrW4n1Q,938
77
- monarch/common/remote.py,sha256=Q2YpAo_fsdh22ElUNruxYyn-cNTecZr8POcHCGtuKyg,12129
84
+ monarch/common/remote.py,sha256=uc2JUbYHMnEZRnw9ZuS4mgvK_UHCuRaIIFbzZpx89hQ,11485
78
85
  monarch/common/selection.py,sha256=lpWFbZs3ArYy29e-53eoAVAjQFksf1RvZz9NvM0CUW4,308
79
86
  monarch/common/stream.py,sha256=_ejoxafHtdD10lLzznRCXKwrkZ_ZH9k_VTgiA5yfBrI,3583
80
- monarch/common/tensor.py,sha256=ysT51NClNF4FxV0DFLJJUNmCRaVy8uQuYWpLViyPLdY,29292
87
+ monarch/common/tensor.py,sha256=tqoXyvxrmfTtOm6ToWoy9NVg1NCjlt1KPjrNtYOMCco,29824
81
88
  monarch/common/tensor_factory.py,sha256=qm8NZx-5ezMAFjNLiXQvb66okm5XgdboB_GRarGOdN0,801
82
89
  monarch/common/tree.py,sha256=1DG3siiE7ixBV6v5cwN8RT_17aJhYZTE-L3i7wZe2_c,2282
83
90
  monarch/controller/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
@@ -87,9 +94,11 @@ monarch/controller/debugger.py,sha256=7vVERDyXY5nH3GhIoCzNIwn2rm0H76ZJ6A4equ7gfv
87
94
  monarch/controller/history.py,sha256=OZbQ75nFMXnxupw_OBlhiLVXCJ8lJKFw1SV3egvLUqc,3019
88
95
  monarch/controller/rust_backend/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
89
96
  monarch/controller/rust_backend/controller.py,sha256=8IYnVUiqEVKO9rGL3vKqcCSAhWJG1bYYQ0MoaMqsp78,9521
97
+ monarch/debug_cli/__init__.py,sha256=NNrKh5KdiYdbxOhin8x-gw_-tvcuGex2UbS_z7MV9g0,223
98
+ monarch/debug_cli/__main__.py,sha256=FGsQn54RkC_3gpRrm_UFrGiDDHRbMeGzXXsGANr5UHU,317
90
99
  monarch/gradient/__init__.py,sha256=kqmzwt16mMpk0M3GhpgP_f7da4DGnaV9chDzbt66k4Q,308
91
100
  monarch/gradient/_gradient_generator.pyi,sha256=6cX0UxaDt9NAlwgIhTgnweqGOf6qRhHiGnUzSWNCxdU,630
92
- monarch/gradient/_gradient_generator.so,sha256=WVenBcUNCEmDT5Nf1lZLdGzgwTNDre0vKqLTcLjUr_U,11750272
101
+ monarch/gradient/_gradient_generator.so,sha256=XfxpsBGsvv3LclZWw5tYpV_y9ZUL2erSKOSVD8pzK9M,12172008
93
102
  monarch/parallel/__init__.py,sha256=6920kIkhiX7AiyjYvyc1ad8ccP-bStJJ1sS5KkeN2P0,352
94
103
  monarch/parallel/pipelining/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
95
104
  monarch/parallel/pipelining/runtime.py,sha256=KK8TG1gUYEzSsquiZoPTWGSIC74mlncD7cYknKxfb3c,32470
@@ -116,14 +125,19 @@ monarch/timer/execution_timer.py,sha256=1YsrLIZirdohKOeFAU2H4UcONhQXHuctJbYcoX8I
116
125
  monarch/timer/execution_timer_test.py,sha256=CSxTv44fFZQURJlCBmYvysQI1aS_zEGZs_uxl9SOHak,4486
117
126
  monarch/tools/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
118
127
  monarch/tools/cli.py,sha256=b3mKZnK-MwP7JwskTxHI0KcJXxSU6498jEb2ntVr_VM,5001
119
- monarch/tools/commands.py,sha256=3xuvHcMwl0t6cWTVUxI_r8EqrJZnay0bkKxOijhlKrw,12126
120
- monarch/tools/mesh_spec.py,sha256=in6txNRmA-UvveVSMHCjX6mGpofd3K8vl2Plz1eD6rg,7935
128
+ monarch/tools/colors.py,sha256=XrBkslKoaoDeXqiTluiiuvFLYd-weKp1sjw7DYWz2RY,581
129
+ monarch/tools/commands.py,sha256=z4vCPtn_Ypic7L4_Jd3nMJWyyE4olUPqDe4cpJsDKZ4,13873
130
+ monarch/tools/mesh_spec.py,sha256=9CMiLWNrgSUF0oWoAtmUT2CweMgqi4pLI18w7-EZWxs,8032
121
131
  monarch/tools/network.py,sha256=mN8Fx9mervxM3VdFHRn4ZXt4z7yWxZp52BTxx2tfpus,2455
122
132
  monarch/tools/utils.py,sha256=gcZyalfoBC6Y3v65h-QMngwXsn24ejXh2TH8RxlgXkA,1888
123
133
  monarch/tools/components/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
124
- monarch/tools/components/hyperactor.py,sha256=jbfC5J9oRzzMQFO2eIx9acRS8RPHp3GtKyJjYblcJFM,2169
125
- monarch/tools/config/__init__.py,sha256=HZjmRSC_R28WMDSvNAqNRlqhH7lMHFWPIrztcFFt8Us,890
126
- monarch/tools/config/defaults.py,sha256=7YxdL8JHdjzlI2hTCgyYVgIbViJW8gfwlpcXvgfaKh0,1910
134
+ monarch/tools/components/hyperactor.py,sha256=P_5XTbCl-niCj7wua-9iDaEuLVhYohetT3nScWgA7Uc,2169
135
+ monarch/tools/config/__init__.py,sha256=3VV8zWKUc-yKA-wybCIbwSvDjtIzCS4dHX9KChvxn9A,2296
136
+ monarch/tools/config/defaults.py,sha256=BRWDbfUkPX1Mz982EzRsYn-DlQpQw2kLIwVV2lbhpnE,2203
137
+ monarch/tools/config/environment.py,sha256=ikEZKATa2e_8h9pN4_3TzhIHWb4ZZfRT5XtOVoOmHjI,1628
138
+ monarch/tools/config/workspace.py,sha256=a2YzFBTLUB_VrO3kt6dCV5TlmhCH4LyRX3JCMzu7Iv0,6049
139
+ monarch/utils/__init__.py,sha256=9ofjBGAMZo1VGsn7ufiDlrVheMw4Ye34p-isDfveUxc,295
140
+ monarch/utils/utils.py,sha256=Gern05umE5AHm8_YTTLlsI21Twmza09FrS2NH6ldGMs,2914
127
141
  monarch/worker/__init__.py,sha256=J8qjUOysmcMAek2KFN13mViOXZxTYc5vCrF02t3VuFU,223
128
142
  monarch/worker/_testing_function.py,sha256=A81cVMKgdlO66XvoYcBCDrxIQIm3o3GgvcH_c8M9OmI,13480
129
143
  monarch/worker/compiled_block.py,sha256=hYx1F6PAu0_BnpKAprP_nV9qJtk5XWO7mcwH3JPDioU,10114
@@ -142,37 +156,39 @@ monarch_supervisor/python_executable.py,sha256=67jIBelUVgLr07aSRMbw5EOhiY9_bxfLB
142
156
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
157
  tests/dispatch_bench.py,sha256=sU_m-8KAjQgYTsxI5khV664NdgLLutidni69Rtowk98,3933
144
158
  tests/dispatch_bench_helper.py,sha256=1ORgAMrRgjAjmmWeCHLLQd_bda9mJk0rS2ucEbRu28s,633
145
- tests/error_test_binary.py,sha256=cgdrnVI3SIzAFSRXTvASfiR8eKSMrZ7N3tSCLVkJo44,7880
159
+ tests/error_test_binary.py,sha256=6f4sQILm7UyQu5I0oAntuinQ3vvaEdfJmdjE1ZCX2jk,7909
160
+ tests/python_actor_test_binary.py,sha256=SlUOt5DMuHmIzzeigEh6WksSyUQ6f4BtZGHPwdjVJAA,1096
146
161
  tests/sleep_binary.py,sha256=XfLYaAfwm9xgzM-svs8fhAeFhwYIg6SyVEnx4e6wbUw,1009
147
- tests/test_actor_error.py,sha256=U7QL1jRn-YpS-o62imt7HFLPtaSbwMBu9xpD09Mb-Bc,20875
162
+ tests/test_actor_error.py,sha256=SiP9jIlFMaj7eEVgds2I5YWyKW_T4VqdzJMNQ-W8ko0,25304
148
163
  tests/test_actor_shape.py,sha256=ph-RC9sMNHWptZOCwQqMfG4lIUEzhp_pEnfhITeYdHM,4533
149
- tests/test_alloc.py,sha256=IW7yJSaKxhOYc8SJtFyREakDUwiKWq9M0CGgYyBYHoc,743
150
- tests/test_allocator.py,sha256=DpQhygQ4jB19g-aY-BFR61J-gYbG-hDlTNPVuQ4Fmn0,29730
151
- tests/test_coalescing.py,sha256=JZ4YgQNlWWs7N-Z8KCCXQPANcuyyXEKjeHIXYbPnQhk,15606
164
+ tests/test_alloc.py,sha256=83HM3gUPWhiUnIhUgxumuK13-MU2otuwKK_1ezKrSHE,737
165
+ tests/test_allocator.py,sha256=LKk3WOkSOhlElUxtxjHm7X45UCp9iGCBwKyNs-UZgzg,28839
166
+ tests/test_coalescing.py,sha256=THQuYMoyb1idC7Y7b3B6YvhJolfjbRrBWG27senI7tE,15607
152
167
  tests/test_controller.py,sha256=CIMb-ApmBcBj1eCqccDUAbVyyJWMGooAha5gQk0AoeY,31452
153
- tests/test_debugger.py,sha256=9opgQXCBuZ1Z-7uOKI-FuGB0jLbLLilmWQKq0sE-dgQ,21950
168
+ tests/test_debugger.py,sha256=cZ54mzKRQL0ZOZrS7b7bAH_gVx00Wl4bPZzdhEIJFn4,45372
154
169
  tests/test_device_mesh.py,sha256=DrbezYOM0thfP9MgLXb5-F0VoLOmSz5GR0GwjR_3bE4,5290
155
- tests/test_env_before_cuda.py,sha256=K5zdpXNRZB8hXQJaTN_CftcGHb3vzzdKasu8KFUoiCg,5440
170
+ tests/test_env_before_cuda.py,sha256=Jyb7Zz0x8SjkjpXIn8ToqrZyX97890ca2E-rdQQKmYE,5416
156
171
  tests/test_fault_tolerance.py,sha256=u4wmG1z5MZ6PY6us5zUZHJh2pUC3L7i0wsUfRDNHmxA,14144
157
172
  tests/test_future.py,sha256=cXzaNi2YDwVyjR541ScXmgktX1YFsKzbl8wep0DMVbk,3032
158
173
  tests/test_grad_generator.py,sha256=p4Pm4kMEeGldt2jUVAkGKCB0mLccKI28pltH6OTGbQA,3412
174
+ tests/test_mesh_trait.py,sha256=SOKRnO1NzSHS77oiAaS9DEtKpyHJ7mbWJoUJrAJ5QGQ,976
159
175
  tests/test_mock_cuda.py,sha256=5hisElxeLJ5MHw3KM9gwxBiXiMaG-Rm382u3AsQcDOI,3068
160
176
  tests/test_pdb_actor.py,sha256=5KJhuhcZDPWMdjC6eAtDdwnz1W7jNFXvIrMSFaCWaPw,3858
161
- tests/test_python_actors.py,sha256=kvsn2t2gmhnCM_T_euVe2O_DLj1OkzMrUNhhzBVPfs0,15664
162
- tests/test_rdma.py,sha256=vgeCCsfOjRjlGoGR0SYRuTP_Sx5RlEUUKfO9ATK0d4E,6125
177
+ tests/test_python_actors.py,sha256=S1wKeRkSXUciYfU30V3_4HdY6Z-FyWsoHrR-qaPe0eA,48901
178
+ tests/test_rdma.py,sha256=AyjYvvr45ucIMfgvfkPeJRyGaGCE_XkLmSduTOsE66A,6249
163
179
  tests/test_remote_functions.py,sha256=VT65W7htp1jCsP9-AsiO1dofhx-4OebWEOssDEgi3GM,51054
164
180
  tests/test_rust_backend.py,sha256=3TLu8dSVEqyLhjHED2DoAEQHTpbBQcr3WI6K2eGZLZw,7861
165
181
  tests/test_signal_safe_block_on.py,sha256=bmal0XgzJowZXJV6T1Blow5a-vZluYWusCThLMGxyTE,3336
166
182
  tests/test_sim_backend.py,sha256=kT7MnPo5O9xxX8f7uZOpR9Tkuz5brjaOyK1g1NqHRlo,1398
167
- tests/test_tensor_engine.py,sha256=_F70SQiUCRVZcbq5JcP5XkGJFnul57pqBpu1rF9kipE,3591
183
+ tests/test_tensor_engine.py,sha256=a_XFWqqoW02euz_I8Z15a12fZOZ7i_h-yVr7pl7ytOc,3572
168
184
  tests/simulator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
185
  tests/simulator/test_profiling.py,sha256=TGYCfzTLdkpIwnOuO6KApprmrgPIRQe60KRX3wkB0sg,4565
170
186
  tests/simulator/test_simulator.py,sha256=LO8lA0ssY-OGEBL5ipEu74f97Y765TEwfUOv-DtIptM,14568
171
187
  tests/simulator/test_task.py,sha256=ipqBDuDAysuo1xOB9S5psaFvwe6VATD43IovCTSs0t4,2327
172
188
  tests/simulator/test_worker.py,sha256=QrWWIJ3HDgDLkBPRc2mwYPlOQoXQcj1qRfc0WUfKkFY,3507
173
- torchmonarch_nightly-2025.8.1.dist-info/licenses/LICENSE,sha256=e0Eotbf_rHOYPuEUlppIbvwy4SN98CZnl_hqwvbDA4Q,1530
174
- torchmonarch_nightly-2025.8.1.dist-info/METADATA,sha256=gnu970IbH-M9RmjioXTmMbk_MXOCcf6iTTGa226YHdI,3851
175
- torchmonarch_nightly-2025.8.1.dist-info/WHEEL,sha256=JC9FVdjbTDi9l3EyrqUd11CgmN9LkBi1g5dFHayafwA,104
176
- torchmonarch_nightly-2025.8.1.dist-info/entry_points.txt,sha256=60QVSpYVzkzS4iDOiLp0fsLxVp47X3J2l3v7W-59LMo,117
177
- torchmonarch_nightly-2025.8.1.dist-info/top_level.txt,sha256=E-ZssZzyM17glpVrh-S9--qJ-w9p2EjuYOuNw9tQ4Eg,33
178
- torchmonarch_nightly-2025.8.1.dist-info/RECORD,,
189
+ torchmonarch_nightly-2025.9.3.dist-info/licenses/LICENSE,sha256=e0Eotbf_rHOYPuEUlppIbvwy4SN98CZnl_hqwvbDA4Q,1530
190
+ torchmonarch_nightly-2025.9.3.dist-info/METADATA,sha256=L5a1VhSSe2RevR33LVzvECh6LjPdlCV_bWkaT1nD7Zk,6184
191
+ torchmonarch_nightly-2025.9.3.dist-info/WHEEL,sha256=JC9FVdjbTDi9l3EyrqUd11CgmN9LkBi1g5dFHayafwA,104
192
+ torchmonarch_nightly-2025.9.3.dist-info/entry_points.txt,sha256=60QVSpYVzkzS4iDOiLp0fsLxVp47X3J2l3v7W-59LMo,117
193
+ torchmonarch_nightly-2025.9.3.dist-info/top_level.txt,sha256=E-ZssZzyM17glpVrh-S9--qJ-w9p2EjuYOuNw9tQ4Eg,33
194
+ torchmonarch_nightly-2025.9.3.dist-info/RECORD,,