koichi12 commited on
Commit
c9870ab
·
verified ·
1 Parent(s): c35b0c7

Add files using upload-large-folder tool

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/autoscaler_pb2.cpython-311.pyc +0 -0
  2. .venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/export_actor_data_pb2.cpython-311.pyc +0 -0
  3. .venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/gcs_service_pb2_grpc.cpython-311.pyc +0 -0
  4. .venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/resource_pb2_grpc.cpython-311.pyc +0 -0
  5. .venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/usage_pb2_grpc.cpython-311.pyc +0 -0
  6. .venv/lib/python3.11/site-packages/ray/core/generated/core_worker_pb2_grpc.py +826 -0
  7. .venv/lib/python3.11/site-packages/ray/core/generated/export_actor_data_pb2.py +51 -0
  8. .venv/lib/python3.11/site-packages/ray/core/generated/export_runtime_env_pb2.py +56 -0
  9. .venv/lib/python3.11/site-packages/ray/core/generated/logging_pb2_grpc.py +4 -0
  10. .venv/lib/python3.11/site-packages/ray/core/generated/node_manager_pb2.py +534 -0
  11. .venv/lib/python3.11/site-packages/ray/core/generated/resource_pb2_grpc.py +4 -0
  12. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/README +2 -0
  13. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/favicon-16x16.361d2b26.png +0 -0
  14. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/file-format-schema.json +324 -0
  15. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/import.a03c2bef.js +0 -0
  16. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/index.html +1 -0
  17. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/perf-vertx-stacks-01-collapsed-all.3e0a632c.txt +0 -0
  18. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/reset.7ae984ff.css +1 -0
  19. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/css/main.388a904b.css +2 -0
  20. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/js/main.378317da.js +0 -0
  21. .venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/js/main.378317da.js.map +0 -0
  22. .venv/lib/python3.11/site-packages/ray/experimental/__init__.py +10 -0
  23. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/__init__.cpython-311.pyc +0 -0
  24. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/compiled_dag_ref.cpython-311.pyc +0 -0
  25. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/dynamic_resources.cpython-311.pyc +0 -0
  26. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/gradio_utils.cpython-311.pyc +0 -0
  27. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/internal_kv.cpython-311.pyc +0 -0
  28. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/locations.cpython-311.pyc +0 -0
  29. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/queue.cpython-311.pyc +0 -0
  30. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/shuffle.cpython-311.pyc +0 -0
  31. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/tf_utils.cpython-311.pyc +0 -0
  32. .venv/lib/python3.11/site-packages/ray/experimental/__pycache__/tqdm_ray.cpython-311.pyc +0 -0
  33. .venv/lib/python3.11/site-packages/ray/experimental/array/__init__.py +0 -0
  34. .venv/lib/python3.11/site-packages/ray/experimental/array/distributed/__init__.py +40 -0
  35. .venv/lib/python3.11/site-packages/ray/experimental/array/distributed/__pycache__/core.cpython-311.pyc +0 -0
  36. .venv/lib/python3.11/site-packages/ray/experimental/array/distributed/core.py +316 -0
  37. .venv/lib/python3.11/site-packages/ray/experimental/array/distributed/linalg.py +231 -0
  38. .venv/lib/python3.11/site-packages/ray/experimental/array/distributed/random.py +17 -0
  39. .venv/lib/python3.11/site-packages/ray/experimental/channel/__pycache__/shared_memory_channel.cpython-311.pyc +0 -0
  40. .venv/lib/python3.11/site-packages/ray/experimental/channel/__pycache__/torch_tensor_nccl_channel.cpython-311.pyc +0 -0
  41. .venv/lib/python3.11/site-packages/ray/experimental/channel/auto_transport_type.py +167 -0
  42. .venv/lib/python3.11/site-packages/ray/experimental/channel/cached_channel.py +111 -0
  43. .venv/lib/python3.11/site-packages/ray/experimental/channel/intra_process_channel.py +70 -0
  44. .venv/lib/python3.11/site-packages/ray/experimental/channel/serialization_context.py +174 -0
  45. .venv/lib/python3.11/site-packages/ray/experimental/compiled_dag_ref.py +227 -0
  46. .venv/lib/python3.11/site-packages/ray/experimental/gradio_utils.py +12 -0
  47. .venv/lib/python3.11/site-packages/ray/experimental/internal_kv.py +121 -0
  48. .venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__init__.py +0 -0
  49. .venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__pycache__/__init__.cpython-311.pyc +0 -0
  50. .venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__pycache__/demo_script.cpython-311.pyc +0 -0
.venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/autoscaler_pb2.cpython-311.pyc ADDED
Binary file (20.2 kB). View file
 
.venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/export_actor_data_pb2.cpython-311.pyc ADDED
Binary file (3.01 kB). View file
 
.venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/gcs_service_pb2_grpc.cpython-311.pyc ADDED
Binary file (74.4 kB). View file
 
.venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/resource_pb2_grpc.cpython-311.pyc ADDED
Binary file (309 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/core/generated/__pycache__/usage_pb2_grpc.cpython-311.pyc ADDED
Binary file (306 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/core/generated/core_worker_pb2_grpc.py ADDED
@@ -0,0 +1,826 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
5
+ from . import core_worker_pb2 as src_dot_ray_dot_protobuf_dot_core__worker__pb2
6
+ from . import pubsub_pb2 as src_dot_ray_dot_protobuf_dot_pubsub__pb2
7
+
8
+
9
+ class CoreWorkerServiceStub(object):
10
+ """Missing associated documentation comment in .proto file."""
11
+
12
+ def __init__(self, channel):
13
+ """Constructor.
14
+
15
+ Args:
16
+ channel: A grpc.Channel.
17
+ """
18
+ self.RayletNotifyGCSRestart = channel.unary_unary(
19
+ '/ray.rpc.CoreWorkerService/RayletNotifyGCSRestart',
20
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartRequest.SerializeToString,
21
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartReply.FromString,
22
+ )
23
+ self.PushTask = channel.unary_unary(
24
+ '/ray.rpc.CoreWorkerService/PushTask',
25
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskRequest.SerializeToString,
26
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskReply.FromString,
27
+ )
28
+ self.DirectActorCallArgWaitComplete = channel.unary_unary(
29
+ '/ray.rpc.CoreWorkerService/DirectActorCallArgWaitComplete',
30
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteRequest.SerializeToString,
31
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteReply.FromString,
32
+ )
33
+ self.GetObjectStatus = channel.unary_unary(
34
+ '/ray.rpc.CoreWorkerService/GetObjectStatus',
35
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusRequest.SerializeToString,
36
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusReply.FromString,
37
+ )
38
+ self.WaitForActorRefDeleted = channel.unary_unary(
39
+ '/ray.rpc.CoreWorkerService/WaitForActorRefDeleted',
40
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedRequest.SerializeToString,
41
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedReply.FromString,
42
+ )
43
+ self.PubsubLongPolling = channel.unary_unary(
44
+ '/ray.rpc.CoreWorkerService/PubsubLongPolling',
45
+ request_serializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingRequest.SerializeToString,
46
+ response_deserializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingReply.FromString,
47
+ )
48
+ self.ReportGeneratorItemReturns = channel.unary_unary(
49
+ '/ray.rpc.CoreWorkerService/ReportGeneratorItemReturns',
50
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsRequest.SerializeToString,
51
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsReply.FromString,
52
+ )
53
+ self.PubsubCommandBatch = channel.unary_unary(
54
+ '/ray.rpc.CoreWorkerService/PubsubCommandBatch',
55
+ request_serializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchRequest.SerializeToString,
56
+ response_deserializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchReply.FromString,
57
+ )
58
+ self.UpdateObjectLocationBatch = channel.unary_unary(
59
+ '/ray.rpc.CoreWorkerService/UpdateObjectLocationBatch',
60
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchRequest.SerializeToString,
61
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchReply.FromString,
62
+ )
63
+ self.GetObjectLocationsOwner = channel.unary_unary(
64
+ '/ray.rpc.CoreWorkerService/GetObjectLocationsOwner',
65
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerRequest.SerializeToString,
66
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerReply.FromString,
67
+ )
68
+ self.KillActor = channel.unary_unary(
69
+ '/ray.rpc.CoreWorkerService/KillActor',
70
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorRequest.SerializeToString,
71
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorReply.FromString,
72
+ )
73
+ self.CancelTask = channel.unary_unary(
74
+ '/ray.rpc.CoreWorkerService/CancelTask',
75
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskRequest.SerializeToString,
76
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskReply.FromString,
77
+ )
78
+ self.RemoteCancelTask = channel.unary_unary(
79
+ '/ray.rpc.CoreWorkerService/RemoteCancelTask',
80
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskRequest.SerializeToString,
81
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskReply.FromString,
82
+ )
83
+ self.GetCoreWorkerStats = channel.unary_unary(
84
+ '/ray.rpc.CoreWorkerService/GetCoreWorkerStats',
85
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsRequest.SerializeToString,
86
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsReply.FromString,
87
+ )
88
+ self.LocalGC = channel.unary_unary(
89
+ '/ray.rpc.CoreWorkerService/LocalGC',
90
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCRequest.SerializeToString,
91
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCReply.FromString,
92
+ )
93
+ self.DeleteObjects = channel.unary_unary(
94
+ '/ray.rpc.CoreWorkerService/DeleteObjects',
95
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsRequest.SerializeToString,
96
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsReply.FromString,
97
+ )
98
+ self.SpillObjects = channel.unary_unary(
99
+ '/ray.rpc.CoreWorkerService/SpillObjects',
100
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsRequest.SerializeToString,
101
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsReply.FromString,
102
+ )
103
+ self.RestoreSpilledObjects = channel.unary_unary(
104
+ '/ray.rpc.CoreWorkerService/RestoreSpilledObjects',
105
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsRequest.SerializeToString,
106
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsReply.FromString,
107
+ )
108
+ self.DeleteSpilledObjects = channel.unary_unary(
109
+ '/ray.rpc.CoreWorkerService/DeleteSpilledObjects',
110
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsRequest.SerializeToString,
111
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsReply.FromString,
112
+ )
113
+ self.PlasmaObjectReady = channel.unary_unary(
114
+ '/ray.rpc.CoreWorkerService/PlasmaObjectReady',
115
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyRequest.SerializeToString,
116
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyReply.FromString,
117
+ )
118
+ self.Exit = channel.unary_unary(
119
+ '/ray.rpc.CoreWorkerService/Exit',
120
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitRequest.SerializeToString,
121
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitReply.FromString,
122
+ )
123
+ self.AssignObjectOwner = channel.unary_unary(
124
+ '/ray.rpc.CoreWorkerService/AssignObjectOwner',
125
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerRequest.SerializeToString,
126
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerReply.FromString,
127
+ )
128
+ self.NumPendingTasks = channel.unary_unary(
129
+ '/ray.rpc.CoreWorkerService/NumPendingTasks',
130
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksRequest.SerializeToString,
131
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksReply.FromString,
132
+ )
133
+ self.RegisterMutableObjectReader = channel.unary_unary(
134
+ '/ray.rpc.CoreWorkerService/RegisterMutableObjectReader',
135
+ request_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderRequest.SerializeToString,
136
+ response_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderReply.FromString,
137
+ )
138
+
139
+
140
+ class CoreWorkerServiceServicer(object):
141
+ """Missing associated documentation comment in .proto file."""
142
+
143
+ def RayletNotifyGCSRestart(self, request, context):
144
+ """Missing associated documentation comment in .proto file."""
145
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
146
+ context.set_details('Method not implemented!')
147
+ raise NotImplementedError('Method not implemented!')
148
+
149
+ def PushTask(self, request, context):
150
+ """Missing associated documentation comment in .proto file."""
151
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
152
+ context.set_details('Method not implemented!')
153
+ raise NotImplementedError('Method not implemented!')
154
+
155
+ def DirectActorCallArgWaitComplete(self, request, context):
156
+ """Missing associated documentation comment in .proto file."""
157
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
158
+ context.set_details('Method not implemented!')
159
+ raise NotImplementedError('Method not implemented!')
160
+
161
+ def GetObjectStatus(self, request, context):
162
+ """Missing associated documentation comment in .proto file."""
163
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
164
+ context.set_details('Method not implemented!')
165
+ raise NotImplementedError('Method not implemented!')
166
+
167
+ def WaitForActorRefDeleted(self, request, context):
168
+ """Missing associated documentation comment in .proto file."""
169
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
170
+ context.set_details('Method not implemented!')
171
+ raise NotImplementedError('Method not implemented!')
172
+
173
+ def PubsubLongPolling(self, request, context):
174
+ """Missing associated documentation comment in .proto file."""
175
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
176
+ context.set_details('Method not implemented!')
177
+ raise NotImplementedError('Method not implemented!')
178
+
179
+ def ReportGeneratorItemReturns(self, request, context):
180
+ """Missing associated documentation comment in .proto file."""
181
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
182
+ context.set_details('Method not implemented!')
183
+ raise NotImplementedError('Method not implemented!')
184
+
185
+ def PubsubCommandBatch(self, request, context):
186
+ """Missing associated documentation comment in .proto file."""
187
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
188
+ context.set_details('Method not implemented!')
189
+ raise NotImplementedError('Method not implemented!')
190
+
191
+ def UpdateObjectLocationBatch(self, request, context):
192
+ """Missing associated documentation comment in .proto file."""
193
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
194
+ context.set_details('Method not implemented!')
195
+ raise NotImplementedError('Method not implemented!')
196
+
197
+ def GetObjectLocationsOwner(self, request, context):
198
+ """Missing associated documentation comment in .proto file."""
199
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
200
+ context.set_details('Method not implemented!')
201
+ raise NotImplementedError('Method not implemented!')
202
+
203
+ def KillActor(self, request, context):
204
+ """Missing associated documentation comment in .proto file."""
205
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
206
+ context.set_details('Method not implemented!')
207
+ raise NotImplementedError('Method not implemented!')
208
+
209
+ def CancelTask(self, request, context):
210
+ """Missing associated documentation comment in .proto file."""
211
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
212
+ context.set_details('Method not implemented!')
213
+ raise NotImplementedError('Method not implemented!')
214
+
215
+ def RemoteCancelTask(self, request, context):
216
+ """Missing associated documentation comment in .proto file."""
217
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
218
+ context.set_details('Method not implemented!')
219
+ raise NotImplementedError('Method not implemented!')
220
+
221
+ def GetCoreWorkerStats(self, request, context):
222
+ """Missing associated documentation comment in .proto file."""
223
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
224
+ context.set_details('Method not implemented!')
225
+ raise NotImplementedError('Method not implemented!')
226
+
227
+ def LocalGC(self, request, context):
228
+ """Missing associated documentation comment in .proto file."""
229
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
230
+ context.set_details('Method not implemented!')
231
+ raise NotImplementedError('Method not implemented!')
232
+
233
+ def DeleteObjects(self, request, context):
234
+ """Missing associated documentation comment in .proto file."""
235
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
236
+ context.set_details('Method not implemented!')
237
+ raise NotImplementedError('Method not implemented!')
238
+
239
+ def SpillObjects(self, request, context):
240
+ """Missing associated documentation comment in .proto file."""
241
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
242
+ context.set_details('Method not implemented!')
243
+ raise NotImplementedError('Method not implemented!')
244
+
245
+ def RestoreSpilledObjects(self, request, context):
246
+ """Missing associated documentation comment in .proto file."""
247
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
248
+ context.set_details('Method not implemented!')
249
+ raise NotImplementedError('Method not implemented!')
250
+
251
+ def DeleteSpilledObjects(self, request, context):
252
+ """Missing associated documentation comment in .proto file."""
253
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
254
+ context.set_details('Method not implemented!')
255
+ raise NotImplementedError('Method not implemented!')
256
+
257
+ def PlasmaObjectReady(self, request, context):
258
+ """Missing associated documentation comment in .proto file."""
259
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
260
+ context.set_details('Method not implemented!')
261
+ raise NotImplementedError('Method not implemented!')
262
+
263
+ def Exit(self, request, context):
264
+ """Missing associated documentation comment in .proto file."""
265
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
266
+ context.set_details('Method not implemented!')
267
+ raise NotImplementedError('Method not implemented!')
268
+
269
+ def AssignObjectOwner(self, request, context):
270
+ """Missing associated documentation comment in .proto file."""
271
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
272
+ context.set_details('Method not implemented!')
273
+ raise NotImplementedError('Method not implemented!')
274
+
275
+ def NumPendingTasks(self, request, context):
276
+ """Missing associated documentation comment in .proto file."""
277
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
278
+ context.set_details('Method not implemented!')
279
+ raise NotImplementedError('Method not implemented!')
280
+
281
+ def RegisterMutableObjectReader(self, request, context):
282
+ """Missing associated documentation comment in .proto file."""
283
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
284
+ context.set_details('Method not implemented!')
285
+ raise NotImplementedError('Method not implemented!')
286
+
287
+
288
+ def add_CoreWorkerServiceServicer_to_server(servicer, server):
289
+ rpc_method_handlers = {
290
+ 'RayletNotifyGCSRestart': grpc.unary_unary_rpc_method_handler(
291
+ servicer.RayletNotifyGCSRestart,
292
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartRequest.FromString,
293
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartReply.SerializeToString,
294
+ ),
295
+ 'PushTask': grpc.unary_unary_rpc_method_handler(
296
+ servicer.PushTask,
297
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskRequest.FromString,
298
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskReply.SerializeToString,
299
+ ),
300
+ 'DirectActorCallArgWaitComplete': grpc.unary_unary_rpc_method_handler(
301
+ servicer.DirectActorCallArgWaitComplete,
302
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteRequest.FromString,
303
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteReply.SerializeToString,
304
+ ),
305
+ 'GetObjectStatus': grpc.unary_unary_rpc_method_handler(
306
+ servicer.GetObjectStatus,
307
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusRequest.FromString,
308
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusReply.SerializeToString,
309
+ ),
310
+ 'WaitForActorRefDeleted': grpc.unary_unary_rpc_method_handler(
311
+ servicer.WaitForActorRefDeleted,
312
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedRequest.FromString,
313
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedReply.SerializeToString,
314
+ ),
315
+ 'PubsubLongPolling': grpc.unary_unary_rpc_method_handler(
316
+ servicer.PubsubLongPolling,
317
+ request_deserializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingRequest.FromString,
318
+ response_serializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingReply.SerializeToString,
319
+ ),
320
+ 'ReportGeneratorItemReturns': grpc.unary_unary_rpc_method_handler(
321
+ servicer.ReportGeneratorItemReturns,
322
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsRequest.FromString,
323
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsReply.SerializeToString,
324
+ ),
325
+ 'PubsubCommandBatch': grpc.unary_unary_rpc_method_handler(
326
+ servicer.PubsubCommandBatch,
327
+ request_deserializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchRequest.FromString,
328
+ response_serializer=src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchReply.SerializeToString,
329
+ ),
330
+ 'UpdateObjectLocationBatch': grpc.unary_unary_rpc_method_handler(
331
+ servicer.UpdateObjectLocationBatch,
332
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchRequest.FromString,
333
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchReply.SerializeToString,
334
+ ),
335
+ 'GetObjectLocationsOwner': grpc.unary_unary_rpc_method_handler(
336
+ servicer.GetObjectLocationsOwner,
337
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerRequest.FromString,
338
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerReply.SerializeToString,
339
+ ),
340
+ 'KillActor': grpc.unary_unary_rpc_method_handler(
341
+ servicer.KillActor,
342
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorRequest.FromString,
343
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorReply.SerializeToString,
344
+ ),
345
+ 'CancelTask': grpc.unary_unary_rpc_method_handler(
346
+ servicer.CancelTask,
347
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskRequest.FromString,
348
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskReply.SerializeToString,
349
+ ),
350
+ 'RemoteCancelTask': grpc.unary_unary_rpc_method_handler(
351
+ servicer.RemoteCancelTask,
352
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskRequest.FromString,
353
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskReply.SerializeToString,
354
+ ),
355
+ 'GetCoreWorkerStats': grpc.unary_unary_rpc_method_handler(
356
+ servicer.GetCoreWorkerStats,
357
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsRequest.FromString,
358
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsReply.SerializeToString,
359
+ ),
360
+ 'LocalGC': grpc.unary_unary_rpc_method_handler(
361
+ servicer.LocalGC,
362
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCRequest.FromString,
363
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCReply.SerializeToString,
364
+ ),
365
+ 'DeleteObjects': grpc.unary_unary_rpc_method_handler(
366
+ servicer.DeleteObjects,
367
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsRequest.FromString,
368
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsReply.SerializeToString,
369
+ ),
370
+ 'SpillObjects': grpc.unary_unary_rpc_method_handler(
371
+ servicer.SpillObjects,
372
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsRequest.FromString,
373
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsReply.SerializeToString,
374
+ ),
375
+ 'RestoreSpilledObjects': grpc.unary_unary_rpc_method_handler(
376
+ servicer.RestoreSpilledObjects,
377
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsRequest.FromString,
378
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsReply.SerializeToString,
379
+ ),
380
+ 'DeleteSpilledObjects': grpc.unary_unary_rpc_method_handler(
381
+ servicer.DeleteSpilledObjects,
382
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsRequest.FromString,
383
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsReply.SerializeToString,
384
+ ),
385
+ 'PlasmaObjectReady': grpc.unary_unary_rpc_method_handler(
386
+ servicer.PlasmaObjectReady,
387
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyRequest.FromString,
388
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyReply.SerializeToString,
389
+ ),
390
+ 'Exit': grpc.unary_unary_rpc_method_handler(
391
+ servicer.Exit,
392
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitRequest.FromString,
393
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitReply.SerializeToString,
394
+ ),
395
+ 'AssignObjectOwner': grpc.unary_unary_rpc_method_handler(
396
+ servicer.AssignObjectOwner,
397
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerRequest.FromString,
398
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerReply.SerializeToString,
399
+ ),
400
+ 'NumPendingTasks': grpc.unary_unary_rpc_method_handler(
401
+ servicer.NumPendingTasks,
402
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksRequest.FromString,
403
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksReply.SerializeToString,
404
+ ),
405
+ 'RegisterMutableObjectReader': grpc.unary_unary_rpc_method_handler(
406
+ servicer.RegisterMutableObjectReader,
407
+ request_deserializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderRequest.FromString,
408
+ response_serializer=src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderReply.SerializeToString,
409
+ ),
410
+ }
411
+ generic_handler = grpc.method_handlers_generic_handler(
412
+ 'ray.rpc.CoreWorkerService', rpc_method_handlers)
413
+ server.add_generic_rpc_handlers((generic_handler,))
414
+
415
+
416
+ # This class is part of an EXPERIMENTAL API.
417
+ class CoreWorkerService(object):
418
+ """Missing associated documentation comment in .proto file."""
419
+
420
+ @staticmethod
421
+ def RayletNotifyGCSRestart(request,
422
+ target,
423
+ options=(),
424
+ channel_credentials=None,
425
+ call_credentials=None,
426
+ insecure=False,
427
+ compression=None,
428
+ wait_for_ready=None,
429
+ timeout=None,
430
+ metadata=None):
431
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/RayletNotifyGCSRestart',
432
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartRequest.SerializeToString,
433
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RayletNotifyGCSRestartReply.FromString,
434
+ options, channel_credentials,
435
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
436
+
437
+ @staticmethod
438
+ def PushTask(request,
439
+ target,
440
+ options=(),
441
+ channel_credentials=None,
442
+ call_credentials=None,
443
+ insecure=False,
444
+ compression=None,
445
+ wait_for_ready=None,
446
+ timeout=None,
447
+ metadata=None):
448
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/PushTask',
449
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskRequest.SerializeToString,
450
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.PushTaskReply.FromString,
451
+ options, channel_credentials,
452
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
453
+
454
+ @staticmethod
455
+ def DirectActorCallArgWaitComplete(request,
456
+ target,
457
+ options=(),
458
+ channel_credentials=None,
459
+ call_credentials=None,
460
+ insecure=False,
461
+ compression=None,
462
+ wait_for_ready=None,
463
+ timeout=None,
464
+ metadata=None):
465
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/DirectActorCallArgWaitComplete',
466
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteRequest.SerializeToString,
467
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DirectActorCallArgWaitCompleteReply.FromString,
468
+ options, channel_credentials,
469
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
470
+
471
+ @staticmethod
472
+ def GetObjectStatus(request,
473
+ target,
474
+ options=(),
475
+ channel_credentials=None,
476
+ call_credentials=None,
477
+ insecure=False,
478
+ compression=None,
479
+ wait_for_ready=None,
480
+ timeout=None,
481
+ metadata=None):
482
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/GetObjectStatus',
483
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusRequest.SerializeToString,
484
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectStatusReply.FromString,
485
+ options, channel_credentials,
486
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
487
+
488
+ @staticmethod
489
+ def WaitForActorRefDeleted(request,
490
+ target,
491
+ options=(),
492
+ channel_credentials=None,
493
+ call_credentials=None,
494
+ insecure=False,
495
+ compression=None,
496
+ wait_for_ready=None,
497
+ timeout=None,
498
+ metadata=None):
499
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/WaitForActorRefDeleted',
500
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedRequest.SerializeToString,
501
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.WaitForActorRefDeletedReply.FromString,
502
+ options, channel_credentials,
503
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
504
+
505
+ @staticmethod
506
+ def PubsubLongPolling(request,
507
+ target,
508
+ options=(),
509
+ channel_credentials=None,
510
+ call_credentials=None,
511
+ insecure=False,
512
+ compression=None,
513
+ wait_for_ready=None,
514
+ timeout=None,
515
+ metadata=None):
516
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/PubsubLongPolling',
517
+ src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingRequest.SerializeToString,
518
+ src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubLongPollingReply.FromString,
519
+ options, channel_credentials,
520
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
521
+
522
+ @staticmethod
523
+ def ReportGeneratorItemReturns(request,
524
+ target,
525
+ options=(),
526
+ channel_credentials=None,
527
+ call_credentials=None,
528
+ insecure=False,
529
+ compression=None,
530
+ wait_for_ready=None,
531
+ timeout=None,
532
+ metadata=None):
533
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/ReportGeneratorItemReturns',
534
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsRequest.SerializeToString,
535
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.ReportGeneratorItemReturnsReply.FromString,
536
+ options, channel_credentials,
537
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
538
+
539
+ @staticmethod
540
+ def PubsubCommandBatch(request,
541
+ target,
542
+ options=(),
543
+ channel_credentials=None,
544
+ call_credentials=None,
545
+ insecure=False,
546
+ compression=None,
547
+ wait_for_ready=None,
548
+ timeout=None,
549
+ metadata=None):
550
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/PubsubCommandBatch',
551
+ src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchRequest.SerializeToString,
552
+ src_dot_ray_dot_protobuf_dot_pubsub__pb2.PubsubCommandBatchReply.FromString,
553
+ options, channel_credentials,
554
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
555
+
556
+ @staticmethod
557
+ def UpdateObjectLocationBatch(request,
558
+ target,
559
+ options=(),
560
+ channel_credentials=None,
561
+ call_credentials=None,
562
+ insecure=False,
563
+ compression=None,
564
+ wait_for_ready=None,
565
+ timeout=None,
566
+ metadata=None):
567
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/UpdateObjectLocationBatch',
568
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchRequest.SerializeToString,
569
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.UpdateObjectLocationBatchReply.FromString,
570
+ options, channel_credentials,
571
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
572
+
573
+ @staticmethod
574
+ def GetObjectLocationsOwner(request,
575
+ target,
576
+ options=(),
577
+ channel_credentials=None,
578
+ call_credentials=None,
579
+ insecure=False,
580
+ compression=None,
581
+ wait_for_ready=None,
582
+ timeout=None,
583
+ metadata=None):
584
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/GetObjectLocationsOwner',
585
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerRequest.SerializeToString,
586
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetObjectLocationsOwnerReply.FromString,
587
+ options, channel_credentials,
588
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
589
+
590
+ @staticmethod
591
+ def KillActor(request,
592
+ target,
593
+ options=(),
594
+ channel_credentials=None,
595
+ call_credentials=None,
596
+ insecure=False,
597
+ compression=None,
598
+ wait_for_ready=None,
599
+ timeout=None,
600
+ metadata=None):
601
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/KillActor',
602
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorRequest.SerializeToString,
603
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.KillActorReply.FromString,
604
+ options, channel_credentials,
605
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
606
+
607
+ @staticmethod
608
+ def CancelTask(request,
609
+ target,
610
+ options=(),
611
+ channel_credentials=None,
612
+ call_credentials=None,
613
+ insecure=False,
614
+ compression=None,
615
+ wait_for_ready=None,
616
+ timeout=None,
617
+ metadata=None):
618
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/CancelTask',
619
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskRequest.SerializeToString,
620
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.CancelTaskReply.FromString,
621
+ options, channel_credentials,
622
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
623
+
624
+ @staticmethod
625
+ def RemoteCancelTask(request,
626
+ target,
627
+ options=(),
628
+ channel_credentials=None,
629
+ call_credentials=None,
630
+ insecure=False,
631
+ compression=None,
632
+ wait_for_ready=None,
633
+ timeout=None,
634
+ metadata=None):
635
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/RemoteCancelTask',
636
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskRequest.SerializeToString,
637
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RemoteCancelTaskReply.FromString,
638
+ options, channel_credentials,
639
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
640
+
641
+ @staticmethod
642
+ def GetCoreWorkerStats(request,
643
+ target,
644
+ options=(),
645
+ channel_credentials=None,
646
+ call_credentials=None,
647
+ insecure=False,
648
+ compression=None,
649
+ wait_for_ready=None,
650
+ timeout=None,
651
+ metadata=None):
652
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/GetCoreWorkerStats',
653
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsRequest.SerializeToString,
654
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.GetCoreWorkerStatsReply.FromString,
655
+ options, channel_credentials,
656
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
657
+
658
+ @staticmethod
659
+ def LocalGC(request,
660
+ target,
661
+ options=(),
662
+ channel_credentials=None,
663
+ call_credentials=None,
664
+ insecure=False,
665
+ compression=None,
666
+ wait_for_ready=None,
667
+ timeout=None,
668
+ metadata=None):
669
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/LocalGC',
670
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCRequest.SerializeToString,
671
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.LocalGCReply.FromString,
672
+ options, channel_credentials,
673
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
674
+
675
+ @staticmethod
676
+ def DeleteObjects(request,
677
+ target,
678
+ options=(),
679
+ channel_credentials=None,
680
+ call_credentials=None,
681
+ insecure=False,
682
+ compression=None,
683
+ wait_for_ready=None,
684
+ timeout=None,
685
+ metadata=None):
686
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/DeleteObjects',
687
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsRequest.SerializeToString,
688
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteObjectsReply.FromString,
689
+ options, channel_credentials,
690
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
691
+
692
+ @staticmethod
693
+ def SpillObjects(request,
694
+ target,
695
+ options=(),
696
+ channel_credentials=None,
697
+ call_credentials=None,
698
+ insecure=False,
699
+ compression=None,
700
+ wait_for_ready=None,
701
+ timeout=None,
702
+ metadata=None):
703
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/SpillObjects',
704
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsRequest.SerializeToString,
705
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.SpillObjectsReply.FromString,
706
+ options, channel_credentials,
707
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
708
+
709
+ @staticmethod
710
+ def RestoreSpilledObjects(request,
711
+ target,
712
+ options=(),
713
+ channel_credentials=None,
714
+ call_credentials=None,
715
+ insecure=False,
716
+ compression=None,
717
+ wait_for_ready=None,
718
+ timeout=None,
719
+ metadata=None):
720
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/RestoreSpilledObjects',
721
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsRequest.SerializeToString,
722
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RestoreSpilledObjectsReply.FromString,
723
+ options, channel_credentials,
724
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
725
+
726
+ @staticmethod
727
+ def DeleteSpilledObjects(request,
728
+ target,
729
+ options=(),
730
+ channel_credentials=None,
731
+ call_credentials=None,
732
+ insecure=False,
733
+ compression=None,
734
+ wait_for_ready=None,
735
+ timeout=None,
736
+ metadata=None):
737
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/DeleteSpilledObjects',
738
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsRequest.SerializeToString,
739
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.DeleteSpilledObjectsReply.FromString,
740
+ options, channel_credentials,
741
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
742
+
743
+ @staticmethod
744
+ def PlasmaObjectReady(request,
745
+ target,
746
+ options=(),
747
+ channel_credentials=None,
748
+ call_credentials=None,
749
+ insecure=False,
750
+ compression=None,
751
+ wait_for_ready=None,
752
+ timeout=None,
753
+ metadata=None):
754
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/PlasmaObjectReady',
755
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyRequest.SerializeToString,
756
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.PlasmaObjectReadyReply.FromString,
757
+ options, channel_credentials,
758
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
759
+
760
+ @staticmethod
761
+ def Exit(request,
762
+ target,
763
+ options=(),
764
+ channel_credentials=None,
765
+ call_credentials=None,
766
+ insecure=False,
767
+ compression=None,
768
+ wait_for_ready=None,
769
+ timeout=None,
770
+ metadata=None):
771
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/Exit',
772
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitRequest.SerializeToString,
773
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.ExitReply.FromString,
774
+ options, channel_credentials,
775
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
776
+
777
+ @staticmethod
778
+ def AssignObjectOwner(request,
779
+ target,
780
+ options=(),
781
+ channel_credentials=None,
782
+ call_credentials=None,
783
+ insecure=False,
784
+ compression=None,
785
+ wait_for_ready=None,
786
+ timeout=None,
787
+ metadata=None):
788
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/AssignObjectOwner',
789
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerRequest.SerializeToString,
790
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.AssignObjectOwnerReply.FromString,
791
+ options, channel_credentials,
792
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
793
+
794
+ @staticmethod
795
+ def NumPendingTasks(request,
796
+ target,
797
+ options=(),
798
+ channel_credentials=None,
799
+ call_credentials=None,
800
+ insecure=False,
801
+ compression=None,
802
+ wait_for_ready=None,
803
+ timeout=None,
804
+ metadata=None):
805
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/NumPendingTasks',
806
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksRequest.SerializeToString,
807
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.NumPendingTasksReply.FromString,
808
+ options, channel_credentials,
809
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
810
+
811
+ @staticmethod
812
+ def RegisterMutableObjectReader(request,
813
+ target,
814
+ options=(),
815
+ channel_credentials=None,
816
+ call_credentials=None,
817
+ insecure=False,
818
+ compression=None,
819
+ wait_for_ready=None,
820
+ timeout=None,
821
+ metadata=None):
822
+ return grpc.experimental.unary_unary(request, target, '/ray.rpc.CoreWorkerService/RegisterMutableObjectReader',
823
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderRequest.SerializeToString,
824
+ src_dot_ray_dot_protobuf_dot_core__worker__pb2.RegisterMutableObjectReaderReply.FromString,
825
+ options, channel_credentials,
826
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
.venv/lib/python3.11/site-packages/ray/core/generated/export_actor_data_pb2.py ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: src/ray/protobuf/export_api/export_actor_data.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import message as _message
8
+ from google.protobuf import reflection as _reflection
9
+ from google.protobuf import symbol_database as _symbol_database
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from . import common_pb2 as src_dot_ray_dot_protobuf_dot_common__pb2
16
+
17
+
18
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3src/ray/protobuf/export_api/export_actor_data.proto\x12\x07ray.rpc\x1a\x1dsrc/ray/protobuf/common.proto\"\x94\x06\n\x0f\x45xportActorData\x12\x19\n\x08\x61\x63tor_id\x18\x01 \x01(\x0cR\x07\x61\x63torId\x12\x15\n\x06job_id\x18\x02 \x01(\x0cR\x05jobId\x12\x39\n\x05state\x18\x03 \x01(\x0e\x32#.ray.rpc.ExportActorData.ActorStateR\x05state\x12\x1f\n\x0bis_detached\x18\x04 \x01(\x08R\nisDetached\x12\x12\n\x04name\x18\x05 \x01(\tR\x04name\x12\x10\n\x03pid\x18\x06 \x01(\rR\x03pid\x12#\n\rray_namespace\x18\x07 \x01(\tR\x0crayNamespace\x12\x34\n\x16serialized_runtime_env\x18\x08 \x01(\tR\x14serializedRuntimeEnv\x12\x1d\n\nclass_name\x18\t \x01(\tR\tclassName\x12\x39\n\x0b\x64\x65\x61th_cause\x18\n \x01(\x0b\x32\x18.ray.rpc.ActorDeathCauseR\ndeathCause\x12^\n\x12required_resources\x18\x0b \x03(\x0b\x32/.ray.rpc.ExportActorData.RequiredResourcesEntryR\x11requiredResources\x12\x1c\n\x07node_id\x18\x0c \x01(\x0cH\x00R\x06nodeId\x88\x01\x01\x12\x31\n\x12placement_group_id\x18\r \x01(\x0cH\x01R\x10placementGroupId\x88\x01\x01\x12\x1b\n\trepr_name\x18\x0e \x01(\tR\x08reprName\x1a\x44\n\x16RequiredResourcesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\x01R\x05value:\x02\x38\x01\"a\n\nActorState\x12\x18\n\x14\x44\x45PENDENCIES_UNREADY\x10\x00\x12\x14\n\x10PENDING_CREATION\x10\x01\x12\t\n\x05\x41LIVE\x10\x02\x12\x0e\n\nRESTARTING\x10\x03\x12\x08\n\x04\x44\x45\x41\x44\x10\x04\x42\n\n\x08_node_idB\x15\n\x13_placement_group_idb\x06proto3')
19
+
20
+
21
+
22
+ _EXPORTACTORDATA = DESCRIPTOR.message_types_by_name['ExportActorData']
23
+ _EXPORTACTORDATA_REQUIREDRESOURCESENTRY = _EXPORTACTORDATA.nested_types_by_name['RequiredResourcesEntry']
24
+ _EXPORTACTORDATA_ACTORSTATE = _EXPORTACTORDATA.enum_types_by_name['ActorState']
25
+ ExportActorData = _reflection.GeneratedProtocolMessageType('ExportActorData', (_message.Message,), {
26
+
27
+ 'RequiredResourcesEntry' : _reflection.GeneratedProtocolMessageType('RequiredResourcesEntry', (_message.Message,), {
28
+ 'DESCRIPTOR' : _EXPORTACTORDATA_REQUIREDRESOURCESENTRY,
29
+ '__module__' : 'src.ray.protobuf.export_api.export_actor_data_pb2'
30
+ # @@protoc_insertion_point(class_scope:ray.rpc.ExportActorData.RequiredResourcesEntry)
31
+ })
32
+ ,
33
+ 'DESCRIPTOR' : _EXPORTACTORDATA,
34
+ '__module__' : 'src.ray.protobuf.export_api.export_actor_data_pb2'
35
+ # @@protoc_insertion_point(class_scope:ray.rpc.ExportActorData)
36
+ })
37
+ _sym_db.RegisterMessage(ExportActorData)
38
+ _sym_db.RegisterMessage(ExportActorData.RequiredResourcesEntry)
39
+
40
+ if _descriptor._USE_C_DESCRIPTORS == False:
41
+
42
+ DESCRIPTOR._options = None
43
+ _EXPORTACTORDATA_REQUIREDRESOURCESENTRY._options = None
44
+ _EXPORTACTORDATA_REQUIREDRESOURCESENTRY._serialized_options = b'8\001'
45
+ _EXPORTACTORDATA._serialized_start=96
46
+ _EXPORTACTORDATA._serialized_end=884
47
+ _EXPORTACTORDATA_REQUIREDRESOURCESENTRY._serialized_start=682
48
+ _EXPORTACTORDATA_REQUIREDRESOURCESENTRY._serialized_end=750
49
+ _EXPORTACTORDATA_ACTORSTATE._serialized_start=752
50
+ _EXPORTACTORDATA_ACTORSTATE._serialized_end=849
51
+ # @@protoc_insertion_point(module_scope)
.venv/lib/python3.11/site-packages/ray/core/generated/export_runtime_env_pb2.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: src/ray/protobuf/export_api/export_runtime_env.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import message as _message
8
+ from google.protobuf import reflection as _reflection
9
+ from google.protobuf import symbol_database as _symbol_database
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n4src/ray/protobuf/export_api/export_runtime_env.proto\x12\x07ray.rpc\"\xd9\x03\n\x14\x45xportRuntimeEnvInfo\x12\x34\n\x16serialized_runtime_env\x18\x01 \x01(\tR\x14serializedRuntimeEnv\x12@\n\x04uris\x18\x02 \x01(\x0b\x32,.ray.rpc.ExportRuntimeEnvInfo.RuntimeEnvUrisR\x04uris\x12\\\n\x12runtime_env_config\x18\x03 \x01(\x0b\x32..ray.rpc.ExportRuntimeEnvInfo.RuntimeEnvConfigR\x10runtimeEnvConfig\x1a`\n\x0eRuntimeEnvUris\x12&\n\x0fworking_dir_uri\x18\x01 \x01(\tR\rworkingDirUri\x12&\n\x0fpy_modules_uris\x18\x02 \x03(\tR\rpyModulesUris\x1a\x88\x01\n\x10RuntimeEnvConfig\x12\x32\n\x15setup_timeout_seconds\x18\x01 \x01(\x05R\x13setupTimeoutSeconds\x12#\n\reager_install\x18\x02 \x01(\x08R\x0c\x65\x61gerInstall\x12\x1b\n\tlog_files\x18\x03 \x03(\tR\x08logFilesb\x06proto3')
18
+
19
+
20
+
21
+ _EXPORTRUNTIMEENVINFO = DESCRIPTOR.message_types_by_name['ExportRuntimeEnvInfo']
22
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVURIS = _EXPORTRUNTIMEENVINFO.nested_types_by_name['RuntimeEnvUris']
23
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVCONFIG = _EXPORTRUNTIMEENVINFO.nested_types_by_name['RuntimeEnvConfig']
24
+ ExportRuntimeEnvInfo = _reflection.GeneratedProtocolMessageType('ExportRuntimeEnvInfo', (_message.Message,), {
25
+
26
+ 'RuntimeEnvUris' : _reflection.GeneratedProtocolMessageType('RuntimeEnvUris', (_message.Message,), {
27
+ 'DESCRIPTOR' : _EXPORTRUNTIMEENVINFO_RUNTIMEENVURIS,
28
+ '__module__' : 'src.ray.protobuf.export_api.export_runtime_env_pb2'
29
+ # @@protoc_insertion_point(class_scope:ray.rpc.ExportRuntimeEnvInfo.RuntimeEnvUris)
30
+ })
31
+ ,
32
+
33
+ 'RuntimeEnvConfig' : _reflection.GeneratedProtocolMessageType('RuntimeEnvConfig', (_message.Message,), {
34
+ 'DESCRIPTOR' : _EXPORTRUNTIMEENVINFO_RUNTIMEENVCONFIG,
35
+ '__module__' : 'src.ray.protobuf.export_api.export_runtime_env_pb2'
36
+ # @@protoc_insertion_point(class_scope:ray.rpc.ExportRuntimeEnvInfo.RuntimeEnvConfig)
37
+ })
38
+ ,
39
+ 'DESCRIPTOR' : _EXPORTRUNTIMEENVINFO,
40
+ '__module__' : 'src.ray.protobuf.export_api.export_runtime_env_pb2'
41
+ # @@protoc_insertion_point(class_scope:ray.rpc.ExportRuntimeEnvInfo)
42
+ })
43
+ _sym_db.RegisterMessage(ExportRuntimeEnvInfo)
44
+ _sym_db.RegisterMessage(ExportRuntimeEnvInfo.RuntimeEnvUris)
45
+ _sym_db.RegisterMessage(ExportRuntimeEnvInfo.RuntimeEnvConfig)
46
+
47
+ if _descriptor._USE_C_DESCRIPTORS == False:
48
+
49
+ DESCRIPTOR._options = None
50
+ _EXPORTRUNTIMEENVINFO._serialized_start=66
51
+ _EXPORTRUNTIMEENVINFO._serialized_end=539
52
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVURIS._serialized_start=304
53
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVURIS._serialized_end=400
54
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVCONFIG._serialized_start=403
55
+ _EXPORTRUNTIMEENVINFO_RUNTIMEENVCONFIG._serialized_end=539
56
+ # @@protoc_insertion_point(module_scope)
.venv/lib/python3.11/site-packages/ray/core/generated/logging_pb2_grpc.py ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
.venv/lib/python3.11/site-packages/ray/core/generated/node_manager_pb2.py ADDED
@@ -0,0 +1,534 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: src/ray/protobuf/node_manager.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import message as _message
8
+ from google.protobuf import reflection as _reflection
9
+ from google.protobuf import symbol_database as _symbol_database
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from . import common_pb2 as src_dot_ray_dot_protobuf_dot_common__pb2
16
+ from . import gcs_pb2 as src_dot_ray_dot_protobuf_dot_gcs__pb2
17
+ from . import autoscaler_pb2 as src_dot_ray_dot_protobuf_dot_autoscaler__pb2
18
+ from . import runtime_env_common_pb2 as src_dot_ray_dot_protobuf_dot_runtime__env__common__pb2
19
+
20
+
21
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#src/ray/protobuf/node_manager.proto\x12\x07ray.rpc\x1a\x1dsrc/ray/protobuf/common.proto\x1a\x1asrc/ray/protobuf/gcs.proto\x1a!src/ray/protobuf/autoscaler.proto\x1a)src/ray/protobuf/runtime_env_common.proto\"p\n\x13WorkerBacklogReport\x12\x36\n\rresource_spec\x18\x01 \x01(\x0b\x32\x11.ray.rpc.TaskSpecR\x0cresourceSpec\x12!\n\x0c\x62\x61\x63klog_size\x18\x02 \x01(\x03R\x0b\x62\x61\x63klogSize\"\x80\x01\n\x1aReportWorkerBacklogRequest\x12\x1b\n\tworker_id\x18\x01 \x01(\x0cR\x08workerId\x12\x45\n\x0f\x62\x61\x63klog_reports\x18\x02 \x03(\x0b\x32\x1c.ray.rpc.WorkerBacklogReportR\x0e\x62\x61\x63klogReports\"\x1a\n\x18ReportWorkerBacklogReply\"\xe0\x01\n\x19RequestWorkerLeaseRequest\x12\x36\n\rresource_spec\x18\x01 \x01(\x0b\x32\x11.ray.rpc.TaskSpecR\x0cresourceSpec\x12!\n\x0c\x62\x61\x63klog_size\x18\x02 \x01(\x03R\x0b\x62\x61\x63klogSize\x12&\n\x0fgrant_or_reject\x18\x03 \x01(\x08R\rgrantOrReject\x12@\n\x1dis_selected_based_on_locality\x18\x04 \x01(\x08R\x19isSelectedBasedOnLocality\"\x81\x06\n\x17RequestWorkerLeaseReply\x12\x37\n\x0eworker_address\x18\x01 \x01(\x0b\x32\x10.ray.rpc.AddressR\rworkerAddress\x12G\n\x17retry_at_raylet_address\x18\x02 \x01(\x0b\x32\x10.ray.rpc.AddressR\x14retryAtRayletAddress\x12\x44\n\x10resource_mapping\x18\x03 \x03(\x0b\x32\x19.ray.rpc.ResourceMapEntryR\x0fresourceMapping\x12\x1a\n\x08\x63\x61nceled\x18\x04 \x01(\x08R\x08\x63\x61nceled\x12\x1d\n\nworker_pid\x18\x06 \x01(\rR\tworkerPid\x12\x1a\n\x08rejected\x18\x07 \x01(\x08R\x08rejected\x12=\n\x0eresources_data\x18\x08 \x01(\x0b\x32\x16.ray.rpc.ResourcesDataR\rresourcesData\x12Y\n\x0c\x66\x61ilure_type\x18\t \x01(\x0e\x32\x36.ray.rpc.RequestWorkerLeaseReply.SchedulingFailureTypeR\x0b\x66\x61ilureType\x12<\n\x1ascheduling_failure_message\x18\n \x01(\tR\x18schedulingFailureMessage\"\xee\x01\n\x15SchedulingFailureType\x12\x0e\n\nNOT_FAILED\x10\x00\x12\x15\n\x11SCHEDULING_FAILED\x10\x01\x12\x30\n,SCHEDULING_CANCELLED_PLACEMENT_GROUP_REMOVED\x10\x02\x12\x31\n-SCHEDULING_CANCELLED_RUNTIME_ENV_SETUP_FAILED\x10\x03\x12!\n\x1dSCHEDULING_CANCELLED_INTENDED\x10\x04\x12&\n\"SCHEDULING_CANCELLED_UNSCHEDULABLE\x10\x05\"\x8b\x02\n\x16PrestartWorkersRequest\x12-\n\x08language\x18\x01 \x01(\x0e\x32\x11.ray.rpc.LanguageR\x08language\x12\x1a\n\x06job_id\x18\x02 \x01(\x0cH\x00R\x05jobId\x88\x01\x01\x12\x41\n\x10runtime_env_info\x18\x03 \x01(\x0b\x32\x17.ray.rpc.RuntimeEnvInfoR\x0eruntimeEnvInfo\x12\x37\n\x18keep_alive_duration_secs\x18\x04 \x01(\x04R\x15keepAliveDurationSecs\x12\x1f\n\x0bnum_workers\x18\x05 \x01(\x04R\nnumWorkersB\t\n\x07_job_id\"\x16\n\x14PrestartWorkersReply\"S\n\x1dPrepareBundleResourcesRequest\x12\x32\n\x0c\x62undle_specs\x18\x01 \x03(\x0b\x32\x0f.ray.rpc.BundleR\x0b\x62undleSpecs\"7\n\x1bPrepareBundleResourcesReply\x12\x18\n\x07success\x18\x01 \x01(\x08R\x07success\"R\n\x1c\x43ommitBundleResourcesRequest\x12\x32\n\x0c\x62undle_specs\x18\x01 \x03(\x0b\x32\x0f.ray.rpc.BundleR\x0b\x62undleSpecs\"\x1c\n\x1a\x43ommitBundleResourcesReply\"P\n\x1c\x43\x61ncelResourceReserveRequest\x12\x30\n\x0b\x62undle_spec\x18\x01 \x01(\x0b\x32\x0f.ray.rpc.BundleR\nbundleSpec\"\x1c\n\x1a\x43\x61ncelResourceReserveReply\"\xec\x01\n\x13ReturnWorkerRequest\x12\x1f\n\x0bworker_port\x18\x01 \x01(\x05R\nworkerPort\x12\x1b\n\tworker_id\x18\x02 \x01(\x0cR\x08workerId\x12+\n\x11\x64isconnect_worker\x18\x03 \x01(\x08R\x10\x64isconnectWorker\x12%\n\x0eworker_exiting\x18\x04 \x01(\x08R\rworkerExiting\x12\x43\n\x1e\x64isconnect_worker_error_detail\x18\x05 \x01(\tR\x1b\x64isconnectWorkerErrorDetail\"\x13\n\x11ReturnWorkerReply\"M\n ReleaseUnusedActorWorkersRequest\x12)\n\x11worker_ids_in_use\x18\x01 \x03(\x0cR\x0eworkerIdsInUse\" \n\x1eReleaseUnusedActorWorkersReply\"3\n\x15ShutdownRayletRequest\x12\x1a\n\x08graceful\x18\x01 \x01(\x08R\x08graceful\"\x15\n\x13ShutdownRayletReply\"3\n\x18\x43\x61ncelWorkerLeaseRequest\x12\x17\n\x07task_id\x18\x01 \x01(\x0cR\x06taskId\"2\n\x16\x43\x61ncelWorkerLeaseReply\x12\x18\n\x07success\x18\x01 \x01(\x08R\x07success\"\xa4\x01\n\x13PinObjectIDsRequest\x12\x35\n\rowner_address\x18\x01 \x01(\x0b\x32\x10.ray.rpc.AddressR\x0cownerAddress\x12\x1d\n\nobject_ids\x18\x02 \x03(\x0cR\tobjectIds\x12&\n\x0cgenerator_id\x18\x03 \x01(\x0cH\x00R\x0bgeneratorId\x88\x01\x01\x42\x0f\n\r_generator_id\"1\n\x11PinObjectIDsReply\x12\x1c\n\tsuccesses\x18\x01 \x03(\x08R\tsuccesses\"E\n\x13GetNodeStatsRequest\x12.\n\x13include_memory_info\x18\x01 \x01(\x08R\x11includeMemoryInfo\"\xf2\x06\n\x10ObjectStoreStats\x12+\n\x12spill_time_total_s\x18\x01 \x01(\x01R\x0fspillTimeTotalS\x12.\n\x13spilled_bytes_total\x18\x02 \x01(\x03R\x11spilledBytesTotal\x12\x32\n\x15spilled_objects_total\x18\x03 \x01(\x03R\x13spilledObjectsTotal\x12/\n\x14restore_time_total_s\x18\x04 \x01(\x01R\x11restoreTimeTotalS\x12\x30\n\x14restored_bytes_total\x18\x05 \x01(\x03R\x12restoredBytesTotal\x12\x34\n\x16restored_objects_total\x18\x06 \x01(\x03R\x14restoredObjectsTotal\x12\x35\n\x17object_store_bytes_used\x18\x07 \x01(\x03R\x14objectStoreBytesUsed\x12\x37\n\x18object_store_bytes_avail\x18\x08 \x01(\x03R\x15objectStoreBytesAvail\x12\x44\n\x1fobject_store_bytes_primary_copy\x18\t \x01(\x03R\x1bobjectStoreBytesPrimaryCopy\x12=\n\x1bobject_store_bytes_fallback\x18\n \x01(\x03R\x18objectStoreBytesFallback\x12*\n\x11num_local_objects\x18\x0b \x01(\x03R\x0fnumLocalObjects\x12%\n\x0e\x63onsumed_bytes\x18\x0c \x01(\x03R\rconsumedBytes\x12.\n\x13object_pulls_queued\x18\r \x01(\x08R\x11objectPullsQueued\x12\x44\n\x1fnum_object_store_primary_copies\x18\x0e \x01(\x03R\x1bnumObjectStorePrimaryCopies\x12<\n\x1a\x63umulative_created_objects\x18\x0f \x01(\x03R\x18\x63umulativeCreatedObjects\x12\x38\n\x18\x63umulative_created_bytes\x18\x10 \x01(\x03R\x16\x63umulativeCreatedBytes\"\xb8\x01\n\x11GetNodeStatsReply\x12\x46\n\x12\x63ore_workers_stats\x18\x01 \x03(\x0b\x32\x18.ray.rpc.CoreWorkerStatsR\x10\x63oreWorkersStats\x12\x1f\n\x0bnum_workers\x18\x03 \x01(\rR\nnumWorkers\x12:\n\x0bstore_stats\x18\x06 \x01(\x0b\x32\x19.ray.rpc.ObjectStoreStatsR\nstoreStats\"\x11\n\x0fGlobalGCRequest\"\x0f\n\rGlobalGCReply\"O\n\x1d\x46ormatGlobalMemoryInfoRequest\x12.\n\x13include_memory_info\x18\x01 \x01(\x08R\x11includeMemoryInfo\"\x80\x01\n\x1b\x46ormatGlobalMemoryInfoReply\x12%\n\x0ememory_summary\x18\x01 \x01(\tR\rmemorySummary\x12:\n\x0bstore_stats\x18\x02 \x01(\x0b\x32\x19.ray.rpc.ObjectStoreStatsR\nstoreStats\"T\n\x1bReleaseUnusedBundlesRequest\x12\x35\n\x0e\x62undles_in_use\x18\x01 \x03(\x0b\x32\x0f.ray.rpc.BundleR\x0c\x62undlesInUse\"\x1b\n\x19ReleaseUnusedBundlesReply\"\x18\n\x16GetSystemConfigRequest\";\n\x14GetSystemConfigReply\x12#\n\rsystem_config\x18\x01 \x01(\tR\x0csystemConfig\"<\n\x15GetObjectsInfoRequest\x12\x19\n\x05limit\x18\x01 \x01(\x03H\x00R\x05limit\x88\x01\x01\x42\x08\n\x06_limit\"s\n\x13GetObjectsInfoReply\x12\x46\n\x12\x63ore_workers_stats\x18\x01 \x03(\x0b\x32\x18.ray.rpc.CoreWorkerStatsR\x10\x63oreWorkersStats\x12\x14\n\x05total\x18\x02 \x01(\x03R\x05total\"\x18\n\x16GetResourceLoadRequest\"L\n\x14GetResourceLoadReply\x12\x34\n\tresources\x18\x01 \x01(\x0b\x32\x16.ray.rpc.ResourcesDataR\tresources\"\x19\n\x17NotifyGCSRestartRequest\"\x17\n\x15NotifyGCSRestartReply\"5\n\x1aGetTaskFailureCauseRequest\x12\x17\n\x07task_id\x18\x01 \x01(\x0cR\x06taskId\"\xa1\x01\n\x18GetTaskFailureCauseReply\x12?\n\rfailure_cause\x18\x01 \x01(\x0b\x32\x15.ray.rpc.RayErrorInfoH\x00R\x0c\x66\x61ilureCause\x88\x01\x01\x12\x32\n\x15\x66\x61il_task_immediately\x18\x02 \x01(\x08R\x13\x66\x61ilTaskImmediatelyB\x10\n\x0e_failure_cause\"\xac\x01\n\x12\x44rainRayletRequest\x12;\n\x06reason\x18\x01 \x01(\x0e\x32#.ray.rpc.autoscaler.DrainNodeReasonR\x06reason\x12%\n\x0ereason_message\x18\x02 \x01(\tR\rreasonMessage\x12\x32\n\x15\x64\x65\x61\x64line_timestamp_ms\x18\x03 \x01(\x03R\x13\x64\x65\x61\x64lineTimestampMs\"m\n\x10\x44rainRayletReply\x12\x1f\n\x0bis_accepted\x18\x01 \x01(\x08R\nisAccepted\x12\x38\n\x18rejection_reason_message\x18\x02 \x01(\tR\x16rejectionReasonMessage\"\x93\x01\n\x1cRegisterMutableObjectRequest\x12(\n\x10writer_object_id\x18\x01 \x01(\x0cR\x0ewriterObjectId\x12\x1f\n\x0bnum_readers\x18\x02 \x01(\x03R\nnumReaders\x12(\n\x10reader_object_id\x18\x03 \x01(\x0cR\x0ereaderObjectId\"\x1c\n\x1aRegisterMutableObjectReply\"\xed\x01\n\x18PushMutableObjectRequest\x12(\n\x10writer_object_id\x18\x01 \x01(\x0cR\x0ewriterObjectId\x12&\n\x0ftotal_data_size\x18\x02 \x01(\x04R\rtotalDataSize\x12.\n\x13total_metadata_size\x18\x03 \x01(\x04R\x11totalMetadataSize\x12\x16\n\x06offset\x18\x04 \x01(\x04R\x06offset\x12\x1d\n\nchunk_size\x18\x05 \x01(\x04R\tchunkSize\x12\x18\n\x07payload\x18\x06 \x01(\x0cR\x07payload\",\n\x16PushMutableObjectReply\x12\x12\n\x04\x64one\x18\x01 \x01(\x08R\x04\x64one\"7\n\x18IsLocalWorkerDeadRequest\x12\x1b\n\tworker_id\x18\x01 \x01(\x0cR\x08workerId\"1\n\x16IsLocalWorkerDeadReply\x12\x17\n\x07is_dead\x18\x01 \x01(\x08R\x06isDead2\xdd\x10\n\x12NodeManagerService\x12T\n\x10NotifyGCSRestart\x12 .ray.rpc.NotifyGCSRestartRequest\x1a\x1e.ray.rpc.NotifyGCSRestartReply\x12Q\n\x0fGetResourceLoad\x12\x1f.ray.rpc.GetResourceLoadRequest\x1a\x1d.ray.rpc.GetResourceLoadReply\x12Z\n\x12RequestWorkerLease\x12\".ray.rpc.RequestWorkerLeaseRequest\x1a .ray.rpc.RequestWorkerLeaseReply\x12Q\n\x0fPrestartWorkers\x12\x1f.ray.rpc.PrestartWorkersRequest\x1a\x1d.ray.rpc.PrestartWorkersReply\x12]\n\x13ReportWorkerBacklog\x12#.ray.rpc.ReportWorkerBacklogRequest\x1a!.ray.rpc.ReportWorkerBacklogReply\x12H\n\x0cReturnWorker\x12\x1c.ray.rpc.ReturnWorkerRequest\x1a\x1a.ray.rpc.ReturnWorkerReply\x12o\n\x19ReleaseUnusedActorWorkers\x12).ray.rpc.ReleaseUnusedActorWorkersRequest\x1a\'.ray.rpc.ReleaseUnusedActorWorkersReply\x12N\n\x0eShutdownRaylet\x12\x1e.ray.rpc.ShutdownRayletRequest\x1a\x1c.ray.rpc.ShutdownRayletReply\x12\x45\n\x0b\x44rainRaylet\x12\x1b.ray.rpc.DrainRayletRequest\x1a\x19.ray.rpc.DrainRayletReply\x12\x66\n\x16PrepareBundleResources\x12&.ray.rpc.PrepareBundleResourcesRequest\x1a$.ray.rpc.PrepareBundleResourcesReply\x12\x63\n\x15\x43ommitBundleResources\x12%.ray.rpc.CommitBundleResourcesRequest\x1a#.ray.rpc.CommitBundleResourcesReply\x12\x63\n\x15\x43\x61ncelResourceReserve\x12%.ray.rpc.CancelResourceReserveRequest\x1a#.ray.rpc.CancelResourceReserveReply\x12W\n\x11\x43\x61ncelWorkerLease\x12!.ray.rpc.CancelWorkerLeaseRequest\x1a\x1f.ray.rpc.CancelWorkerLeaseReply\x12H\n\x0cPinObjectIDs\x12\x1c.ray.rpc.PinObjectIDsRequest\x1a\x1a.ray.rpc.PinObjectIDsReply\x12H\n\x0cGetNodeStats\x12\x1c.ray.rpc.GetNodeStatsRequest\x1a\x1a.ray.rpc.GetNodeStatsReply\x12<\n\x08GlobalGC\x12\x18.ray.rpc.GlobalGCRequest\x1a\x16.ray.rpc.GlobalGCReply\x12\x66\n\x16\x46ormatGlobalMemoryInfo\x12&.ray.rpc.FormatGlobalMemoryInfoRequest\x1a$.ray.rpc.FormatGlobalMemoryInfoReply\x12`\n\x14ReleaseUnusedBundles\x12$.ray.rpc.ReleaseUnusedBundlesRequest\x1a\".ray.rpc.ReleaseUnusedBundlesReply\x12Q\n\x0fGetSystemConfig\x12\x1f.ray.rpc.GetSystemConfigRequest\x1a\x1d.ray.rpc.GetSystemConfigReply\x12N\n\x0eGetObjectsInfo\x12\x1e.ray.rpc.GetObjectsInfoRequest\x1a\x1c.ray.rpc.GetObjectsInfoReply\x12]\n\x13GetTaskFailureCause\x12#.ray.rpc.GetTaskFailureCauseRequest\x1a!.ray.rpc.GetTaskFailureCauseReply\x12\x63\n\x15RegisterMutableObject\x12%.ray.rpc.RegisterMutableObjectRequest\x1a#.ray.rpc.RegisterMutableObjectReply\x12W\n\x11PushMutableObject\x12!.ray.rpc.PushMutableObjectRequest\x1a\x1f.ray.rpc.PushMutableObjectReply\x12W\n\x11IsLocalWorkerDead\x12!.ray.rpc.IsLocalWorkerDeadRequest\x1a\x1f.ray.rpc.IsLocalWorkerDeadReplyb\x06proto3')
22
+
23
+
24
+
25
+ _WORKERBACKLOGREPORT = DESCRIPTOR.message_types_by_name['WorkerBacklogReport']
26
+ _REPORTWORKERBACKLOGREQUEST = DESCRIPTOR.message_types_by_name['ReportWorkerBacklogRequest']
27
+ _REPORTWORKERBACKLOGREPLY = DESCRIPTOR.message_types_by_name['ReportWorkerBacklogReply']
28
+ _REQUESTWORKERLEASEREQUEST = DESCRIPTOR.message_types_by_name['RequestWorkerLeaseRequest']
29
+ _REQUESTWORKERLEASEREPLY = DESCRIPTOR.message_types_by_name['RequestWorkerLeaseReply']
30
+ _PRESTARTWORKERSREQUEST = DESCRIPTOR.message_types_by_name['PrestartWorkersRequest']
31
+ _PRESTARTWORKERSREPLY = DESCRIPTOR.message_types_by_name['PrestartWorkersReply']
32
+ _PREPAREBUNDLERESOURCESREQUEST = DESCRIPTOR.message_types_by_name['PrepareBundleResourcesRequest']
33
+ _PREPAREBUNDLERESOURCESREPLY = DESCRIPTOR.message_types_by_name['PrepareBundleResourcesReply']
34
+ _COMMITBUNDLERESOURCESREQUEST = DESCRIPTOR.message_types_by_name['CommitBundleResourcesRequest']
35
+ _COMMITBUNDLERESOURCESREPLY = DESCRIPTOR.message_types_by_name['CommitBundleResourcesReply']
36
+ _CANCELRESOURCERESERVEREQUEST = DESCRIPTOR.message_types_by_name['CancelResourceReserveRequest']
37
+ _CANCELRESOURCERESERVEREPLY = DESCRIPTOR.message_types_by_name['CancelResourceReserveReply']
38
+ _RETURNWORKERREQUEST = DESCRIPTOR.message_types_by_name['ReturnWorkerRequest']
39
+ _RETURNWORKERREPLY = DESCRIPTOR.message_types_by_name['ReturnWorkerReply']
40
+ _RELEASEUNUSEDACTORWORKERSREQUEST = DESCRIPTOR.message_types_by_name['ReleaseUnusedActorWorkersRequest']
41
+ _RELEASEUNUSEDACTORWORKERSREPLY = DESCRIPTOR.message_types_by_name['ReleaseUnusedActorWorkersReply']
42
+ _SHUTDOWNRAYLETREQUEST = DESCRIPTOR.message_types_by_name['ShutdownRayletRequest']
43
+ _SHUTDOWNRAYLETREPLY = DESCRIPTOR.message_types_by_name['ShutdownRayletReply']
44
+ _CANCELWORKERLEASEREQUEST = DESCRIPTOR.message_types_by_name['CancelWorkerLeaseRequest']
45
+ _CANCELWORKERLEASEREPLY = DESCRIPTOR.message_types_by_name['CancelWorkerLeaseReply']
46
+ _PINOBJECTIDSREQUEST = DESCRIPTOR.message_types_by_name['PinObjectIDsRequest']
47
+ _PINOBJECTIDSREPLY = DESCRIPTOR.message_types_by_name['PinObjectIDsReply']
48
+ _GETNODESTATSREQUEST = DESCRIPTOR.message_types_by_name['GetNodeStatsRequest']
49
+ _OBJECTSTORESTATS = DESCRIPTOR.message_types_by_name['ObjectStoreStats']
50
+ _GETNODESTATSREPLY = DESCRIPTOR.message_types_by_name['GetNodeStatsReply']
51
+ _GLOBALGCREQUEST = DESCRIPTOR.message_types_by_name['GlobalGCRequest']
52
+ _GLOBALGCREPLY = DESCRIPTOR.message_types_by_name['GlobalGCReply']
53
+ _FORMATGLOBALMEMORYINFOREQUEST = DESCRIPTOR.message_types_by_name['FormatGlobalMemoryInfoRequest']
54
+ _FORMATGLOBALMEMORYINFOREPLY = DESCRIPTOR.message_types_by_name['FormatGlobalMemoryInfoReply']
55
+ _RELEASEUNUSEDBUNDLESREQUEST = DESCRIPTOR.message_types_by_name['ReleaseUnusedBundlesRequest']
56
+ _RELEASEUNUSEDBUNDLESREPLY = DESCRIPTOR.message_types_by_name['ReleaseUnusedBundlesReply']
57
+ _GETSYSTEMCONFIGREQUEST = DESCRIPTOR.message_types_by_name['GetSystemConfigRequest']
58
+ _GETSYSTEMCONFIGREPLY = DESCRIPTOR.message_types_by_name['GetSystemConfigReply']
59
+ _GETOBJECTSINFOREQUEST = DESCRIPTOR.message_types_by_name['GetObjectsInfoRequest']
60
+ _GETOBJECTSINFOREPLY = DESCRIPTOR.message_types_by_name['GetObjectsInfoReply']
61
+ _GETRESOURCELOADREQUEST = DESCRIPTOR.message_types_by_name['GetResourceLoadRequest']
62
+ _GETRESOURCELOADREPLY = DESCRIPTOR.message_types_by_name['GetResourceLoadReply']
63
+ _NOTIFYGCSRESTARTREQUEST = DESCRIPTOR.message_types_by_name['NotifyGCSRestartRequest']
64
+ _NOTIFYGCSRESTARTREPLY = DESCRIPTOR.message_types_by_name['NotifyGCSRestartReply']
65
+ _GETTASKFAILURECAUSEREQUEST = DESCRIPTOR.message_types_by_name['GetTaskFailureCauseRequest']
66
+ _GETTASKFAILURECAUSEREPLY = DESCRIPTOR.message_types_by_name['GetTaskFailureCauseReply']
67
+ _DRAINRAYLETREQUEST = DESCRIPTOR.message_types_by_name['DrainRayletRequest']
68
+ _DRAINRAYLETREPLY = DESCRIPTOR.message_types_by_name['DrainRayletReply']
69
+ _REGISTERMUTABLEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['RegisterMutableObjectRequest']
70
+ _REGISTERMUTABLEOBJECTREPLY = DESCRIPTOR.message_types_by_name['RegisterMutableObjectReply']
71
+ _PUSHMUTABLEOBJECTREQUEST = DESCRIPTOR.message_types_by_name['PushMutableObjectRequest']
72
+ _PUSHMUTABLEOBJECTREPLY = DESCRIPTOR.message_types_by_name['PushMutableObjectReply']
73
+ _ISLOCALWORKERDEADREQUEST = DESCRIPTOR.message_types_by_name['IsLocalWorkerDeadRequest']
74
+ _ISLOCALWORKERDEADREPLY = DESCRIPTOR.message_types_by_name['IsLocalWorkerDeadReply']
75
+ _REQUESTWORKERLEASEREPLY_SCHEDULINGFAILURETYPE = _REQUESTWORKERLEASEREPLY.enum_types_by_name['SchedulingFailureType']
76
+ WorkerBacklogReport = _reflection.GeneratedProtocolMessageType('WorkerBacklogReport', (_message.Message,), {
77
+ 'DESCRIPTOR' : _WORKERBACKLOGREPORT,
78
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
79
+ # @@protoc_insertion_point(class_scope:ray.rpc.WorkerBacklogReport)
80
+ })
81
+ _sym_db.RegisterMessage(WorkerBacklogReport)
82
+
83
+ ReportWorkerBacklogRequest = _reflection.GeneratedProtocolMessageType('ReportWorkerBacklogRequest', (_message.Message,), {
84
+ 'DESCRIPTOR' : _REPORTWORKERBACKLOGREQUEST,
85
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
86
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReportWorkerBacklogRequest)
87
+ })
88
+ _sym_db.RegisterMessage(ReportWorkerBacklogRequest)
89
+
90
+ ReportWorkerBacklogReply = _reflection.GeneratedProtocolMessageType('ReportWorkerBacklogReply', (_message.Message,), {
91
+ 'DESCRIPTOR' : _REPORTWORKERBACKLOGREPLY,
92
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
93
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReportWorkerBacklogReply)
94
+ })
95
+ _sym_db.RegisterMessage(ReportWorkerBacklogReply)
96
+
97
+ RequestWorkerLeaseRequest = _reflection.GeneratedProtocolMessageType('RequestWorkerLeaseRequest', (_message.Message,), {
98
+ 'DESCRIPTOR' : _REQUESTWORKERLEASEREQUEST,
99
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
100
+ # @@protoc_insertion_point(class_scope:ray.rpc.RequestWorkerLeaseRequest)
101
+ })
102
+ _sym_db.RegisterMessage(RequestWorkerLeaseRequest)
103
+
104
+ RequestWorkerLeaseReply = _reflection.GeneratedProtocolMessageType('RequestWorkerLeaseReply', (_message.Message,), {
105
+ 'DESCRIPTOR' : _REQUESTWORKERLEASEREPLY,
106
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
107
+ # @@protoc_insertion_point(class_scope:ray.rpc.RequestWorkerLeaseReply)
108
+ })
109
+ _sym_db.RegisterMessage(RequestWorkerLeaseReply)
110
+
111
+ PrestartWorkersRequest = _reflection.GeneratedProtocolMessageType('PrestartWorkersRequest', (_message.Message,), {
112
+ 'DESCRIPTOR' : _PRESTARTWORKERSREQUEST,
113
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
114
+ # @@protoc_insertion_point(class_scope:ray.rpc.PrestartWorkersRequest)
115
+ })
116
+ _sym_db.RegisterMessage(PrestartWorkersRequest)
117
+
118
+ PrestartWorkersReply = _reflection.GeneratedProtocolMessageType('PrestartWorkersReply', (_message.Message,), {
119
+ 'DESCRIPTOR' : _PRESTARTWORKERSREPLY,
120
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
121
+ # @@protoc_insertion_point(class_scope:ray.rpc.PrestartWorkersReply)
122
+ })
123
+ _sym_db.RegisterMessage(PrestartWorkersReply)
124
+
125
+ PrepareBundleResourcesRequest = _reflection.GeneratedProtocolMessageType('PrepareBundleResourcesRequest', (_message.Message,), {
126
+ 'DESCRIPTOR' : _PREPAREBUNDLERESOURCESREQUEST,
127
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
128
+ # @@protoc_insertion_point(class_scope:ray.rpc.PrepareBundleResourcesRequest)
129
+ })
130
+ _sym_db.RegisterMessage(PrepareBundleResourcesRequest)
131
+
132
+ PrepareBundleResourcesReply = _reflection.GeneratedProtocolMessageType('PrepareBundleResourcesReply', (_message.Message,), {
133
+ 'DESCRIPTOR' : _PREPAREBUNDLERESOURCESREPLY,
134
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
135
+ # @@protoc_insertion_point(class_scope:ray.rpc.PrepareBundleResourcesReply)
136
+ })
137
+ _sym_db.RegisterMessage(PrepareBundleResourcesReply)
138
+
139
+ CommitBundleResourcesRequest = _reflection.GeneratedProtocolMessageType('CommitBundleResourcesRequest', (_message.Message,), {
140
+ 'DESCRIPTOR' : _COMMITBUNDLERESOURCESREQUEST,
141
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
142
+ # @@protoc_insertion_point(class_scope:ray.rpc.CommitBundleResourcesRequest)
143
+ })
144
+ _sym_db.RegisterMessage(CommitBundleResourcesRequest)
145
+
146
+ CommitBundleResourcesReply = _reflection.GeneratedProtocolMessageType('CommitBundleResourcesReply', (_message.Message,), {
147
+ 'DESCRIPTOR' : _COMMITBUNDLERESOURCESREPLY,
148
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
149
+ # @@protoc_insertion_point(class_scope:ray.rpc.CommitBundleResourcesReply)
150
+ })
151
+ _sym_db.RegisterMessage(CommitBundleResourcesReply)
152
+
153
+ CancelResourceReserveRequest = _reflection.GeneratedProtocolMessageType('CancelResourceReserveRequest', (_message.Message,), {
154
+ 'DESCRIPTOR' : _CANCELRESOURCERESERVEREQUEST,
155
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
156
+ # @@protoc_insertion_point(class_scope:ray.rpc.CancelResourceReserveRequest)
157
+ })
158
+ _sym_db.RegisterMessage(CancelResourceReserveRequest)
159
+
160
+ CancelResourceReserveReply = _reflection.GeneratedProtocolMessageType('CancelResourceReserveReply', (_message.Message,), {
161
+ 'DESCRIPTOR' : _CANCELRESOURCERESERVEREPLY,
162
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
163
+ # @@protoc_insertion_point(class_scope:ray.rpc.CancelResourceReserveReply)
164
+ })
165
+ _sym_db.RegisterMessage(CancelResourceReserveReply)
166
+
167
+ ReturnWorkerRequest = _reflection.GeneratedProtocolMessageType('ReturnWorkerRequest', (_message.Message,), {
168
+ 'DESCRIPTOR' : _RETURNWORKERREQUEST,
169
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
170
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReturnWorkerRequest)
171
+ })
172
+ _sym_db.RegisterMessage(ReturnWorkerRequest)
173
+
174
+ ReturnWorkerReply = _reflection.GeneratedProtocolMessageType('ReturnWorkerReply', (_message.Message,), {
175
+ 'DESCRIPTOR' : _RETURNWORKERREPLY,
176
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
177
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReturnWorkerReply)
178
+ })
179
+ _sym_db.RegisterMessage(ReturnWorkerReply)
180
+
181
+ ReleaseUnusedActorWorkersRequest = _reflection.GeneratedProtocolMessageType('ReleaseUnusedActorWorkersRequest', (_message.Message,), {
182
+ 'DESCRIPTOR' : _RELEASEUNUSEDACTORWORKERSREQUEST,
183
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
184
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReleaseUnusedActorWorkersRequest)
185
+ })
186
+ _sym_db.RegisterMessage(ReleaseUnusedActorWorkersRequest)
187
+
188
+ ReleaseUnusedActorWorkersReply = _reflection.GeneratedProtocolMessageType('ReleaseUnusedActorWorkersReply', (_message.Message,), {
189
+ 'DESCRIPTOR' : _RELEASEUNUSEDACTORWORKERSREPLY,
190
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
191
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReleaseUnusedActorWorkersReply)
192
+ })
193
+ _sym_db.RegisterMessage(ReleaseUnusedActorWorkersReply)
194
+
195
+ ShutdownRayletRequest = _reflection.GeneratedProtocolMessageType('ShutdownRayletRequest', (_message.Message,), {
196
+ 'DESCRIPTOR' : _SHUTDOWNRAYLETREQUEST,
197
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
198
+ # @@protoc_insertion_point(class_scope:ray.rpc.ShutdownRayletRequest)
199
+ })
200
+ _sym_db.RegisterMessage(ShutdownRayletRequest)
201
+
202
+ ShutdownRayletReply = _reflection.GeneratedProtocolMessageType('ShutdownRayletReply', (_message.Message,), {
203
+ 'DESCRIPTOR' : _SHUTDOWNRAYLETREPLY,
204
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
205
+ # @@protoc_insertion_point(class_scope:ray.rpc.ShutdownRayletReply)
206
+ })
207
+ _sym_db.RegisterMessage(ShutdownRayletReply)
208
+
209
+ CancelWorkerLeaseRequest = _reflection.GeneratedProtocolMessageType('CancelWorkerLeaseRequest', (_message.Message,), {
210
+ 'DESCRIPTOR' : _CANCELWORKERLEASEREQUEST,
211
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
212
+ # @@protoc_insertion_point(class_scope:ray.rpc.CancelWorkerLeaseRequest)
213
+ })
214
+ _sym_db.RegisterMessage(CancelWorkerLeaseRequest)
215
+
216
+ CancelWorkerLeaseReply = _reflection.GeneratedProtocolMessageType('CancelWorkerLeaseReply', (_message.Message,), {
217
+ 'DESCRIPTOR' : _CANCELWORKERLEASEREPLY,
218
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
219
+ # @@protoc_insertion_point(class_scope:ray.rpc.CancelWorkerLeaseReply)
220
+ })
221
+ _sym_db.RegisterMessage(CancelWorkerLeaseReply)
222
+
223
+ PinObjectIDsRequest = _reflection.GeneratedProtocolMessageType('PinObjectIDsRequest', (_message.Message,), {
224
+ 'DESCRIPTOR' : _PINOBJECTIDSREQUEST,
225
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
226
+ # @@protoc_insertion_point(class_scope:ray.rpc.PinObjectIDsRequest)
227
+ })
228
+ _sym_db.RegisterMessage(PinObjectIDsRequest)
229
+
230
+ PinObjectIDsReply = _reflection.GeneratedProtocolMessageType('PinObjectIDsReply', (_message.Message,), {
231
+ 'DESCRIPTOR' : _PINOBJECTIDSREPLY,
232
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
233
+ # @@protoc_insertion_point(class_scope:ray.rpc.PinObjectIDsReply)
234
+ })
235
+ _sym_db.RegisterMessage(PinObjectIDsReply)
236
+
237
+ GetNodeStatsRequest = _reflection.GeneratedProtocolMessageType('GetNodeStatsRequest', (_message.Message,), {
238
+ 'DESCRIPTOR' : _GETNODESTATSREQUEST,
239
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
240
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetNodeStatsRequest)
241
+ })
242
+ _sym_db.RegisterMessage(GetNodeStatsRequest)
243
+
244
+ ObjectStoreStats = _reflection.GeneratedProtocolMessageType('ObjectStoreStats', (_message.Message,), {
245
+ 'DESCRIPTOR' : _OBJECTSTORESTATS,
246
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
247
+ # @@protoc_insertion_point(class_scope:ray.rpc.ObjectStoreStats)
248
+ })
249
+ _sym_db.RegisterMessage(ObjectStoreStats)
250
+
251
+ GetNodeStatsReply = _reflection.GeneratedProtocolMessageType('GetNodeStatsReply', (_message.Message,), {
252
+ 'DESCRIPTOR' : _GETNODESTATSREPLY,
253
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
254
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetNodeStatsReply)
255
+ })
256
+ _sym_db.RegisterMessage(GetNodeStatsReply)
257
+
258
+ GlobalGCRequest = _reflection.GeneratedProtocolMessageType('GlobalGCRequest', (_message.Message,), {
259
+ 'DESCRIPTOR' : _GLOBALGCREQUEST,
260
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
261
+ # @@protoc_insertion_point(class_scope:ray.rpc.GlobalGCRequest)
262
+ })
263
+ _sym_db.RegisterMessage(GlobalGCRequest)
264
+
265
+ GlobalGCReply = _reflection.GeneratedProtocolMessageType('GlobalGCReply', (_message.Message,), {
266
+ 'DESCRIPTOR' : _GLOBALGCREPLY,
267
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
268
+ # @@protoc_insertion_point(class_scope:ray.rpc.GlobalGCReply)
269
+ })
270
+ _sym_db.RegisterMessage(GlobalGCReply)
271
+
272
+ FormatGlobalMemoryInfoRequest = _reflection.GeneratedProtocolMessageType('FormatGlobalMemoryInfoRequest', (_message.Message,), {
273
+ 'DESCRIPTOR' : _FORMATGLOBALMEMORYINFOREQUEST,
274
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
275
+ # @@protoc_insertion_point(class_scope:ray.rpc.FormatGlobalMemoryInfoRequest)
276
+ })
277
+ _sym_db.RegisterMessage(FormatGlobalMemoryInfoRequest)
278
+
279
+ FormatGlobalMemoryInfoReply = _reflection.GeneratedProtocolMessageType('FormatGlobalMemoryInfoReply', (_message.Message,), {
280
+ 'DESCRIPTOR' : _FORMATGLOBALMEMORYINFOREPLY,
281
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
282
+ # @@protoc_insertion_point(class_scope:ray.rpc.FormatGlobalMemoryInfoReply)
283
+ })
284
+ _sym_db.RegisterMessage(FormatGlobalMemoryInfoReply)
285
+
286
+ ReleaseUnusedBundlesRequest = _reflection.GeneratedProtocolMessageType('ReleaseUnusedBundlesRequest', (_message.Message,), {
287
+ 'DESCRIPTOR' : _RELEASEUNUSEDBUNDLESREQUEST,
288
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
289
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReleaseUnusedBundlesRequest)
290
+ })
291
+ _sym_db.RegisterMessage(ReleaseUnusedBundlesRequest)
292
+
293
+ ReleaseUnusedBundlesReply = _reflection.GeneratedProtocolMessageType('ReleaseUnusedBundlesReply', (_message.Message,), {
294
+ 'DESCRIPTOR' : _RELEASEUNUSEDBUNDLESREPLY,
295
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
296
+ # @@protoc_insertion_point(class_scope:ray.rpc.ReleaseUnusedBundlesReply)
297
+ })
298
+ _sym_db.RegisterMessage(ReleaseUnusedBundlesReply)
299
+
300
+ GetSystemConfigRequest = _reflection.GeneratedProtocolMessageType('GetSystemConfigRequest', (_message.Message,), {
301
+ 'DESCRIPTOR' : _GETSYSTEMCONFIGREQUEST,
302
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
303
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetSystemConfigRequest)
304
+ })
305
+ _sym_db.RegisterMessage(GetSystemConfigRequest)
306
+
307
+ GetSystemConfigReply = _reflection.GeneratedProtocolMessageType('GetSystemConfigReply', (_message.Message,), {
308
+ 'DESCRIPTOR' : _GETSYSTEMCONFIGREPLY,
309
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
310
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetSystemConfigReply)
311
+ })
312
+ _sym_db.RegisterMessage(GetSystemConfigReply)
313
+
314
+ GetObjectsInfoRequest = _reflection.GeneratedProtocolMessageType('GetObjectsInfoRequest', (_message.Message,), {
315
+ 'DESCRIPTOR' : _GETOBJECTSINFOREQUEST,
316
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
317
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetObjectsInfoRequest)
318
+ })
319
+ _sym_db.RegisterMessage(GetObjectsInfoRequest)
320
+
321
+ GetObjectsInfoReply = _reflection.GeneratedProtocolMessageType('GetObjectsInfoReply', (_message.Message,), {
322
+ 'DESCRIPTOR' : _GETOBJECTSINFOREPLY,
323
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
324
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetObjectsInfoReply)
325
+ })
326
+ _sym_db.RegisterMessage(GetObjectsInfoReply)
327
+
328
+ GetResourceLoadRequest = _reflection.GeneratedProtocolMessageType('GetResourceLoadRequest', (_message.Message,), {
329
+ 'DESCRIPTOR' : _GETRESOURCELOADREQUEST,
330
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
331
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetResourceLoadRequest)
332
+ })
333
+ _sym_db.RegisterMessage(GetResourceLoadRequest)
334
+
335
+ GetResourceLoadReply = _reflection.GeneratedProtocolMessageType('GetResourceLoadReply', (_message.Message,), {
336
+ 'DESCRIPTOR' : _GETRESOURCELOADREPLY,
337
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
338
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetResourceLoadReply)
339
+ })
340
+ _sym_db.RegisterMessage(GetResourceLoadReply)
341
+
342
+ NotifyGCSRestartRequest = _reflection.GeneratedProtocolMessageType('NotifyGCSRestartRequest', (_message.Message,), {
343
+ 'DESCRIPTOR' : _NOTIFYGCSRESTARTREQUEST,
344
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
345
+ # @@protoc_insertion_point(class_scope:ray.rpc.NotifyGCSRestartRequest)
346
+ })
347
+ _sym_db.RegisterMessage(NotifyGCSRestartRequest)
348
+
349
+ NotifyGCSRestartReply = _reflection.GeneratedProtocolMessageType('NotifyGCSRestartReply', (_message.Message,), {
350
+ 'DESCRIPTOR' : _NOTIFYGCSRESTARTREPLY,
351
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
352
+ # @@protoc_insertion_point(class_scope:ray.rpc.NotifyGCSRestartReply)
353
+ })
354
+ _sym_db.RegisterMessage(NotifyGCSRestartReply)
355
+
356
+ GetTaskFailureCauseRequest = _reflection.GeneratedProtocolMessageType('GetTaskFailureCauseRequest', (_message.Message,), {
357
+ 'DESCRIPTOR' : _GETTASKFAILURECAUSEREQUEST,
358
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
359
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetTaskFailureCauseRequest)
360
+ })
361
+ _sym_db.RegisterMessage(GetTaskFailureCauseRequest)
362
+
363
+ GetTaskFailureCauseReply = _reflection.GeneratedProtocolMessageType('GetTaskFailureCauseReply', (_message.Message,), {
364
+ 'DESCRIPTOR' : _GETTASKFAILURECAUSEREPLY,
365
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
366
+ # @@protoc_insertion_point(class_scope:ray.rpc.GetTaskFailureCauseReply)
367
+ })
368
+ _sym_db.RegisterMessage(GetTaskFailureCauseReply)
369
+
370
+ DrainRayletRequest = _reflection.GeneratedProtocolMessageType('DrainRayletRequest', (_message.Message,), {
371
+ 'DESCRIPTOR' : _DRAINRAYLETREQUEST,
372
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
373
+ # @@protoc_insertion_point(class_scope:ray.rpc.DrainRayletRequest)
374
+ })
375
+ _sym_db.RegisterMessage(DrainRayletRequest)
376
+
377
+ DrainRayletReply = _reflection.GeneratedProtocolMessageType('DrainRayletReply', (_message.Message,), {
378
+ 'DESCRIPTOR' : _DRAINRAYLETREPLY,
379
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
380
+ # @@protoc_insertion_point(class_scope:ray.rpc.DrainRayletReply)
381
+ })
382
+ _sym_db.RegisterMessage(DrainRayletReply)
383
+
384
+ RegisterMutableObjectRequest = _reflection.GeneratedProtocolMessageType('RegisterMutableObjectRequest', (_message.Message,), {
385
+ 'DESCRIPTOR' : _REGISTERMUTABLEOBJECTREQUEST,
386
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
387
+ # @@protoc_insertion_point(class_scope:ray.rpc.RegisterMutableObjectRequest)
388
+ })
389
+ _sym_db.RegisterMessage(RegisterMutableObjectRequest)
390
+
391
+ RegisterMutableObjectReply = _reflection.GeneratedProtocolMessageType('RegisterMutableObjectReply', (_message.Message,), {
392
+ 'DESCRIPTOR' : _REGISTERMUTABLEOBJECTREPLY,
393
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
394
+ # @@protoc_insertion_point(class_scope:ray.rpc.RegisterMutableObjectReply)
395
+ })
396
+ _sym_db.RegisterMessage(RegisterMutableObjectReply)
397
+
398
+ PushMutableObjectRequest = _reflection.GeneratedProtocolMessageType('PushMutableObjectRequest', (_message.Message,), {
399
+ 'DESCRIPTOR' : _PUSHMUTABLEOBJECTREQUEST,
400
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
401
+ # @@protoc_insertion_point(class_scope:ray.rpc.PushMutableObjectRequest)
402
+ })
403
+ _sym_db.RegisterMessage(PushMutableObjectRequest)
404
+
405
+ PushMutableObjectReply = _reflection.GeneratedProtocolMessageType('PushMutableObjectReply', (_message.Message,), {
406
+ 'DESCRIPTOR' : _PUSHMUTABLEOBJECTREPLY,
407
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
408
+ # @@protoc_insertion_point(class_scope:ray.rpc.PushMutableObjectReply)
409
+ })
410
+ _sym_db.RegisterMessage(PushMutableObjectReply)
411
+
412
+ IsLocalWorkerDeadRequest = _reflection.GeneratedProtocolMessageType('IsLocalWorkerDeadRequest', (_message.Message,), {
413
+ 'DESCRIPTOR' : _ISLOCALWORKERDEADREQUEST,
414
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
415
+ # @@protoc_insertion_point(class_scope:ray.rpc.IsLocalWorkerDeadRequest)
416
+ })
417
+ _sym_db.RegisterMessage(IsLocalWorkerDeadRequest)
418
+
419
+ IsLocalWorkerDeadReply = _reflection.GeneratedProtocolMessageType('IsLocalWorkerDeadReply', (_message.Message,), {
420
+ 'DESCRIPTOR' : _ISLOCALWORKERDEADREPLY,
421
+ '__module__' : 'src.ray.protobuf.node_manager_pb2'
422
+ # @@protoc_insertion_point(class_scope:ray.rpc.IsLocalWorkerDeadReply)
423
+ })
424
+ _sym_db.RegisterMessage(IsLocalWorkerDeadReply)
425
+
426
+ _NODEMANAGERSERVICE = DESCRIPTOR.services_by_name['NodeManagerService']
427
+ if _descriptor._USE_C_DESCRIPTORS == False:
428
+
429
+ DESCRIPTOR._options = None
430
+ _WORKERBACKLOGREPORT._serialized_start=185
431
+ _WORKERBACKLOGREPORT._serialized_end=297
432
+ _REPORTWORKERBACKLOGREQUEST._serialized_start=300
433
+ _REPORTWORKERBACKLOGREQUEST._serialized_end=428
434
+ _REPORTWORKERBACKLOGREPLY._serialized_start=430
435
+ _REPORTWORKERBACKLOGREPLY._serialized_end=456
436
+ _REQUESTWORKERLEASEREQUEST._serialized_start=459
437
+ _REQUESTWORKERLEASEREQUEST._serialized_end=683
438
+ _REQUESTWORKERLEASEREPLY._serialized_start=686
439
+ _REQUESTWORKERLEASEREPLY._serialized_end=1455
440
+ _REQUESTWORKERLEASEREPLY_SCHEDULINGFAILURETYPE._serialized_start=1217
441
+ _REQUESTWORKERLEASEREPLY_SCHEDULINGFAILURETYPE._serialized_end=1455
442
+ _PRESTARTWORKERSREQUEST._serialized_start=1458
443
+ _PRESTARTWORKERSREQUEST._serialized_end=1725
444
+ _PRESTARTWORKERSREPLY._serialized_start=1727
445
+ _PRESTARTWORKERSREPLY._serialized_end=1749
446
+ _PREPAREBUNDLERESOURCESREQUEST._serialized_start=1751
447
+ _PREPAREBUNDLERESOURCESREQUEST._serialized_end=1834
448
+ _PREPAREBUNDLERESOURCESREPLY._serialized_start=1836
449
+ _PREPAREBUNDLERESOURCESREPLY._serialized_end=1891
450
+ _COMMITBUNDLERESOURCESREQUEST._serialized_start=1893
451
+ _COMMITBUNDLERESOURCESREQUEST._serialized_end=1975
452
+ _COMMITBUNDLERESOURCESREPLY._serialized_start=1977
453
+ _COMMITBUNDLERESOURCESREPLY._serialized_end=2005
454
+ _CANCELRESOURCERESERVEREQUEST._serialized_start=2007
455
+ _CANCELRESOURCERESERVEREQUEST._serialized_end=2087
456
+ _CANCELRESOURCERESERVEREPLY._serialized_start=2089
457
+ _CANCELRESOURCERESERVEREPLY._serialized_end=2117
458
+ _RETURNWORKERREQUEST._serialized_start=2120
459
+ _RETURNWORKERREQUEST._serialized_end=2356
460
+ _RETURNWORKERREPLY._serialized_start=2358
461
+ _RETURNWORKERREPLY._serialized_end=2377
462
+ _RELEASEUNUSEDACTORWORKERSREQUEST._serialized_start=2379
463
+ _RELEASEUNUSEDACTORWORKERSREQUEST._serialized_end=2456
464
+ _RELEASEUNUSEDACTORWORKERSREPLY._serialized_start=2458
465
+ _RELEASEUNUSEDACTORWORKERSREPLY._serialized_end=2490
466
+ _SHUTDOWNRAYLETREQUEST._serialized_start=2492
467
+ _SHUTDOWNRAYLETREQUEST._serialized_end=2543
468
+ _SHUTDOWNRAYLETREPLY._serialized_start=2545
469
+ _SHUTDOWNRAYLETREPLY._serialized_end=2566
470
+ _CANCELWORKERLEASEREQUEST._serialized_start=2568
471
+ _CANCELWORKERLEASEREQUEST._serialized_end=2619
472
+ _CANCELWORKERLEASEREPLY._serialized_start=2621
473
+ _CANCELWORKERLEASEREPLY._serialized_end=2671
474
+ _PINOBJECTIDSREQUEST._serialized_start=2674
475
+ _PINOBJECTIDSREQUEST._serialized_end=2838
476
+ _PINOBJECTIDSREPLY._serialized_start=2840
477
+ _PINOBJECTIDSREPLY._serialized_end=2889
478
+ _GETNODESTATSREQUEST._serialized_start=2891
479
+ _GETNODESTATSREQUEST._serialized_end=2960
480
+ _OBJECTSTORESTATS._serialized_start=2963
481
+ _OBJECTSTORESTATS._serialized_end=3845
482
+ _GETNODESTATSREPLY._serialized_start=3848
483
+ _GETNODESTATSREPLY._serialized_end=4032
484
+ _GLOBALGCREQUEST._serialized_start=4034
485
+ _GLOBALGCREQUEST._serialized_end=4051
486
+ _GLOBALGCREPLY._serialized_start=4053
487
+ _GLOBALGCREPLY._serialized_end=4068
488
+ _FORMATGLOBALMEMORYINFOREQUEST._serialized_start=4070
489
+ _FORMATGLOBALMEMORYINFOREQUEST._serialized_end=4149
490
+ _FORMATGLOBALMEMORYINFOREPLY._serialized_start=4152
491
+ _FORMATGLOBALMEMORYINFOREPLY._serialized_end=4280
492
+ _RELEASEUNUSEDBUNDLESREQUEST._serialized_start=4282
493
+ _RELEASEUNUSEDBUNDLESREQUEST._serialized_end=4366
494
+ _RELEASEUNUSEDBUNDLESREPLY._serialized_start=4368
495
+ _RELEASEUNUSEDBUNDLESREPLY._serialized_end=4395
496
+ _GETSYSTEMCONFIGREQUEST._serialized_start=4397
497
+ _GETSYSTEMCONFIGREQUEST._serialized_end=4421
498
+ _GETSYSTEMCONFIGREPLY._serialized_start=4423
499
+ _GETSYSTEMCONFIGREPLY._serialized_end=4482
500
+ _GETOBJECTSINFOREQUEST._serialized_start=4484
501
+ _GETOBJECTSINFOREQUEST._serialized_end=4544
502
+ _GETOBJECTSINFOREPLY._serialized_start=4546
503
+ _GETOBJECTSINFOREPLY._serialized_end=4661
504
+ _GETRESOURCELOADREQUEST._serialized_start=4663
505
+ _GETRESOURCELOADREQUEST._serialized_end=4687
506
+ _GETRESOURCELOADREPLY._serialized_start=4689
507
+ _GETRESOURCELOADREPLY._serialized_end=4765
508
+ _NOTIFYGCSRESTARTREQUEST._serialized_start=4767
509
+ _NOTIFYGCSRESTARTREQUEST._serialized_end=4792
510
+ _NOTIFYGCSRESTARTREPLY._serialized_start=4794
511
+ _NOTIFYGCSRESTARTREPLY._serialized_end=4817
512
+ _GETTASKFAILURECAUSEREQUEST._serialized_start=4819
513
+ _GETTASKFAILURECAUSEREQUEST._serialized_end=4872
514
+ _GETTASKFAILURECAUSEREPLY._serialized_start=4875
515
+ _GETTASKFAILURECAUSEREPLY._serialized_end=5036
516
+ _DRAINRAYLETREQUEST._serialized_start=5039
517
+ _DRAINRAYLETREQUEST._serialized_end=5211
518
+ _DRAINRAYLETREPLY._serialized_start=5213
519
+ _DRAINRAYLETREPLY._serialized_end=5322
520
+ _REGISTERMUTABLEOBJECTREQUEST._serialized_start=5325
521
+ _REGISTERMUTABLEOBJECTREQUEST._serialized_end=5472
522
+ _REGISTERMUTABLEOBJECTREPLY._serialized_start=5474
523
+ _REGISTERMUTABLEOBJECTREPLY._serialized_end=5502
524
+ _PUSHMUTABLEOBJECTREQUEST._serialized_start=5505
525
+ _PUSHMUTABLEOBJECTREQUEST._serialized_end=5742
526
+ _PUSHMUTABLEOBJECTREPLY._serialized_start=5744
527
+ _PUSHMUTABLEOBJECTREPLY._serialized_end=5788
528
+ _ISLOCALWORKERDEADREQUEST._serialized_start=5790
529
+ _ISLOCALWORKERDEADREQUEST._serialized_end=5845
530
+ _ISLOCALWORKERDEADREPLY._serialized_start=5847
531
+ _ISLOCALWORKERDEADREPLY._serialized_end=5896
532
+ _NODEMANAGERSERVICE._serialized_start=5899
533
+ _NODEMANAGERSERVICE._serialized_end=8040
534
+ # @@protoc_insertion_point(module_scope)
.venv/lib/python3.11/site-packages/ray/core/generated/resource_pb2_grpc.py ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/README ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ This is a self-contained release of https://github.com/jlfwong/speedscope.
2
+ To use it, open index.html in Chrome or Firefox.
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/favicon-16x16.361d2b26.png ADDED
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/file-format-schema.json ADDED
@@ -0,0 +1,324 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "definitions": {
4
+ "FileFormat.Profile": {
5
+ "anyOf": [
6
+ {
7
+ "$ref": "#/definitions/FileFormat.EventedProfile"
8
+ },
9
+ {
10
+ "$ref": "#/definitions/FileFormat.SampledProfile"
11
+ }
12
+ ]
13
+ },
14
+ "FileFormat.File": {
15
+ "title": "FileFormat.File",
16
+ "type": "object",
17
+ "properties": {
18
+ "$schema": {
19
+ "type": "string",
20
+ "enum": [
21
+ "https://www.speedscope.app/file-format-schema.json"
22
+ ],
23
+ "title": "$schema"
24
+ },
25
+ "shared": {
26
+ "type": "object",
27
+ "properties": {
28
+ "frames": {
29
+ "type": "array",
30
+ "items": {
31
+ "$ref": "#/definitions/FileFormat.Frame"
32
+ },
33
+ "title": "frames"
34
+ }
35
+ },
36
+ "required": [
37
+ "frames"
38
+ ],
39
+ "title": "shared"
40
+ },
41
+ "profiles": {
42
+ "type": "array",
43
+ "items": {
44
+ "anyOf": [
45
+ {
46
+ "$ref": "#/definitions/FileFormat.EventedProfile"
47
+ },
48
+ {
49
+ "$ref": "#/definitions/FileFormat.SampledProfile"
50
+ }
51
+ ]
52
+ },
53
+ "title": "profiles"
54
+ },
55
+ "name": {
56
+ "type": "string",
57
+ "title": "name"
58
+ },
59
+ "activeProfileIndex": {
60
+ "type": "number",
61
+ "title": "activeProfileIndex"
62
+ },
63
+ "exporter": {
64
+ "type": "string",
65
+ "title": "exporter"
66
+ }
67
+ },
68
+ "required": [
69
+ "$schema",
70
+ "profiles",
71
+ "shared"
72
+ ]
73
+ },
74
+ "FileFormat.Frame": {
75
+ "title": "FileFormat.Frame",
76
+ "type": "object",
77
+ "properties": {
78
+ "name": {
79
+ "type": "string",
80
+ "title": "name"
81
+ },
82
+ "file": {
83
+ "type": "string",
84
+ "title": "file"
85
+ },
86
+ "line": {
87
+ "type": "number",
88
+ "title": "line"
89
+ },
90
+ "col": {
91
+ "type": "number",
92
+ "title": "col"
93
+ }
94
+ },
95
+ "required": [
96
+ "name"
97
+ ]
98
+ },
99
+ "FileFormat.ProfileType": {
100
+ "title": "FileFormat.ProfileType",
101
+ "enum": [
102
+ "evented",
103
+ "sampled"
104
+ ],
105
+ "type": "string"
106
+ },
107
+ "FileFormat.IProfile": {
108
+ "title": "FileFormat.IProfile",
109
+ "type": "object",
110
+ "properties": {
111
+ "type": {
112
+ "$ref": "#/definitions/FileFormat.ProfileType",
113
+ "title": "type"
114
+ }
115
+ },
116
+ "required": [
117
+ "type"
118
+ ]
119
+ },
120
+ "FileFormat.EventedProfile": {
121
+ "title": "FileFormat.EventedProfile",
122
+ "type": "object",
123
+ "properties": {
124
+ "type": {
125
+ "type": "string",
126
+ "enum": [
127
+ "evented"
128
+ ],
129
+ "title": "type"
130
+ },
131
+ "name": {
132
+ "type": "string",
133
+ "title": "name"
134
+ },
135
+ "unit": {
136
+ "$ref": "#/definitions/FileFormat.ValueUnit",
137
+ "title": "unit"
138
+ },
139
+ "startValue": {
140
+ "type": "number",
141
+ "title": "startValue"
142
+ },
143
+ "endValue": {
144
+ "type": "number",
145
+ "title": "endValue"
146
+ },
147
+ "events": {
148
+ "type": "array",
149
+ "items": {
150
+ "anyOf": [
151
+ {
152
+ "$ref": "#/definitions/OpenFrameEvent"
153
+ },
154
+ {
155
+ "$ref": "#/definitions/CloseFrameEvent"
156
+ }
157
+ ]
158
+ },
159
+ "title": "events"
160
+ }
161
+ },
162
+ "required": [
163
+ "endValue",
164
+ "events",
165
+ "name",
166
+ "startValue",
167
+ "type",
168
+ "unit"
169
+ ]
170
+ },
171
+ "SampledStack": {
172
+ "type": "array",
173
+ "items": {
174
+ "type": "number"
175
+ }
176
+ },
177
+ "FileFormat.SampledProfile": {
178
+ "title": "FileFormat.SampledProfile",
179
+ "type": "object",
180
+ "properties": {
181
+ "type": {
182
+ "type": "string",
183
+ "enum": [
184
+ "sampled"
185
+ ],
186
+ "title": "type"
187
+ },
188
+ "name": {
189
+ "type": "string",
190
+ "title": "name"
191
+ },
192
+ "unit": {
193
+ "$ref": "#/definitions/FileFormat.ValueUnit",
194
+ "title": "unit"
195
+ },
196
+ "startValue": {
197
+ "type": "number",
198
+ "title": "startValue"
199
+ },
200
+ "endValue": {
201
+ "type": "number",
202
+ "title": "endValue"
203
+ },
204
+ "samples": {
205
+ "type": "array",
206
+ "items": {
207
+ "type": "array",
208
+ "items": {
209
+ "type": "number"
210
+ }
211
+ },
212
+ "title": "samples"
213
+ },
214
+ "weights": {
215
+ "type": "array",
216
+ "items": {
217
+ "type": "number"
218
+ },
219
+ "title": "weights"
220
+ }
221
+ },
222
+ "required": [
223
+ "endValue",
224
+ "name",
225
+ "samples",
226
+ "startValue",
227
+ "type",
228
+ "unit",
229
+ "weights"
230
+ ]
231
+ },
232
+ "FileFormat.ValueUnit": {
233
+ "title": "FileFormat.ValueUnit",
234
+ "enum": [
235
+ "bytes",
236
+ "microseconds",
237
+ "milliseconds",
238
+ "nanoseconds",
239
+ "none",
240
+ "seconds"
241
+ ],
242
+ "type": "string"
243
+ },
244
+ "FileFormat.EventType": {
245
+ "title": "FileFormat.EventType",
246
+ "enum": [
247
+ "C",
248
+ "O"
249
+ ],
250
+ "type": "string"
251
+ },
252
+ "IEvent": {
253
+ "title": "IEvent",
254
+ "type": "object",
255
+ "properties": {
256
+ "type": {
257
+ "$ref": "#/definitions/FileFormat.EventType",
258
+ "title": "type"
259
+ },
260
+ "at": {
261
+ "type": "number",
262
+ "title": "at"
263
+ }
264
+ },
265
+ "required": [
266
+ "at",
267
+ "type"
268
+ ]
269
+ },
270
+ "OpenFrameEvent": {
271
+ "title": "OpenFrameEvent",
272
+ "type": "object",
273
+ "properties": {
274
+ "type": {
275
+ "type": "string",
276
+ "enum": [
277
+ "O"
278
+ ],
279
+ "title": "type"
280
+ },
281
+ "frame": {
282
+ "type": "number",
283
+ "title": "frame"
284
+ },
285
+ "at": {
286
+ "type": "number",
287
+ "title": "at"
288
+ }
289
+ },
290
+ "required": [
291
+ "at",
292
+ "frame",
293
+ "type"
294
+ ]
295
+ },
296
+ "CloseFrameEvent": {
297
+ "title": "CloseFrameEvent",
298
+ "type": "object",
299
+ "properties": {
300
+ "type": {
301
+ "type": "string",
302
+ "enum": [
303
+ "C"
304
+ ],
305
+ "title": "type"
306
+ },
307
+ "frame": {
308
+ "type": "number",
309
+ "title": "frame"
310
+ },
311
+ "at": {
312
+ "type": "number",
313
+ "title": "at"
314
+ }
315
+ },
316
+ "required": [
317
+ "at",
318
+ "frame",
319
+ "type"
320
+ ]
321
+ }
322
+ },
323
+ "$ref": "#/definitions/FileFormat.File"
324
+ }
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/import.a03c2bef.js ADDED
The diff for this file is too large to render. See raw diff
 
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/index.html ADDED
@@ -0,0 +1 @@
 
 
1
+ <!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>speedscope</title> <link href="https://fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet"> <script></script> <link rel="stylesheet" href="reset.7ae984ff.css"> <link rel="icon" type="image/png" sizes="32x32" href="favicon-32x32.1165a94e.png"> <link rel="icon" type="image/png" sizes="16x16" href="favicon-16x16.361d2b26.png"> </head> <body> <script src="speedscope.75eb7d8e.js"></script> </body> </html>
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/perf-vertx-stacks-01-collapsed-all.3e0a632c.txt ADDED
The diff for this file is too large to render. See raw diff
 
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/speedscope-1.5.3/reset.7ae984ff.css ADDED
@@ -0,0 +1 @@
 
 
1
+ a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}html{overflow:hidden}body,html{height:100%}body{overflow:auto}
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/css/main.388a904b.css ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ @font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:100;src:local("Roboto Thin "),local("Roboto-Thin"),url(../../static/media/roboto-latin-100.c2aa4ab115bf9c6057cb.woff2) format("woff2"),url(../../static/media/roboto-latin-100.a45108d3b34af91f9113.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:100;src:local("Roboto Thin italic"),local("Roboto-Thinitalic"),url(../../static/media/roboto-latin-100italic.7f839a8652da29745ce4.woff2) format("woff2"),url(../../static/media/roboto-latin-100italic.451d4e559d6f57cdf6a1.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:300;src:local("Roboto Light "),local("Roboto-Light"),url(../../static/media/roboto-latin-300.37a7069dc30fc663c878.woff2) format("woff2"),url(../../static/media/roboto-latin-300.865f928cbabcc9f8f2b5.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:300;src:local("Roboto Light italic"),local("Roboto-Lightitalic"),url(../../static/media/roboto-latin-300italic.c64e7e354c88e613c77c.woff2) format("woff2"),url(../../static/media/roboto-latin-300italic.bd5b7a13f2c52b531a2a.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:local("Roboto Regular "),local("Roboto-Regular"),url(../../static/media/roboto-latin-400.176f8f5bd5f02b3abfcf.woff2) format("woff2"),url(../../static/media/roboto-latin-400.49ae34d4cc6b98c00c69.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:400;src:local("Roboto Regular italic"),local("Roboto-Regularitalic"),url(../../static/media/roboto-latin-400italic.d022bc70dc1bf7b3425d.woff2) format("woff2"),url(../../static/media/roboto-latin-400italic.b1d9d9904bfca8802a63.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:local("Roboto Medium "),local("Roboto-Medium"),url(../../static/media/roboto-latin-500.f5b74d7ffcdf85b9dd60.woff2) format("woff2"),url(../../static/media/roboto-latin-500.cea99d3e3e13a3a599a0.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:500;src:local("Roboto Medium italic"),local("Roboto-Mediumitalic"),url(../../static/media/roboto-latin-500italic.0d8bb5b3ee5f5dac9e44.woff2) format("woff2"),url(../../static/media/roboto-latin-500italic.18d00f739ff1e1c52db1.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:local("Roboto Bold "),local("Roboto-Bold"),url(../../static/media/roboto-latin-700.c18ee39fb002ad58b6dc.woff2) format("woff2"),url(../../static/media/roboto-latin-700.2267169ee7270a22a963.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:700;src:local("Roboto Bold italic"),local("Roboto-Bolditalic"),url(../../static/media/roboto-latin-700italic.7d8125ff7f707231fd89.woff2) format("woff2"),url(../../static/media/roboto-latin-700italic.9360531f9bb817f917f0.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:900;src:local("Roboto Black "),local("Roboto-Black"),url(../../static/media/roboto-latin-900.870c8c1486f76054301a.woff2) format("woff2"),url(../../static/media/roboto-latin-900.bac8362e7a6ea60b6983.woff) format("woff")}@font-face{font-display:swap;font-family:Roboto;font-style:italic;font-weight:900;src:local("Roboto Black italic"),local("Roboto-Blackitalic"),url(../../static/media/roboto-latin-900italic.cb5ad999740e9d8a8bd1.woff2) format("woff2"),url(../../static/media/roboto-latin-900italic.c20d916c1a1b094c1cec.woff) format("woff")}.hljs-dark{color:#f8f8f2;display:block;overflow-x:auto;padding:.5em}.hljs-dark .hljs-keyword,.hljs-dark .hljs-link,.hljs-dark .hljs-literal,.hljs-dark .hljs-number,.hljs-dark .hljs-section,.hljs-dark .hljs-selector-tag{color:#8be9fd}.hljs-dark .hljs-function .hljs-keyword{color:#ff79c6}.hljs-dark .hljs-addition,.hljs-dark .hljs-attribute,.hljs-dark .hljs-bullet,.hljs-dark .hljs-name,.hljs-dark .hljs-string,.hljs-dark .hljs-symbol,.hljs-dark .hljs-template-tag,.hljs-dark .hljs-template-variable,.hljs-dark .hljs-title,.hljs-dark .hljs-type,.hljs-dark .hljs-variable{color:#f1fa8c}.hljs-dark .hljs-comment,.hljs-dark .hljs-deletion,.hljs-dark .hljs-meta,.hljs-dark .hljs-quote{color:#6272a4}.hljs-dark .hljs-doctag,.hljs-dark .hljs-keyword,.hljs-dark .hljs-literal,.hljs-dark .hljs-name,.hljs-dark .hljs-section,.hljs-dark .hljs-selector-tag,.hljs-dark .hljs-strong,.hljs-dark .hljs-title,.hljs-dark .hljs-type{font-weight:700}.hljs-dark .hljs-emphasis{font-style:italic}.hljs-light{color:#333;display:block;overflow-x:auto;padding:.5em}.hljs-light .hljs-comment,.hljs-light .hljs-quote{color:#998;font-style:italic}.hljs-light .hljs-keyword,.hljs-light .hljs-selector-tag,.hljs-light .hljs-subst{color:#333;font-weight:700}.hljs-light .hljs-literal,.hljs-light .hljs-number,.hljs-light .hljs-tag .hljs-attr,.hljs-light .hljs-template-variable,.hljs-light .hljs-variable{color:teal}.hljs-light .hljs-doctag,.hljs-light .hljs-string{color:#d14}.hljs-light .hljs-section,.hljs-light .hljs-selector-id,.hljs-light .hljs-title{color:#900;font-weight:700}.hljs-light .hljs-subst{font-weight:400}.hljs-light .hljs-class .hljs-title,.hljs-light .hljs-type{color:#458;font-weight:700}.hljs-light .hljs-attribute,.hljs-light .hljs-name,.hljs-light .hljs-tag{color:navy;font-weight:400}.hljs-light .hljs-link,.hljs-light .hljs-regexp{color:#009926}.hljs-light .hljs-bullet,.hljs-light .hljs-symbol{color:#990073}.hljs-light .hljs-built_in,.hljs-light .hljs-builtin-name{color:#0086b3}.hljs-light .hljs-meta{color:#999;font-weight:700}.hljs-light .hljs-deletion{background:#fdd}.hljs-light .hljs-addition{background:#dfd}.hljs-light .hljs-emphasis{font-style:italic}.hljs-light .hljs-strong{font-weight:700}span.find-kws{background-color:#ffd800}
2
+ /*# sourceMappingURL=main.388a904b.css.map*/
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/js/main.378317da.js ADDED
The diff for this file is too large to render. See raw diff
 
.venv/lib/python3.11/site-packages/ray/dashboard/client/build/static/js/main.378317da.js.map ADDED
The diff for this file is too large to render. See raw diff
 
.venv/lib/python3.11/site-packages/ray/experimental/__init__.py ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ from ray.experimental.dynamic_resources import set_resource
2
+ from ray.experimental.locations import get_local_object_locations, get_object_locations
3
+ from ray.experimental.packaging.load_package import load_package
4
+
5
+ __all__ = [
6
+ "get_object_locations",
7
+ "get_local_object_locations",
8
+ "set_resource",
9
+ "load_package",
10
+ ]
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/__init__.cpython-311.pyc ADDED
Binary file (550 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/compiled_dag_ref.cpython-311.pyc ADDED
Binary file (10.5 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/dynamic_resources.cpython-311.pyc ADDED
Binary file (652 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/gradio_utils.cpython-311.pyc ADDED
Binary file (776 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/internal_kv.cpython-311.pyc ADDED
Binary file (5.93 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/locations.cpython-311.pyc ADDED
Binary file (3.62 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/queue.cpython-311.pyc ADDED
Binary file (584 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/shuffle.cpython-311.pyc ADDED
Binary file (19 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/tf_utils.cpython-311.pyc ADDED
Binary file (14.5 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/__pycache__/tqdm_ray.cpython-311.pyc ADDED
Binary file (22.6 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/array/__init__.py ADDED
File without changes
.venv/lib/python3.11/site-packages/ray/experimental/array/distributed/__init__.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from . import linalg, random
2
+ from .core import (
3
+ BLOCK_SIZE,
4
+ DistArray,
5
+ add,
6
+ assemble,
7
+ blockwise_dot,
8
+ copy,
9
+ dot,
10
+ eye,
11
+ numpy_to_dist,
12
+ ones,
13
+ subblocks,
14
+ subtract,
15
+ transpose,
16
+ tril,
17
+ triu,
18
+ zeros,
19
+ )
20
+
21
+ __all__ = [
22
+ "random",
23
+ "linalg",
24
+ "BLOCK_SIZE",
25
+ "DistArray",
26
+ "assemble",
27
+ "zeros",
28
+ "ones",
29
+ "copy",
30
+ "eye",
31
+ "triu",
32
+ "tril",
33
+ "blockwise_dot",
34
+ "dot",
35
+ "transpose",
36
+ "add",
37
+ "subtract",
38
+ "numpy_to_dist",
39
+ "subblocks",
40
+ ]
.venv/lib/python3.11/site-packages/ray/experimental/array/distributed/__pycache__/core.cpython-311.pyc ADDED
Binary file (19.7 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/array/distributed/core.py ADDED
@@ -0,0 +1,316 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+
3
+ import ray
4
+ import ray.experimental.array.remote as ra
5
+
6
+ BLOCK_SIZE = 10
7
+
8
+
9
+ class DistArray:
10
+ def __init__(self, shape, object_refs=None):
11
+ self.shape = shape
12
+ self.ndim = len(shape)
13
+ self.num_blocks = [int(np.ceil(1.0 * a / BLOCK_SIZE)) for a in self.shape]
14
+ if object_refs is not None:
15
+ self.object_refs = object_refs
16
+ else:
17
+ self.object_refs = np.empty(self.num_blocks, dtype=object)
18
+ if self.num_blocks != list(self.object_refs.shape):
19
+ raise Exception(
20
+ "The fields `num_blocks` and `object_refs` are "
21
+ "inconsistent, `num_blocks` is {} and `object_refs` "
22
+ "has shape {}".format(self.num_blocks, list(self.object_refs.shape))
23
+ )
24
+
25
+ @staticmethod
26
+ def compute_block_lower(index, shape):
27
+ if len(index) != len(shape):
28
+ raise Exception(
29
+ "The fields `index` and `shape` must have the "
30
+ "same length, but `index` is {} and `shape` is "
31
+ "{}.".format(index, shape)
32
+ )
33
+ return [elem * BLOCK_SIZE for elem in index]
34
+
35
+ @staticmethod
36
+ def compute_block_upper(index, shape):
37
+ if len(index) != len(shape):
38
+ raise Exception(
39
+ "The fields `index` and `shape` must have the "
40
+ "same length, but `index` is {} and `shape` is "
41
+ "{}.".format(index, shape)
42
+ )
43
+ upper = []
44
+ for i in range(len(shape)):
45
+ upper.append(min((index[i] + 1) * BLOCK_SIZE, shape[i]))
46
+ return upper
47
+
48
+ @staticmethod
49
+ def compute_block_shape(index, shape):
50
+ lower = DistArray.compute_block_lower(index, shape)
51
+ upper = DistArray.compute_block_upper(index, shape)
52
+ return [u - l for (l, u) in zip(lower, upper)]
53
+
54
+ @staticmethod
55
+ def compute_num_blocks(shape):
56
+ return [int(np.ceil(1.0 * a / BLOCK_SIZE)) for a in shape]
57
+
58
+ def assemble(self):
59
+ """Assemble an array from a distributed array of object refs."""
60
+ first_block = ray.get(self.object_refs[(0,) * self.ndim])
61
+ dtype = first_block.dtype
62
+ result = np.zeros(self.shape, dtype=dtype)
63
+ for index in np.ndindex(*self.num_blocks):
64
+ lower = DistArray.compute_block_lower(index, self.shape)
65
+ upper = DistArray.compute_block_upper(index, self.shape)
66
+ value = ray.get(self.object_refs[index])
67
+ result[tuple(slice(l, u) for (l, u) in zip(lower, upper))] = value
68
+ return result
69
+
70
+ def __getitem__(self, sliced):
71
+ # TODO(rkn): Fix this, this is just a placeholder that should work but
72
+ # is inefficient.
73
+ a = self.assemble()
74
+ return a[sliced]
75
+
76
+
77
+ @ray.remote
78
+ def assemble(a):
79
+ return a.assemble()
80
+
81
+
82
+ # TODO(rkn): What should we call this method?
83
+ @ray.remote
84
+ def numpy_to_dist(a):
85
+ result = DistArray(a.shape)
86
+ for index in np.ndindex(*result.num_blocks):
87
+ lower = DistArray.compute_block_lower(index, a.shape)
88
+ upper = DistArray.compute_block_upper(index, a.shape)
89
+ idx = tuple(slice(l, u) for (l, u) in zip(lower, upper))
90
+ result.object_refs[index] = ray.put(a[idx])
91
+ return result
92
+
93
+
94
+ @ray.remote
95
+ def zeros(shape, dtype_name="float"):
96
+ result = DistArray(shape)
97
+ for index in np.ndindex(*result.num_blocks):
98
+ result.object_refs[index] = ra.zeros.remote(
99
+ DistArray.compute_block_shape(index, shape), dtype_name=dtype_name
100
+ )
101
+ return result
102
+
103
+
104
+ @ray.remote
105
+ def ones(shape, dtype_name="float"):
106
+ result = DistArray(shape)
107
+ for index in np.ndindex(*result.num_blocks):
108
+ result.object_refs[index] = ra.ones.remote(
109
+ DistArray.compute_block_shape(index, shape), dtype_name=dtype_name
110
+ )
111
+ return result
112
+
113
+
114
+ @ray.remote
115
+ def copy(a):
116
+ result = DistArray(a.shape)
117
+ for index in np.ndindex(*result.num_blocks):
118
+ # We don't need to actually copy the objects because remote objects are
119
+ # immutable.
120
+ result.object_refs[index] = a.object_refs[index]
121
+ return result
122
+
123
+
124
+ @ray.remote
125
+ def eye(dim1, dim2=-1, dtype_name="float"):
126
+ dim2 = dim1 if dim2 == -1 else dim2
127
+ shape = [dim1, dim2]
128
+ result = DistArray(shape)
129
+ for (i, j) in np.ndindex(*result.num_blocks):
130
+ block_shape = DistArray.compute_block_shape([i, j], shape)
131
+ if i == j:
132
+ result.object_refs[i, j] = ra.eye.remote(
133
+ block_shape[0], block_shape[1], dtype_name=dtype_name
134
+ )
135
+ else:
136
+ result.object_refs[i, j] = ra.zeros.remote(
137
+ block_shape, dtype_name=dtype_name
138
+ )
139
+ return result
140
+
141
+
142
+ @ray.remote
143
+ def triu(a):
144
+ if a.ndim != 2:
145
+ raise Exception(
146
+ "Input must have 2 dimensions, but a.ndim is {}.".format(a.ndim)
147
+ )
148
+ result = DistArray(a.shape)
149
+ for (i, j) in np.ndindex(*result.num_blocks):
150
+ if i < j:
151
+ result.object_refs[i, j] = ra.copy.remote(a.object_refs[i, j])
152
+ elif i == j:
153
+ result.object_refs[i, j] = ra.triu.remote(a.object_refs[i, j])
154
+ else:
155
+ result.object_refs[i, j] = ra.zeros_like.remote(a.object_refs[i, j])
156
+ return result
157
+
158
+
159
+ @ray.remote
160
+ def tril(a):
161
+ if a.ndim != 2:
162
+ raise Exception(
163
+ "Input must have 2 dimensions, but a.ndim is {}.".format(a.ndim)
164
+ )
165
+ result = DistArray(a.shape)
166
+ for (i, j) in np.ndindex(*result.num_blocks):
167
+ if i > j:
168
+ result.object_refs[i, j] = ra.copy.remote(a.object_refs[i, j])
169
+ elif i == j:
170
+ result.object_refs[i, j] = ra.tril.remote(a.object_refs[i, j])
171
+ else:
172
+ result.object_refs[i, j] = ra.zeros_like.remote(a.object_refs[i, j])
173
+ return result
174
+
175
+
176
+ @ray.remote
177
+ def blockwise_dot(*matrices):
178
+ n = len(matrices)
179
+ if n % 2 != 0:
180
+ raise Exception(
181
+ "blockwise_dot expects an even number of arguments, "
182
+ "but len(matrices) is {}.".format(n)
183
+ )
184
+ shape = (matrices[0].shape[0], matrices[n // 2].shape[1])
185
+ result = np.zeros(shape)
186
+ for i in range(n // 2):
187
+ result += np.dot(matrices[i], matrices[n // 2 + i])
188
+ return result
189
+
190
+
191
+ @ray.remote
192
+ def dot(a, b):
193
+ if a.ndim != 2:
194
+ raise Exception(
195
+ "dot expects its arguments to be 2-dimensional, but "
196
+ "a.ndim = {}.".format(a.ndim)
197
+ )
198
+ if b.ndim != 2:
199
+ raise Exception(
200
+ "dot expects its arguments to be 2-dimensional, but "
201
+ "b.ndim = {}.".format(b.ndim)
202
+ )
203
+ if a.shape[1] != b.shape[0]:
204
+ raise Exception(
205
+ "dot expects a.shape[1] to equal b.shape[0], but "
206
+ "a.shape = {} and b.shape = {}.".format(a.shape, b.shape)
207
+ )
208
+ shape = [a.shape[0], b.shape[1]]
209
+ result = DistArray(shape)
210
+ for (i, j) in np.ndindex(*result.num_blocks):
211
+ args = list(a.object_refs[i, :]) + list(b.object_refs[:, j])
212
+ result.object_refs[i, j] = blockwise_dot.remote(*args)
213
+ return result
214
+
215
+
216
+ @ray.remote
217
+ def subblocks(a, *ranges):
218
+ """
219
+ This function produces a distributed array from a subset of the blocks in
220
+ the `a`. The result and `a` will have the same number of dimensions. For
221
+ example,
222
+ subblocks(a, [0, 1], [2, 4])
223
+ will produce a DistArray whose object_refs are
224
+ [[a.object_refs[0, 2], a.object_refs[0, 4]],
225
+ [a.object_refs[1, 2], a.object_refs[1, 4]]]
226
+ We allow the user to pass in an empty list [] to indicate the full range.
227
+ """
228
+ ranges = list(ranges)
229
+ if len(ranges) != a.ndim:
230
+ raise Exception(
231
+ "sub_blocks expects to receive a number of ranges "
232
+ "equal to a.ndim, but it received {} ranges and "
233
+ "a.ndim = {}.".format(len(ranges), a.ndim)
234
+ )
235
+ for i in range(len(ranges)):
236
+ # We allow the user to pass in an empty list to indicate the full
237
+ # range.
238
+ if ranges[i] == []:
239
+ ranges[i] = range(a.num_blocks[i])
240
+ if not np.alltrue(ranges[i] == np.sort(ranges[i])):
241
+ raise Exception(
242
+ "Ranges passed to sub_blocks must be sorted, but "
243
+ "the {}th range is {}.".format(i, ranges[i])
244
+ )
245
+ if ranges[i][0] < 0:
246
+ raise Exception(
247
+ "Values in the ranges passed to sub_blocks must "
248
+ "be at least 0, but the {}th range is {}.".format(i, ranges[i])
249
+ )
250
+ if ranges[i][-1] >= a.num_blocks[i]:
251
+ raise Exception(
252
+ "Values in the ranges passed to sub_blocks must "
253
+ "be less than the relevant number of blocks, but "
254
+ "the {}th range is {}, and a.num_blocks = {}.".format(
255
+ i, ranges[i], a.num_blocks
256
+ )
257
+ )
258
+ last_index = [r[-1] for r in ranges]
259
+ last_block_shape = DistArray.compute_block_shape(last_index, a.shape)
260
+ shape = [
261
+ (len(ranges[i]) - 1) * BLOCK_SIZE + last_block_shape[i] for i in range(a.ndim)
262
+ ]
263
+ result = DistArray(shape)
264
+ for index in np.ndindex(*result.num_blocks):
265
+ result.object_refs[index] = a.object_refs[
266
+ tuple(ranges[i][index[i]] for i in range(a.ndim))
267
+ ]
268
+ return result
269
+
270
+
271
+ @ray.remote
272
+ def transpose(a):
273
+ if a.ndim != 2:
274
+ raise Exception(
275
+ "transpose expects its argument to be 2-dimensional, "
276
+ "but a.ndim = {}, a.shape = {}.".format(a.ndim, a.shape)
277
+ )
278
+ result = DistArray([a.shape[1], a.shape[0]])
279
+ for i in range(result.num_blocks[0]):
280
+ for j in range(result.num_blocks[1]):
281
+ result.object_refs[i, j] = ra.transpose.remote(a.object_refs[j, i])
282
+ return result
283
+
284
+
285
+ # TODO(rkn): support broadcasting?
286
+ @ray.remote
287
+ def add(x1, x2):
288
+ if x1.shape != x2.shape:
289
+ raise Exception(
290
+ "add expects arguments `x1` and `x2` to have the same "
291
+ "shape, but x1.shape = {}, and x2.shape = {}.".format(x1.shape, x2.shape)
292
+ )
293
+ result = DistArray(x1.shape)
294
+ for index in np.ndindex(*result.num_blocks):
295
+ result.object_refs[index] = ra.add.remote(
296
+ x1.object_refs[index], x2.object_refs[index]
297
+ )
298
+ return result
299
+
300
+
301
+ # TODO(rkn): support broadcasting?
302
+ @ray.remote
303
+ def subtract(x1, x2):
304
+ if x1.shape != x2.shape:
305
+ raise Exception(
306
+ "subtract expects arguments `x1` and `x2` to have the "
307
+ "same shape, but x1.shape = {}, and x2.shape = {}.".format(
308
+ x1.shape, x2.shape
309
+ )
310
+ )
311
+ result = DistArray(x1.shape)
312
+ for index in np.ndindex(*result.num_blocks):
313
+ result.object_refs[index] = ra.subtract.remote(
314
+ x1.object_refs[index], x2.object_refs[index]
315
+ )
316
+ return result
.venv/lib/python3.11/site-packages/ray/experimental/array/distributed/linalg.py ADDED
@@ -0,0 +1,231 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+
3
+ import ray
4
+ import ray.experimental.array.remote as ra
5
+ from . import core
6
+
7
+ __all__ = ["tsqr", "modified_lu", "tsqr_hr", "qr"]
8
+
9
+
10
+ @ray.remote(num_returns=2)
11
+ def tsqr(a):
12
+ """Perform a QR decomposition of a tall-skinny matrix.
13
+
14
+ Args:
15
+ a: A distributed matrix with shape MxN (suppose K = min(M, N)).
16
+
17
+ Returns:
18
+ A tuple of q (a DistArray) and r (a numpy array) satisfying the
19
+ following.
20
+ - If q_full = ray.get(DistArray, q).assemble(), then
21
+ q_full.shape == (M, K).
22
+ - np.allclose(np.dot(q_full.T, q_full), np.eye(K)) == True.
23
+ - If r_val = ray.get(np.ndarray, r), then r_val.shape == (K, N).
24
+ - np.allclose(r, np.triu(r)) == True.
25
+ """
26
+ if len(a.shape) != 2:
27
+ raise Exception(
28
+ "tsqr requires len(a.shape) == 2, but a.shape is {}".format(a.shape)
29
+ )
30
+ if a.num_blocks[1] != 1:
31
+ raise Exception(
32
+ "tsqr requires a.num_blocks[1] == 1, but a.num_blocks "
33
+ "is {}".format(a.num_blocks)
34
+ )
35
+
36
+ num_blocks = a.num_blocks[0]
37
+ K = int(np.ceil(np.log2(num_blocks))) + 1
38
+ q_tree = np.empty((num_blocks, K), dtype=object)
39
+ current_rs = []
40
+ for i in range(num_blocks):
41
+ block = a.object_refs[i, 0]
42
+ q, r = ra.linalg.qr.remote(block)
43
+ q_tree[i, 0] = q
44
+ current_rs.append(r)
45
+ for j in range(1, K):
46
+ new_rs = []
47
+ for i in range(int(np.ceil(1.0 * len(current_rs) / 2))):
48
+ stacked_rs = ra.vstack.remote(*current_rs[(2 * i) : (2 * i + 2)])
49
+ q, r = ra.linalg.qr.remote(stacked_rs)
50
+ q_tree[i, j] = q
51
+ new_rs.append(r)
52
+ current_rs = new_rs
53
+ assert len(current_rs) == 1, "len(current_rs) = " + str(len(current_rs))
54
+
55
+ # handle the special case in which the whole DistArray "a" fits in one
56
+ # block and has fewer rows than columns, this is a bit ugly so think about
57
+ # how to remove it
58
+ if a.shape[0] >= a.shape[1]:
59
+ q_shape = a.shape
60
+ else:
61
+ q_shape = [a.shape[0], a.shape[0]]
62
+ q_num_blocks = core.DistArray.compute_num_blocks(q_shape)
63
+ q_object_refs = np.empty(q_num_blocks, dtype=object)
64
+ q_result = core.DistArray(q_shape, q_object_refs)
65
+
66
+ # reconstruct output
67
+ for i in range(num_blocks):
68
+ q_block_current = q_tree[i, 0]
69
+ ith_index = i
70
+ for j in range(1, K):
71
+ if np.mod(ith_index, 2) == 0:
72
+ lower = [0, 0]
73
+ upper = [a.shape[1], core.BLOCK_SIZE]
74
+ else:
75
+ lower = [a.shape[1], 0]
76
+ upper = [2 * a.shape[1], core.BLOCK_SIZE]
77
+ ith_index //= 2
78
+ q_block_current = ra.dot.remote(
79
+ q_block_current, ra.subarray.remote(q_tree[ith_index, j], lower, upper)
80
+ )
81
+ q_result.object_refs[i] = q_block_current
82
+ r = current_rs[0]
83
+ return q_result, ray.get(r)
84
+
85
+
86
+ # TODO(rkn): This is unoptimized, we really want a block version of this.
87
+ # This is Algorithm 5 from
88
+ # http://www.eecs.berkeley.edu/Pubs/TechRpts/2013/EECS-2013-175.pdf.
89
+ @ray.remote(num_returns=3)
90
+ def modified_lu(q):
91
+ """Perform a modified LU decomposition of a matrix.
92
+
93
+ This takes a matrix q with orthonormal columns, returns l, u, s such that
94
+ q - s = l * u.
95
+
96
+ Args:
97
+ q: A two dimensional orthonormal matrix q.
98
+
99
+ Returns:
100
+ A tuple of a lower triangular matrix l, an upper triangular matrix u,
101
+ and a a vector representing a diagonal matrix s such that
102
+ q - s = l * u.
103
+ """
104
+ q = q.assemble()
105
+ m, b = q.shape[0], q.shape[1]
106
+ S = np.zeros(b)
107
+
108
+ q_work = np.copy(q)
109
+
110
+ for i in range(b):
111
+ S[i] = -1 * np.sign(q_work[i, i])
112
+ q_work[i, i] -= S[i]
113
+ # Scale ith column of L by diagonal element.
114
+ q_work[(i + 1) : m, i] /= q_work[i, i]
115
+ # Perform Schur complement update.
116
+ q_work[(i + 1) : m, (i + 1) : b] -= np.outer(
117
+ q_work[(i + 1) : m, i], q_work[i, (i + 1) : b]
118
+ )
119
+
120
+ L = np.tril(q_work)
121
+ for i in range(b):
122
+ L[i, i] = 1
123
+ U = np.triu(q_work)[:b, :]
124
+ # TODO(rkn): Get rid of the put below.
125
+ return ray.get(core.numpy_to_dist.remote(ray.put(L))), U, S
126
+
127
+
128
+ @ray.remote(num_returns=2)
129
+ def tsqr_hr_helper1(u, s, y_top_block, b):
130
+ y_top = y_top_block[:b, :b]
131
+ s_full = np.diag(s)
132
+ t = -1 * np.dot(u, np.dot(s_full, np.linalg.inv(y_top).T))
133
+ return t, y_top
134
+
135
+
136
+ @ray.remote
137
+ def tsqr_hr_helper2(s, r_temp):
138
+ s_full = np.diag(s)
139
+ return np.dot(s_full, r_temp)
140
+
141
+
142
+ # This is Algorithm 6 from
143
+ # http://www.eecs.berkeley.edu/Pubs/TechRpts/2013/EECS-2013-175.pdf.
144
+ @ray.remote(num_returns=4)
145
+ def tsqr_hr(a):
146
+ q, r_temp = tsqr.remote(a)
147
+ y, u, s = modified_lu.remote(q)
148
+ y_blocked = ray.get(y)
149
+ t, y_top = tsqr_hr_helper1.remote(u, s, y_blocked.object_refs[0, 0], a.shape[1])
150
+ r = tsqr_hr_helper2.remote(s, r_temp)
151
+ return ray.get(y), ray.get(t), ray.get(y_top), ray.get(r)
152
+
153
+
154
+ @ray.remote
155
+ def qr_helper1(a_rc, y_ri, t, W_c):
156
+ return a_rc - np.dot(y_ri, np.dot(t.T, W_c))
157
+
158
+
159
+ @ray.remote
160
+ def qr_helper2(y_ri, a_rc):
161
+ return np.dot(y_ri.T, a_rc)
162
+
163
+
164
+ # This is Algorithm 7 from
165
+ # http://www.eecs.berkeley.edu/Pubs/TechRpts/2013/EECS-2013-175.pdf.
166
+ @ray.remote(num_returns=2)
167
+ def qr(a):
168
+
169
+ m, n = a.shape[0], a.shape[1]
170
+ k = min(m, n)
171
+
172
+ # we will store our scratch work in a_work
173
+ a_work = core.DistArray(a.shape, np.copy(a.object_refs))
174
+
175
+ result_dtype = np.linalg.qr(ray.get(a.object_refs[0, 0]))[0].dtype.name
176
+ # TODO(rkn): It would be preferable not to get this right after creating
177
+ # it.
178
+ r_res = ray.get(core.zeros.remote([k, n], result_dtype))
179
+ # TODO(rkn): It would be preferable not to get this right after creating
180
+ # it.
181
+ y_res = ray.get(core.zeros.remote([m, k], result_dtype))
182
+ Ts = []
183
+
184
+ # The for loop differs from the paper, which says
185
+ # "for i in range(a.num_blocks[1])", but that doesn't seem to make any
186
+ # sense when a.num_blocks[1] > a.num_blocks[0].
187
+ for i in range(min(a.num_blocks[0], a.num_blocks[1])):
188
+ sub_dist_array = core.subblocks.remote(
189
+ a_work, list(range(i, a_work.num_blocks[0])), [i]
190
+ )
191
+ y, t, _, R = tsqr_hr.remote(sub_dist_array)
192
+ y_val = ray.get(y)
193
+
194
+ for j in range(i, a.num_blocks[0]):
195
+ y_res.object_refs[j, i] = y_val.object_refs[j - i, 0]
196
+ if a.shape[0] > a.shape[1]:
197
+ # in this case, R needs to be square
198
+ R_shape = ray.get(ra.shape.remote(R))
199
+ eye_temp = ra.eye.remote(R_shape[1], R_shape[0], dtype_name=result_dtype)
200
+ r_res.object_refs[i, i] = ra.dot.remote(eye_temp, R)
201
+ else:
202
+ r_res.object_refs[i, i] = R
203
+ Ts.append(core.numpy_to_dist.remote(t))
204
+
205
+ for c in range(i + 1, a.num_blocks[1]):
206
+ W_rcs = []
207
+ for r in range(i, a.num_blocks[0]):
208
+ y_ri = y_val.object_refs[r - i, 0]
209
+ W_rcs.append(qr_helper2.remote(y_ri, a_work.object_refs[r, c]))
210
+ W_c = ra.sum_list.remote(*W_rcs)
211
+ for r in range(i, a.num_blocks[0]):
212
+ y_ri = y_val.object_refs[r - i, 0]
213
+ A_rc = qr_helper1.remote(a_work.object_refs[r, c], y_ri, t, W_c)
214
+ a_work.object_refs[r, c] = A_rc
215
+ r_res.object_refs[i, c] = a_work.object_refs[i, c]
216
+
217
+ # construct q_res from Ys and Ts
218
+ q = core.eye.remote(m, k, dtype_name=result_dtype)
219
+ for i in range(len(Ts))[::-1]:
220
+ y_col_block = core.subblocks.remote(y_res, [], [i])
221
+ q = core.subtract.remote(
222
+ q,
223
+ core.dot.remote(
224
+ y_col_block,
225
+ core.dot.remote(
226
+ Ts[i], core.dot.remote(core.transpose.remote(y_col_block), q)
227
+ ),
228
+ ),
229
+ )
230
+
231
+ return ray.get(q), r_res
.venv/lib/python3.11/site-packages/ray/experimental/array/distributed/random.py ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+
3
+ import ray
4
+ import ray.experimental.array.remote as ra
5
+ from .core import DistArray
6
+
7
+
8
+ @ray.remote
9
+ def normal(shape):
10
+ num_blocks = DistArray.compute_num_blocks(shape)
11
+ object_refs = np.empty(num_blocks, dtype=object)
12
+ for index in np.ndindex(*num_blocks):
13
+ object_refs[index] = ra.random.normal.remote(
14
+ DistArray.compute_block_shape(index, shape)
15
+ )
16
+ result = DistArray(shape, object_refs)
17
+ return result
.venv/lib/python3.11/site-packages/ray/experimental/channel/__pycache__/shared_memory_channel.cpython-311.pyc ADDED
Binary file (34.8 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/channel/__pycache__/torch_tensor_nccl_channel.cpython-311.pyc ADDED
Binary file (35.5 kB). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/channel/auto_transport_type.py ADDED
@@ -0,0 +1,167 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import Dict, List, Optional, Tuple, Union
2
+
3
+ import ray
4
+ from ray.experimental.channel import ChannelOutputType
5
+ from ray.experimental.channel.torch_tensor_type import TorchTensorType
6
+
7
+
8
+ class AutoTransportType(ChannelOutputType):
9
+ """
10
+ Type hint for automatic transport selection for tensors.
11
+
12
+ With this type hint Compiled Graphs automatically decide the best transport
13
+ to use (e.g., NCCL or shared memory) based on the node locations and GPU IDs
14
+ of the readers and writers.
15
+ """
16
+
17
+ def __init__(self, _static_shape: bool = False, _direct_return: bool = False):
18
+ self._static_shape = _static_shape
19
+ self._direct_return = _direct_return
20
+
21
+ def create_channel(
22
+ self,
23
+ writer: Optional["ray.actor.ActorHandle"],
24
+ reader_and_node_list: List[Tuple["ray.actor.ActorHandle", str]],
25
+ driver_actor_id: Optional[str] = None,
26
+ ) -> "ChannelOutputType":
27
+ """
28
+ Directly calling create_channel() on AutoTransportType should not happen,
29
+ just raise an exception with informative message.
30
+ """
31
+ raise ValueError(
32
+ "This should not happen: AutoTransportType should "
33
+ "have been resolved before creating a channel. "
34
+ "Please file a Ray GitHub issue for bug report."
35
+ )
36
+
37
+
38
+ class TypeHintResolver:
39
+ """
40
+ This class is used to resolve `AutoChannelType` into an actual channel type
41
+ (e.g., `TorchTensorType` with proper transport) based on node locations and
42
+ GPU IDs of the readers and writers.
43
+ """
44
+
45
+ def __init__(self, actor_to_gpu_ids: Dict["ray.actor.ActorHandle", List[str]]):
46
+ """
47
+ Args:
48
+ actor_to_gpu_ids: Mapping from actor handle to its GPU IDs.
49
+ """
50
+ self._actor_to_gpu_ids = actor_to_gpu_ids
51
+
52
+ def _get_gpu_ids(self, actor: "ray.actor.ActorHandle") -> List[str]:
53
+ """
54
+ Get the GPU IDs of the actor.
55
+
56
+ Returns:
57
+ The GPU IDs of the actor. If the actor is not found,
58
+ return an empty list.
59
+ """
60
+ gpu_ids = self._actor_to_gpu_ids.get(actor, [])
61
+ assert len(gpu_ids) <= 1, (
62
+ "Compiled Graphs currently don't support allocating multiple GPUs "
63
+ "to a single actor"
64
+ )
65
+ return gpu_ids
66
+
67
+ def _use_same_gpu(
68
+ self,
69
+ writer_and_node: Tuple["ray.actor.ActorHandle", str],
70
+ reader_and_node: Union[
71
+ Tuple["ray.actor.ActorHandle", str],
72
+ List[Tuple["ray.actor.ActorHandle", str]],
73
+ ],
74
+ ) -> bool:
75
+ """
76
+ Check if the writer and readers use the same GPU.
77
+
78
+ Args:
79
+ writer_and_node: A tuple of writer actor handle and its node ID.
80
+ reader_and_node: A tuple of reader actor handle and its node ID, or
81
+ a list of such tuples.
82
+
83
+ Returns:
84
+ True if the writer and all the readers use the same GPU, False otherwise.
85
+ """
86
+ if isinstance(reader_and_node, list):
87
+ return all(
88
+ self._use_same_gpu(writer_and_node, entry) for entry in reader_and_node
89
+ )
90
+ if writer_and_node[1] != reader_and_node[1]:
91
+ return False
92
+ writer_gpu_ids = self._get_gpu_ids(writer_and_node[0])
93
+ reader_gpu_ids = self._get_gpu_ids(reader_and_node[0])
94
+ return writer_gpu_ids == reader_gpu_ids
95
+
96
+ def _use_gpu(
97
+ self, actors: Union["ray.actor.ActorHandle", List["ray.actor.ActorHandle"]]
98
+ ) -> bool:
99
+ """
100
+ Check if the actors use GPUs.
101
+
102
+ Args:
103
+ actors: An actor handle or a list of actor handles.
104
+
105
+ Returns:
106
+ True if the actors use GPUs, False otherwise.
107
+ """
108
+ if isinstance(actors, list):
109
+ return all(self._use_gpu(actor) for actor in actors)
110
+ gpu_ids = self._get_gpu_ids(actors)
111
+ return len(gpu_ids) > 0
112
+
113
+ def resolve(
114
+ self,
115
+ auto_transport_type: AutoTransportType,
116
+ writer_and_node: Tuple[Optional["ray.actor.ActorHandle"], str],
117
+ reader_and_node_list: List[Tuple[Optional["ray.actor.ActorHandle"], str]],
118
+ ) -> "ChannelOutputType":
119
+ """
120
+ Resolve auto_transport_type to the actual channel output type
121
+ based on the node locations and GPU IDs.
122
+
123
+ Args:
124
+ auto_transport_type: The type to resolve
125
+ writer_and_node: A tuple of writer actor handle and its node ID.
126
+ A None writer actor handle means the writer is the driver.
127
+ reader_and_node_list: A list of tuples of reader actor handle and its
128
+ node ID. A None reader actor handle means the reader is the driver.
129
+
130
+ Returns:
131
+ The actual channel type.
132
+ """
133
+ writer = writer_and_node[0]
134
+ readers = [reader for reader, _ in reader_and_node_list]
135
+
136
+ if writer is None or any(reader is None for reader in readers):
137
+ # None means actor is the driver, currently driver on GPU
138
+ # is not supported, so we always use shared memory to transfer
139
+ # tensors.
140
+ return TorchTensorType(
141
+ _static_shape=auto_transport_type._static_shape,
142
+ _direct_return=auto_transport_type._direct_return,
143
+ )
144
+
145
+ # Case 1: writer and readers don't both use GPU, use shared memory
146
+ # to transport the tensors
147
+ if not (self._use_gpu(writer) and self._use_gpu(readers)):
148
+ return TorchTensorType(
149
+ _static_shape=auto_transport_type._static_shape,
150
+ _direct_return=auto_transport_type._direct_return,
151
+ )
152
+
153
+ # Case 2: writer and readers use the same GPU are are on the same node,
154
+ # use shared memory to transport the tensors
155
+ if self._use_same_gpu(writer_and_node, reader_and_node_list):
156
+ return TorchTensorType(
157
+ _static_shape=auto_transport_type._static_shape,
158
+ _direct_return=auto_transport_type._direct_return,
159
+ )
160
+
161
+ # Case 3: writer and readers use different GPUs, use NCCL to transport
162
+ # the tensors
163
+ return TorchTensorType(
164
+ transport="nccl",
165
+ _static_shape=auto_transport_type._static_shape,
166
+ _direct_return=auto_transport_type._direct_return,
167
+ )
.venv/lib/python3.11/site-packages/ray/experimental/channel/cached_channel.py ADDED
@@ -0,0 +1,111 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import uuid
2
+ from typing import Any, Optional
3
+
4
+ from ray.experimental.channel.common import ChannelInterface
5
+
6
+
7
+ class CachedChannel(ChannelInterface):
8
+ """
9
+ CachedChannel wraps an inner channel and caches the data read from it until
10
+ `num_reads` reads have completed. If inner channel is None, the data
11
+ is written to serialization context and retrieved from there. This is useful
12
+ when passing data within the same actor and a shared memory channel can be
13
+ avoided.
14
+
15
+ Args:
16
+ num_reads: The number of reads from this channel that must happen before
17
+ writing again. Readers must be methods of the same actor.
18
+ inner_channel: The inner channel to cache data from. If None, the data is
19
+ read from the serialization context.
20
+ _channel_id: The unique ID for the channel. If None, a new ID is generated.
21
+ """
22
+
23
+ def __init__(
24
+ self,
25
+ num_reads: int,
26
+ inner_channel: Optional[ChannelInterface] = None,
27
+ _channel_id: Optional[str] = None,
28
+ ):
29
+ assert num_reads > 0, "num_reads must be greater than 0."
30
+ self._num_reads = num_reads
31
+ self._inner_channel = inner_channel
32
+ # Generate a unique ID for the channel. The writer and reader will use
33
+ # this ID to store and retrieve data from the _SerializationContext.
34
+ self._channel_id = _channel_id
35
+ if self._channel_id is None:
36
+ self._channel_id = str(uuid.uuid4())
37
+
38
+ def ensure_registered_as_writer(self) -> None:
39
+ if self._inner_channel is not None:
40
+ self._inner_channel.ensure_registered_as_writer()
41
+
42
+ def ensure_registered_as_reader(self) -> None:
43
+ if self._inner_channel is not None:
44
+ self._inner_channel.ensure_registered_as_reader()
45
+
46
+ def __reduce__(self):
47
+ return CachedChannel, (
48
+ self._num_reads,
49
+ self._inner_channel,
50
+ self._channel_id,
51
+ )
52
+
53
+ def __str__(self) -> str:
54
+ return (
55
+ f"CachedChannel(channel_id={self._channel_id}, "
56
+ f"num_reads={self._num_reads}), "
57
+ f"inner_channel={self._inner_channel})"
58
+ )
59
+
60
+ def write(self, value: Any, timeout: Optional[float] = None):
61
+ self.ensure_registered_as_writer()
62
+ # TODO: better organize the imports
63
+ from ray.experimental.channel import ChannelContext
64
+
65
+ if self._inner_channel is not None:
66
+ self._inner_channel.write(value, timeout)
67
+ return
68
+
69
+ # Otherwise no need to check timeout as the operation is non-blocking.
70
+
71
+ # Because both the reader and writer are in the same worker process,
72
+ # we can directly store the data in the context instead of storing
73
+ # it in the channel object. This removes the serialization overhead of `value`.
74
+ ctx = ChannelContext.get_current().serialization_context
75
+ ctx.set_data(self._channel_id, value, self._num_reads)
76
+
77
+ def read(self, timeout: Optional[float] = None) -> Any:
78
+ self.ensure_registered_as_reader()
79
+ # TODO: better organize the imports
80
+ from ray.experimental.channel import ChannelContext
81
+
82
+ ctx = ChannelContext.get_current().serialization_context
83
+ if ctx.has_data(self._channel_id):
84
+ # No need to check timeout as the operation is non-blocking.
85
+ return ctx.get_data(self._channel_id)
86
+
87
+ assert (
88
+ self._inner_channel is not None
89
+ ), "Cannot read from the serialization context while inner channel is None."
90
+ value = self._inner_channel.read(timeout)
91
+ ctx.set_data(self._channel_id, value, self._num_reads)
92
+ # NOTE: Currently we make a contract with Compiled Graph users that the
93
+ # channel results should not be mutated by the actor methods.
94
+ # When the user needs to modify the channel results, they should
95
+ # make a copy of the channel results and modify the copy.
96
+ # This is the same contract as used in IntraProcessChannel.
97
+ # This contract is NOT enforced right now in either case.
98
+ # TODO(rui): introduce a flag to control the behavior:
99
+ # for example, by default we make a deep copy of the channel
100
+ # result, but the user can turn off the deep copy for performance
101
+ # improvements.
102
+ # https://github.com/ray-project/ray/issues/47409
103
+ return ctx.get_data(self._channel_id)
104
+
105
+ def close(self) -> None:
106
+ from ray.experimental.channel import ChannelContext
107
+
108
+ if self._inner_channel is not None:
109
+ self._inner_channel.close()
110
+ ctx = ChannelContext.get_current().serialization_context
111
+ ctx.reset_data(self._channel_id)
.venv/lib/python3.11/site-packages/ray/experimental/channel/intra_process_channel.py ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import uuid
2
+ from typing import Any, Optional
3
+
4
+ from ray.experimental.channel import ChannelContext
5
+ from ray.experimental.channel.common import ChannelInterface
6
+ from ray.util.annotations import PublicAPI
7
+
8
+
9
+ @PublicAPI(stability="alpha")
10
+ class IntraProcessChannel(ChannelInterface):
11
+ """
12
+ IntraProcessChannel is a channel for communication between two tasks in the same
13
+ worker process. It writes data directly to the worker's _SerializationContext
14
+ and reads data from the _SerializationContext to avoid the serialization
15
+ overhead and the need for reading/writing from shared memory. Note that if the
16
+ readers may mutate the data, users should deep copy the data themselves to avoid
17
+ side effects.
18
+
19
+ Args:
20
+ num_readers: The number of readers that will read from this channel. Readers
21
+ can be the same method of the same actor.
22
+ """
23
+
24
+ def __init__(
25
+ self,
26
+ num_readers,
27
+ _channel_id: Optional[str] = None,
28
+ ):
29
+ # Generate a unique ID for the channel. The writer and reader will use
30
+ # this ID to store and retrieve data from the _SerializationContext.
31
+ self._channel_id = _channel_id
32
+ self._num_readers = num_readers
33
+ if self._channel_id is None:
34
+ self._channel_id = str(uuid.uuid4())
35
+
36
+ def ensure_registered_as_writer(self) -> None:
37
+ pass
38
+
39
+ def ensure_registered_as_reader(self) -> None:
40
+ pass
41
+
42
+ def __reduce__(self):
43
+ return IntraProcessChannel, (
44
+ self._num_readers,
45
+ self._channel_id,
46
+ )
47
+
48
+ def __str__(self) -> str:
49
+ return f"IntraProcessChannel(channel_id={self._channel_id})"
50
+
51
+ def write(self, value: Any, timeout: Optional[float] = None):
52
+ self.ensure_registered_as_writer()
53
+ # No need to check timeout as the operation is non-blocking.
54
+
55
+ # Because both the reader and writer are in the same worker process,
56
+ # we can directly store the data in the context instead of storing
57
+ # it in the channel object. This removes the serialization overhead of `value`.
58
+ ctx = ChannelContext.get_current().serialization_context
59
+ ctx.set_data(self._channel_id, value, self._num_readers)
60
+
61
+ def read(self, timeout: Optional[float] = None, deserialize: bool = True) -> Any:
62
+ self.ensure_registered_as_reader()
63
+ assert deserialize, "Data passed from the actor to itself is never serialized"
64
+ # No need to check timeout as the operation is non-blocking.
65
+ ctx = ChannelContext.get_current().serialization_context
66
+ return ctx.get_data(self._channel_id)
67
+
68
+ def close(self) -> None:
69
+ ctx = ChannelContext.get_current().serialization_context
70
+ ctx.reset_data(self._channel_id)
.venv/lib/python3.11/site-packages/ray/experimental/channel/serialization_context.py ADDED
@@ -0,0 +1,174 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import warnings
2
+ from typing import TYPE_CHECKING, Any, Dict, List, Set, Tuple, Union
3
+
4
+ if TYPE_CHECKING:
5
+ import numpy as np
6
+ import torch
7
+
8
+
9
+ _TORCH_WARNING_FILTER_ACTIVATE = True
10
+
11
+
12
+ class _SerializationContext:
13
+ def __init__(self):
14
+ # If true, then tensors found in the data to serialize are extracted
15
+ # and the caller should send them through an external transport.
16
+ self._use_external_transport: bool = False
17
+ # If _use_external_transport is True, then these are
18
+ # the tensors that should be sent or received
19
+ # out-of-band, through the external transport.
20
+ self._out_of_band_tensors: List["torch.Tensor"] = []
21
+ # During serialization, tensors sent out-of-band are replaced with
22
+ # integer placeholders. This tracks the set of placeholders seen.
23
+ self._deserialized_tensor_placeholders: Set[int] = set()
24
+
25
+ # Buffer for transferring data between tasks in the same worker process.
26
+ # The key is the channel ID, and the value is the data. We don't use a
27
+ # lock when reading/writing the buffer because a DAG node actor will only
28
+ # execute one task at a time in `do_exec_tasks`. It will not execute multiple
29
+ # Ray tasks on a single actor simultaneously.
30
+ self.intra_process_channel_buffers: Dict[str, Any] = {}
31
+ # The number of readers for each channel. When the number of readers
32
+ # reaches 0, remove the data from the buffer.
33
+ self.channel_id_to_num_readers: Dict[str, int] = {}
34
+
35
+ def set_data(self, channel_id: str, value: Any, num_readers: int) -> None:
36
+ assert num_readers > 0, "num_readers must be greater than 0."
37
+ assert (
38
+ channel_id not in self.intra_process_channel_buffers
39
+ ), f"Channel {channel_id} already exists in the buffer."
40
+ assert (
41
+ channel_id not in self.channel_id_to_num_readers
42
+ ), f"Channel {channel_id} already exists in the channel_id_to_num_readers."
43
+
44
+ self.intra_process_channel_buffers[channel_id] = value
45
+ self.channel_id_to_num_readers[channel_id] = num_readers
46
+
47
+ def has_data(self, channel_id: str) -> bool:
48
+ return channel_id in self.intra_process_channel_buffers
49
+
50
+ def get_data(self, channel_id: str) -> Any:
51
+ assert (
52
+ channel_id in self.intra_process_channel_buffers
53
+ ), f"Channel {channel_id} does not exist in the buffer."
54
+ assert (
55
+ channel_id in self.channel_id_to_num_readers
56
+ ), f"Channel {channel_id} does not exist in the channel_id_to_num_readers."
57
+
58
+ self.channel_id_to_num_readers[channel_id] -= 1
59
+ if self.channel_id_to_num_readers[channel_id] == 0:
60
+ # All readers have read the data, so we can remove it.
61
+ self.channel_id_to_num_readers.pop(channel_id)
62
+ return self.intra_process_channel_buffers.pop(channel_id)
63
+ return self.intra_process_channel_buffers[channel_id]
64
+
65
+ def reset_data(self, channel_id: str) -> None:
66
+ self.intra_process_channel_buffers.pop(channel_id, None)
67
+ self.channel_id_to_num_readers.pop(channel_id, None)
68
+
69
+ def set_use_external_transport(self, use_external_transport: bool) -> None:
70
+ self._use_external_transport = use_external_transport
71
+
72
+ def reset_out_of_band_tensors(
73
+ self, tensors: List["torch.Tensor"]
74
+ ) -> Tuple[List["torch.Tensor"], Set[int]]:
75
+ """
76
+ Return and reset the out-of-band tensors and all tensor placeholders
77
+ that were deserialized since the last call to reset.
78
+ """
79
+ prev_tensors = self._out_of_band_tensors
80
+ deserialized_tensor_placeholders = self._deserialized_tensor_placeholders
81
+ self._out_of_band_tensors = tensors
82
+ self._deserialized_tensor_placeholders = set()
83
+ return prev_tensors, deserialized_tensor_placeholders
84
+
85
+ def serialize_tensor(self, tensor: "torch.Tensor") -> Union[int, "np.ndarray"]:
86
+ from ray.experimental.channel import ChannelContext
87
+
88
+ ctx = ChannelContext.get_current()
89
+ if self._use_external_transport and tensor.device == ctx.torch_device:
90
+ # External transport is enabled and we found a tensor that matches
91
+ # our device. Add the actual tensor to a buffer. The buffer of
92
+ # tensors should later be popped by the caller and sent via
93
+ # external transport.
94
+ self._out_of_band_tensors.append(tensor)
95
+ # Return a placeholder.
96
+ return len(self._out_of_band_tensors) - 1
97
+
98
+ return self.serialize_to_numpy(tensor)
99
+
100
+ def serialize_to_numpy(
101
+ self, tensor: "torch.Tensor"
102
+ ) -> Tuple["np.ndarray", "torch.dtype"]:
103
+ import torch
104
+
105
+ # Transfer through Ray's shared memory store for now.
106
+ # TODO(swang): This requires two copies, one to transfer from GPU to
107
+ # CPU and another from CPU to shared memory. Ideally we should elide
108
+ # the first copy and memcpy directly from GPU to the shared memory
109
+ # buffer.
110
+ if tensor.device.type == "cuda":
111
+ tensor = tensor.to("cpu")
112
+
113
+ # Numpy does not have an equivalent dtype for all torch dtypes, so
114
+ # instead of casting directly to numpy, we first use a view with a
115
+ # common dtype and then view as numpy array.
116
+ return (tensor.view(torch.uint8).numpy(), tensor.dtype)
117
+
118
+ def deserialize_tensor(self, val: Union["np.ndarray", int]):
119
+ # Found a placeholder for a tensor that was serialized via NCCL.
120
+ # Replace it with the corresponding deserialized tensor.
121
+ if isinstance(val, int):
122
+ placeholder = val
123
+ self._deserialized_tensor_placeholders.add(placeholder)
124
+ assert placeholder < len(self._out_of_band_tensors)
125
+ return self._out_of_band_tensors[placeholder]
126
+
127
+ return self.deserialize_from_numpy(val)
128
+
129
+ def deserialize_from_numpy(
130
+ self, np_array_dtype: Tuple["np.ndarray", "torch.dtype"]
131
+ ):
132
+ import torch
133
+
134
+ from ray.experimental.channel import ChannelContext
135
+
136
+ ctx = ChannelContext.get_current()
137
+
138
+ np_array, dtype = np_array_dtype
139
+
140
+ # TODO(swang): Support local P2P transfers if available.
141
+ # If there is a GPU assigned to this worker, move it there.
142
+ if ctx.torch_device is not None and ctx.torch_device.type == "cuda":
143
+
144
+ def convert_numpy_to_tensor(np_array, ctx):
145
+ # It does zero-copy convert np_array inside shared memroy to
146
+ # a tensor. Since we move data to GPU immediately, it is safe.
147
+ cpu_tensor = torch.from_numpy(np_array).view(dtype)
148
+ return cpu_tensor.to(device=ctx.torch_device)
149
+
150
+ global _TORCH_WARNING_FILTER_ACTIVATE
151
+ # filtering warning messages would be the bottleneck for
152
+ # deserializing torch tensors. Since the warning only prompts once,
153
+ # we would only deal with it for the first time.
154
+ if _TORCH_WARNING_FILTER_ACTIVATE:
155
+ with warnings.catch_warnings():
156
+ # Since np_array.is_writable is False (it is set by Ray),
157
+ # this raises a warning. Suppress it.
158
+ warnings.filterwarnings(
159
+ "ignore",
160
+ category=UserWarning,
161
+ message="The given NumPy array is not writable",
162
+ )
163
+ # gpu_tensor = convert_numpy_to_tensor(np_array, ctx)
164
+ gpu_tensor = convert_numpy_to_tensor(np_array, ctx)
165
+ _TORCH_WARNING_FILTER_ACTIVATE = False
166
+ else:
167
+ gpu_tensor = convert_numpy_to_tensor(np_array, ctx)
168
+
169
+ return gpu_tensor
170
+
171
+ # TODO(swang): Use zero-copy from_numpy() if np_array.flags.writeable
172
+ # is True. This is safe to set when deserializing np_array if the
173
+ # upstream task has num_readers=1.
174
+ return torch.tensor(np_array, device=ctx.torch_device).view(dtype)
.venv/lib/python3.11/site-packages/ray/experimental/compiled_dag_ref.py ADDED
@@ -0,0 +1,227 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import asyncio
2
+ from typing import Any, List, Optional
3
+
4
+ import ray
5
+ from ray.exceptions import (
6
+ GetTimeoutError,
7
+ RayChannelError,
8
+ RayChannelTimeoutError,
9
+ RayTaskError,
10
+ )
11
+ from ray.util.annotations import PublicAPI
12
+
13
+
14
+ def _process_return_vals(return_vals: List[Any], return_single_output: bool):
15
+ """
16
+ Process return values for return to the DAG caller. Any exceptions found in
17
+ return_vals will be raised. If return_single_output=True, it indicates that
18
+ the original DAG did not have a MultiOutputNode, so the DAG caller expects
19
+ a single return value instead of a list.
20
+ """
21
+ # Check for exceptions.
22
+ if isinstance(return_vals, Exception):
23
+ raise return_vals
24
+
25
+ for val in return_vals:
26
+ if isinstance(val, RayTaskError):
27
+ raise val.as_instanceof_cause()
28
+
29
+ if return_single_output:
30
+ assert len(return_vals) == 1
31
+ return return_vals[0]
32
+
33
+ return return_vals
34
+
35
+
36
+ @PublicAPI(stability="alpha")
37
+ class CompiledDAGRef:
38
+ """
39
+ A reference to a compiled DAG execution result.
40
+
41
+ This is a subclass of ObjectRef and resembles ObjectRef. For example,
42
+ similar to ObjectRef, ray.get() can be called on it to retrieve the result.
43
+ However, there are several major differences:
44
+ 1. ray.get() can only be called once per CompiledDAGRef.
45
+ 2. ray.wait() is not supported.
46
+ 3. CompiledDAGRef cannot be copied, deep copied, or pickled.
47
+ 4. CompiledDAGRef cannot be passed as an argument to another task.
48
+ """
49
+
50
+ def __init__(
51
+ self,
52
+ dag: "ray.experimental.CompiledDAG",
53
+ execution_index: int,
54
+ channel_index: Optional[int] = None,
55
+ ):
56
+ """
57
+ Args:
58
+ dag: The compiled DAG that generated this CompiledDAGRef.
59
+ execution_index: The index of the execution for the DAG.
60
+ A DAG can be executed multiple times, and execution index
61
+ indicates which execution this CompiledDAGRef corresponds to.
62
+ actor_execution_loop_refs: The actor execution loop refs that
63
+ are used to execute the DAG. This can be used internally to
64
+ check the task execution errors in case of exceptions.
65
+ channel_index: The index of the DAG's output channel to fetch
66
+ the result from. A DAG can have multiple output channels, and
67
+ channel index indicates which channel this CompiledDAGRef
68
+ corresponds to. If channel index is not provided, this CompiledDAGRef
69
+ wraps the results from all output channels.
70
+
71
+ """
72
+ self._dag = dag
73
+ self._execution_index = execution_index
74
+ self._channel_index = channel_index
75
+ # Whether ray.get() was called on this CompiledDAGRef.
76
+ self._ray_get_called = False
77
+ self._dag_output_channels = dag.dag_output_channels
78
+
79
+ def __str__(self):
80
+ return (
81
+ f"CompiledDAGRef({self._dag.get_id()}, "
82
+ f"execution_index={self._execution_index}, "
83
+ f"channel_index={self._channel_index})"
84
+ )
85
+
86
+ def __copy__(self):
87
+ raise ValueError("CompiledDAGRef cannot be copied.")
88
+
89
+ def __deepcopy__(self, memo):
90
+ raise ValueError("CompiledDAGRef cannot be deep copied.")
91
+
92
+ def __reduce__(self):
93
+ raise ValueError("CompiledDAGRef cannot be pickled.")
94
+
95
+ def __del__(self):
96
+ # If the dag is already teardown, it should do nothing.
97
+ if self._dag.is_teardown:
98
+ return
99
+
100
+ # If we've already cached the result in the buffer, get it to remove it
101
+ # from the buffer. Else add this CompiledDAGRef's execution and channel indices
102
+ # to the dag's _destructed_ref_idxs, and try to release any buffers we
103
+ # can based on the dag's current max_finished_execution_index.
104
+ if not self._ray_get_called:
105
+ if self._execution_index in self._dag._result_buffer:
106
+ self._dag._get_execution_results(
107
+ self._execution_index, self._channel_index
108
+ )
109
+ else:
110
+ self._dag._destructed_ref_idxs[self._execution_index].add(
111
+ self._channel_index
112
+ )
113
+ self._dag._try_release_buffers()
114
+
115
+ def get(self, timeout: Optional[float] = None):
116
+ if self._ray_get_called:
117
+ raise ValueError(
118
+ "ray.get() can only be called once "
119
+ "on a CompiledDAGRef, and it was already called."
120
+ )
121
+
122
+ self._ray_get_called = True
123
+ try:
124
+ self._dag._execute_until(
125
+ self._execution_index, self._channel_index, timeout
126
+ )
127
+ return_vals = self._dag._get_execution_results(
128
+ self._execution_index, self._channel_index
129
+ )
130
+ except RayChannelTimeoutError:
131
+ raise
132
+ except RayChannelError as channel_error:
133
+ # If we get a channel error, we'd like to call ray.get() on
134
+ # the actor execution loop refs to check if this is a result
135
+ # of task execution error which could not be passed down
136
+ # (e.g., when a pure NCCL channel is used, it is only
137
+ # able to send tensors, but not the wrapped exceptions).
138
+ # In this case, we'd like to raise the task execution error
139
+ # (which is the actual cause of the channel error) instead
140
+ # of the channel error itself.
141
+ # TODO(rui): determine which error to raise if multiple
142
+ # actor task refs have errors.
143
+ actor_execution_loop_refs = list(self._dag.worker_task_refs.values())
144
+ try:
145
+ ray.get(actor_execution_loop_refs, timeout=10)
146
+ except GetTimeoutError as timeout_error:
147
+ raise Exception(
148
+ "Timed out when getting the actor execution loop exception. "
149
+ "This should not happen, please file a GitHub issue."
150
+ ) from timeout_error
151
+ except Exception as execution_error:
152
+ # Use 'from None' to suppress the context of the original
153
+ # channel error, which is not useful to the user.
154
+ raise execution_error from None
155
+ else:
156
+ raise channel_error
157
+ except Exception:
158
+ raise
159
+ return _process_return_vals(return_vals, True)
160
+
161
+
162
+ @PublicAPI(stability="alpha")
163
+ class CompiledDAGFuture:
164
+ """
165
+ A reference to a compiled DAG execution result, when executed with asyncio.
166
+ This differs from CompiledDAGRef in that `await` must be called on the
167
+ future to get the result, instead of `ray.get()`.
168
+
169
+ This resembles async usage of ObjectRefs. For example, similar to
170
+ ObjectRef, `await` can be called directly on the CompiledDAGFuture to
171
+ retrieve the result. However, there are several major differences:
172
+ 1. `await` can only be called once per CompiledDAGFuture.
173
+ 2. ray.wait() is not supported.
174
+ 3. CompiledDAGFuture cannot be copied, deep copied, or pickled.
175
+ 4. CompiledDAGFuture cannot be passed as an argument to another task.
176
+ """
177
+
178
+ def __init__(
179
+ self,
180
+ dag: "ray.experimental.CompiledDAG",
181
+ execution_index: int,
182
+ fut: "asyncio.Future",
183
+ channel_index: Optional[int] = None,
184
+ ):
185
+ self._dag = dag
186
+ self._execution_index = execution_index
187
+ self._fut = fut
188
+ self._channel_index = channel_index
189
+
190
+ def __str__(self):
191
+ return (
192
+ f"CompiledDAGFuture({self._dag.get_id()}, "
193
+ f"execution_index={self._execution_index}, "
194
+ f"channel_index={self._channel_index})"
195
+ )
196
+
197
+ def __copy__(self):
198
+ raise ValueError("CompiledDAGFuture cannot be copied.")
199
+
200
+ def __deepcopy__(self, memo):
201
+ raise ValueError("CompiledDAGFuture cannot be deep copied.")
202
+
203
+ def __reduce__(self):
204
+ raise ValueError("CompiledDAGFuture cannot be pickled.")
205
+
206
+ def __await__(self):
207
+ if self._fut is None:
208
+ raise ValueError(
209
+ "CompiledDAGFuture can only be awaited upon once, and it has "
210
+ "already been awaited upon."
211
+ )
212
+
213
+ # NOTE(swang): If the object is zero-copy deserialized, then it will
214
+ # stay in scope as long as this future is in scope. Therefore, we
215
+ # delete self._fut here before we return the result to the user.
216
+ fut = self._fut
217
+ self._fut = None
218
+
219
+ if not self._dag._has_execution_results(self._execution_index):
220
+ result = yield from fut.__await__()
221
+ self._dag._max_finished_execution_index += 1
222
+ self._dag._cache_execution_results(self._execution_index, result)
223
+
224
+ return_vals = self._dag._get_execution_results(
225
+ self._execution_index, self._channel_index
226
+ )
227
+ return _process_return_vals(return_vals, True)
.venv/lib/python3.11/site-packages/ray/experimental/gradio_utils.py ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ def type_to_string(_type: type) -> str:
2
+ """Gets the string representation of a type.
3
+
4
+ THe original type can be derived from the returned string representation through
5
+ pydoc.locate().
6
+ """
7
+ if _type.__module__ == "typing":
8
+ return f"{_type.__module__}.{_type._name}"
9
+ elif _type.__module__ == "builtins":
10
+ return _type.__name__
11
+ else:
12
+ return f"{_type.__module__}.{_type.__name__}"
.venv/lib/python3.11/site-packages/ray/experimental/internal_kv.py ADDED
@@ -0,0 +1,121 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import List, Optional, Union
2
+
3
+ from ray._private.client_mode_hook import client_mode_hook
4
+ from ray._raylet import GcsClient
5
+
6
+ _initialized = False
7
+ global_gcs_client = None
8
+
9
+
10
+ def _internal_kv_reset():
11
+ global global_gcs_client, _initialized
12
+ global_gcs_client = None
13
+ _initialized = False
14
+
15
+
16
+ def internal_kv_get_gcs_client():
17
+ return global_gcs_client
18
+
19
+
20
+ def _initialize_internal_kv(gcs_client: GcsClient):
21
+ """Initialize the internal KV for use in other function calls."""
22
+ global global_gcs_client, _initialized
23
+ assert gcs_client is not None
24
+ global_gcs_client = gcs_client
25
+ _initialized = True
26
+
27
+
28
+ @client_mode_hook
29
+ def _internal_kv_initialized():
30
+ return global_gcs_client is not None
31
+
32
+
33
+ @client_mode_hook
34
+ def _internal_kv_get(
35
+ key: Union[str, bytes], *, namespace: Optional[Union[str, bytes]] = None
36
+ ) -> bytes:
37
+ """Fetch the value of a binary key."""
38
+
39
+ if isinstance(key, str):
40
+ key = key.encode()
41
+ if isinstance(namespace, str):
42
+ namespace = namespace.encode()
43
+ assert isinstance(key, bytes)
44
+ return global_gcs_client.internal_kv_get(key, namespace)
45
+
46
+
47
+ @client_mode_hook
48
+ def _internal_kv_exists(
49
+ key: Union[str, bytes], *, namespace: Optional[Union[str, bytes]] = None
50
+ ) -> bool:
51
+ """Check key exists or not."""
52
+
53
+ if isinstance(key, str):
54
+ key = key.encode()
55
+ if isinstance(namespace, str):
56
+ namespace = namespace.encode()
57
+ assert isinstance(key, bytes)
58
+ return global_gcs_client.internal_kv_exists(key, namespace)
59
+
60
+
61
+ @client_mode_hook
62
+ def _pin_runtime_env_uri(uri: str, *, expiration_s: int) -> None:
63
+ """Pin a runtime_env URI for expiration_s."""
64
+ return global_gcs_client.pin_runtime_env_uri(uri, expiration_s)
65
+
66
+
67
+ @client_mode_hook
68
+ def _internal_kv_put(
69
+ key: Union[str, bytes],
70
+ value: Union[str, bytes],
71
+ overwrite: bool = True,
72
+ *,
73
+ namespace: Optional[Union[str, bytes]] = None
74
+ ) -> bool:
75
+ """Globally associates a value with a given binary key.
76
+
77
+ This only has an effect if the key does not already have a value.
78
+
79
+ Returns:
80
+ already_exists: whether the value already exists.
81
+ """
82
+
83
+ if isinstance(key, str):
84
+ key = key.encode()
85
+ if isinstance(value, str):
86
+ value = value.encode()
87
+ if isinstance(namespace, str):
88
+ namespace = namespace.encode()
89
+ assert (
90
+ isinstance(key, bytes)
91
+ and isinstance(value, bytes)
92
+ and isinstance(overwrite, bool)
93
+ )
94
+ return global_gcs_client.internal_kv_put(key, value, overwrite, namespace) == 0
95
+
96
+
97
+ @client_mode_hook
98
+ def _internal_kv_del(
99
+ key: Union[str, bytes],
100
+ *,
101
+ del_by_prefix: bool = False,
102
+ namespace: Optional[Union[str, bytes]] = None
103
+ ) -> int:
104
+ if isinstance(key, str):
105
+ key = key.encode()
106
+ if isinstance(namespace, str):
107
+ namespace = namespace.encode()
108
+ assert isinstance(key, bytes)
109
+ return global_gcs_client.internal_kv_del(key, del_by_prefix, namespace)
110
+
111
+
112
+ @client_mode_hook
113
+ def _internal_kv_list(
114
+ prefix: Union[str, bytes], *, namespace: Optional[Union[str, bytes]] = None
115
+ ) -> List[bytes]:
116
+ """List all keys in the internal KV store that start with the prefix."""
117
+ if isinstance(prefix, str):
118
+ prefix = prefix.encode()
119
+ if isinstance(namespace, str):
120
+ namespace = namespace.encode()
121
+ return global_gcs_client.internal_kv_keys(prefix, namespace)
.venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__init__.py ADDED
File without changes
.venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__pycache__/__init__.cpython-311.pyc ADDED
Binary file (205 Bytes). View file
 
.venv/lib/python3.11/site-packages/ray/experimental/job/example_job/__pycache__/demo_script.cpython-311.pyc ADDED
Binary file (3.86 kB). View file