Skip to content

Commit b8d53aa

Browse files
committed
[core] Place scheduler bazel targets into separate directories
Signed-off-by: Ziy1-Tan <[email protected]>
1 parent 5b37f1c commit b8d53aa

10 files changed

+385
-404
lines changed

BUILD.bazel

+19-390
Large diffs are not rendered by default.

src/ray/raylet/scheduling/BUILD.bazel

+366
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,366 @@
1+
load("//bazel:ray.bzl", "ray_cc_library", "ray_cc_test")
2+
3+
ray_cc_library(
4+
name = "scheduler",
5+
linkopts = select({
6+
"@platforms//os:windows": [
7+
],
8+
"@platforms//os:macos": [
9+
"-pthread",
10+
],
11+
"@platforms//os:linux": [
12+
"-lpthread",
13+
],
14+
"//conditions:default": [],
15+
}),
16+
deps = [
17+
":affinity_with_bundle_scheduling_policy",
18+
":bundle_scheduling_policy",
19+
":cluster_resource_manager",
20+
":cluster_resource_scheduler",
21+
":cluster_task_manager",
22+
":composite_scheduling_policy",
23+
":hybrid_scheduling_policy",
24+
":local_resource_manager",
25+
":node_affinity_scheduling_policy",
26+
":node_label_scheduling_policy",
27+
":random_scheduling_policy",
28+
":spread_scheduling_policy",
29+
],
30+
)
31+
32+
ray_cc_library(
33+
name = "scheduler_internal",
34+
hdrs = ["internal.h"],
35+
deps = [
36+
"//src/ray/common:ray_object",
37+
"//src/ray/common:task_common",
38+
"//src/ray/protobuf:node_manager_cc_proto",
39+
],
40+
)
41+
42+
ray_cc_library(
43+
name = "cluster_resource_manager",
44+
srcs = ["cluster_resource_manager.cc"],
45+
hdrs = ["cluster_resource_manager.h"],
46+
deps = [
47+
":local_resource_manager",
48+
"//src/ray/common:grpc_util",
49+
"//src/ray/common:ray_config",
50+
"//src/ray/common:task_common",
51+
"//src/ray/protobuf:gcs_cc_proto",
52+
"//src/ray/util:container_util",
53+
"//src/ray/util:logging",
54+
"@com_google_absl//absl/container:flat_hash_map",
55+
"@com_google_googletest//:gtest_prod",
56+
],
57+
)
58+
59+
ray_cc_library(
60+
name = "cluster_resource_scheduler",
61+
srcs = ["cluster_resource_scheduler.cc"],
62+
hdrs = ["cluster_resource_scheduler.h"],
63+
deps = [
64+
":cluster_resource_manager",
65+
":composite_scheduling_policy",
66+
":scheduler_internal",
67+
"//src/ray/protobuf:gcs_cc_proto",
68+
"//src/ray/util:logging",
69+
"@com_google_absl//absl/container:flat_hash_map",
70+
"@com_google_googletest//:gtest_prod",
71+
],
72+
)
73+
74+
ray_cc_library(
75+
name = "cluster_task_manager",
76+
srcs = [
77+
"cluster_task_manager.cc",
78+
"scheduler_stats.cc",
79+
],
80+
hdrs = [
81+
"cluster_task_manager.h",
82+
"scheduler_stats.h",
83+
],
84+
deps = [
85+
":cluster_resource_scheduler",
86+
":cluster_task_manager_interface",
87+
":local_task_manager_interface",
88+
":scheduler_internal",
89+
":scheduler_resource_reporter",
90+
"//:stats_lib",
91+
"//src/ray/common:ray_config",
92+
"//src/ray/common:ray_object",
93+
"//src/ray/common:task_common",
94+
"//src/ray/util:logging",
95+
"@com_google_absl//absl/container:flat_hash_map",
96+
],
97+
)
98+
99+
ray_cc_library(
100+
name = "cluster_task_manager_interface",
101+
hdrs = ["cluster_task_manager_interface.h"],
102+
deps = [
103+
"//:rpc_server_call",
104+
"//src/ray/protobuf:node_manager_cc_proto",
105+
],
106+
)
107+
108+
ray_cc_library(
109+
name = "local_task_manager_interface",
110+
hdrs = ["local_task_manager_interface.h"],
111+
deps = [
112+
":scheduler_internal",
113+
"//src/ray/common:task_common",
114+
"@com_google_absl//absl/container:flat_hash_map",
115+
],
116+
)
117+
118+
ray_cc_library(
119+
name = "local_resource_manager",
120+
srcs = ["local_resource_manager.cc"],
121+
hdrs = ["local_resource_manager.h"],
122+
deps = [
123+
"//:gcs_client_lib",
124+
"//src/ray/common:grpc_util",
125+
"//src/ray/common:ray_config",
126+
"//src/ray/common:ray_syncer",
127+
"//src/ray/common:task_common",
128+
"//src/ray/protobuf:gcs_cc_proto",
129+
"//src/ray/protobuf:node_manager_cc_proto",
130+
"//src/ray/util:logging",
131+
"@com_google_absl//absl/container:flat_hash_map",
132+
"@com_google_googletest//:gtest_prod",
133+
],
134+
)
135+
136+
ray_cc_library(
137+
name = "scheduler_resource_reporter",
138+
srcs = ["scheduler_resource_reporter.cc"],
139+
hdrs = ["scheduler_resource_reporter.h"],
140+
deps = [
141+
":local_task_manager_interface",
142+
":scheduler_internal",
143+
"//src/ray/common:ray_config",
144+
"//src/ray/common:task_common",
145+
"@com_google_absl//absl/container:flat_hash_map",
146+
],
147+
)
148+
149+
ray_cc_library(
150+
name = "scheduling_options",
151+
hdrs = ["policy/scheduling_options.h"],
152+
deps = [
153+
":scheduling_context",
154+
"//src/ray/common:ray_config",
155+
],
156+
)
157+
158+
ray_cc_library(
159+
name = "scheduling_context",
160+
hdrs = ["policy/scheduling_context.h"],
161+
deps = [
162+
"//src/ray/common:id",
163+
"//src/ray/common:task_common",
164+
"@com_google_absl//absl/container:flat_hash_map",
165+
],
166+
)
167+
168+
ray_cc_library(
169+
name = "affinity_with_bundle_scheduling_policy",
170+
srcs = ["policy/affinity_with_bundle_scheduling_policy.cc"],
171+
hdrs = ["policy/affinity_with_bundle_scheduling_policy.h"],
172+
deps = [
173+
":scheduling_policy",
174+
"//src/ray/common:task_common",
175+
],
176+
)
177+
178+
ray_cc_library(
179+
name = "bundle_scheduling_policy",
180+
srcs = ["policy/bundle_scheduling_policy.cc"],
181+
hdrs = ["policy/bundle_scheduling_policy.h"],
182+
deps = [
183+
":cluster_resource_manager",
184+
":scheduling_context",
185+
":scheduling_policy",
186+
":scorer",
187+
"//src/ray/common:task_common",
188+
],
189+
)
190+
191+
ray_cc_library(
192+
name = "composite_scheduling_policy",
193+
srcs = ["policy/composite_scheduling_policy.cc"],
194+
hdrs = ["policy/composite_scheduling_policy.h"],
195+
deps = [
196+
":affinity_with_bundle_scheduling_policy",
197+
":bundle_scheduling_policy",
198+
":cluster_resource_manager",
199+
":hybrid_scheduling_policy",
200+
":node_affinity_scheduling_policy",
201+
":node_label_scheduling_policy",
202+
":random_scheduling_policy",
203+
":spread_scheduling_policy",
204+
],
205+
)
206+
207+
ray_cc_library(
208+
name = "hybrid_scheduling_policy",
209+
srcs = ["policy/hybrid_scheduling_policy.cc"],
210+
hdrs = ["policy/hybrid_scheduling_policy.h"],
211+
deps = [
212+
":scheduling_policy",
213+
"@com_google_absl//absl/random",
214+
"@com_google_absl//absl/random:bit_gen_ref",
215+
"@com_google_googletest//:gtest_prod",
216+
],
217+
)
218+
219+
ray_cc_library(
220+
name = "node_affinity_scheduling_policy",
221+
srcs = ["policy/node_affinity_scheduling_policy.cc"],
222+
hdrs = ["policy/node_affinity_scheduling_policy.h"],
223+
deps = [
224+
":hybrid_scheduling_policy",
225+
":scheduling_policy",
226+
],
227+
)
228+
229+
ray_cc_library(
230+
name = "node_label_scheduling_policy",
231+
srcs = ["policy/node_label_scheduling_policy.cc"],
232+
hdrs = ["policy/node_label_scheduling_policy.h"],
233+
deps = [
234+
":scheduling_context",
235+
":scheduling_policy",
236+
],
237+
)
238+
239+
ray_cc_library(
240+
name = "random_scheduling_policy",
241+
srcs = ["policy/random_scheduling_policy.cc"],
242+
hdrs = ["policy/random_scheduling_policy.h"],
243+
deps = [":scheduling_policy"],
244+
)
245+
246+
ray_cc_library(
247+
name = "spread_scheduling_policy",
248+
srcs = ["policy/spread_scheduling_policy.cc"],
249+
hdrs = ["policy/spread_scheduling_policy.h"],
250+
deps = [
251+
":hybrid_scheduling_policy",
252+
":scheduling_policy",
253+
"//src/ray/util:container_util",
254+
],
255+
)
256+
257+
ray_cc_library(
258+
name = "scorer",
259+
srcs = ["policy/scorer.cc"],
260+
hdrs = ["policy/scorer.h"],
261+
deps = ["//src/ray/common:task_common"],
262+
)
263+
264+
ray_cc_library(
265+
name = "scheduling_policy",
266+
hdrs = ["policy/scheduling_policy.h"],
267+
deps = [
268+
":scheduling_options",
269+
"//src/ray/common:task_common",
270+
],
271+
)
272+
273+
ray_cc_test(
274+
name = "cluster_resource_scheduler_test",
275+
size = "small",
276+
srcs = [
277+
"cluster_resource_scheduler_test.cc",
278+
],
279+
tags = ["team:core"],
280+
deps = [
281+
":ray_mock",
282+
":raylet_lib",
283+
"@com_google_googletest//:gtest_main",
284+
],
285+
)
286+
287+
ray_cc_test(
288+
name = "local_resource_manager_test",
289+
size = "small",
290+
srcs = [
291+
"local_resource_manager_test.cc",
292+
],
293+
tags = ["team:core"],
294+
deps = [
295+
":ray_mock",
296+
":raylet_lib",
297+
"@com_google_googletest//:gtest_main",
298+
],
299+
)
300+
301+
ray_cc_test(
302+
name = "cluster_resource_scheduler_2_test",
303+
size = "small",
304+
srcs = [
305+
"cluster_resource_scheduler_2_test.cc",
306+
],
307+
tags = ["team:core"],
308+
deps = [
309+
":raylet_lib",
310+
"@com_google_googletest//:gtest_main",
311+
],
312+
)
313+
314+
ray_cc_test(
315+
name = "scheduling_policy_test",
316+
size = "small",
317+
srcs = [
318+
"policy/scheduling_policy_test.cc",
319+
],
320+
tags = ["team:core"],
321+
deps = [
322+
":raylet_lib",
323+
"@com_google_googletest//:gtest_main",
324+
],
325+
)
326+
327+
ray_cc_test(
328+
name = "hybrid_scheduling_policy_test",
329+
size = "small",
330+
srcs = [
331+
"policy/hybrid_scheduling_policy_test.cc",
332+
],
333+
tags = ["team:core"],
334+
deps = [
335+
":scheduler",
336+
"@com_google_absl//absl/random:mock_distributions",
337+
"@com_google_googletest//:gtest_main",
338+
],
339+
)
340+
341+
ray_cc_test(
342+
name = "cluster_task_manager_test",
343+
size = "small",
344+
srcs = [
345+
"cluster_task_manager_test.cc",
346+
],
347+
tags = ["team:core"],
348+
deps = [
349+
":ray_mock",
350+
":raylet_lib",
351+
"@com_google_googletest//:gtest_main",
352+
],
353+
)
354+
355+
ray_cc_test(
356+
name = "cluster_resource_manager_test",
357+
size = "small",
358+
srcs = [
359+
"cluster_resource_manager_test.cc",
360+
],
361+
tags = ["team:core"],
362+
deps = [
363+
":raylet_lib",
364+
"@com_google_googletest//:gtest_main",
365+
],
366+
)

src/ray/raylet/scheduling/cluster_resource_manager.cc

-2
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,12 @@
1414

1515
#include "ray/raylet/scheduling/cluster_resource_manager.h"
1616

17-
#include <boost/algorithm/string.hpp>
1817
#include <string>
1918
#include <utility>
2019
#include <vector>
2120

2221
#include "ray/common/grpc_util.h"
2322
#include "ray/common/ray_config.h"
24-
#include "ray/util/container_util.h"
2523

2624
namespace ray {
2725

src/ray/raylet/scheduling/cluster_resource_manager.h

-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
#include <vector>
2424

2525
#include "absl/container/flat_hash_map.h"
26-
#include "absl/container/flat_hash_set.h"
2726
#include "ray/common/bundle_location_index.h"
2827
#include "ray/common/scheduling/cluster_resource_data.h"
2928
#include "ray/common/scheduling/fixed_point.h"

0 commit comments

Comments
 (0)