Skip to content

Commit 5057713

Browse files
committed
Limit parallelism in master.cfg
1 parent 00b2359 commit 5057713

1 file changed

Lines changed: 17 additions & 3 deletions

File tree

master/master.cfg

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ from buildbot.changes.filter import ChangeFilter
1717
from buildbot.config import BuilderConfig
1818
from buildbot.locks import WorkerLock
1919
from buildbot.process.factory import BuildFactory
20-
from buildbot.process.properties import Interpolate, Property, Transform
20+
from buildbot.process.properties import Interpolate, Property, Transform, renderer
2121
from buildbot.reporters.generators.build import BuildStartEndStatusGenerator
2222
from buildbot.reporters.github import GitHubStatusPush
2323
from buildbot.reporters.message import MessageFormatterRenderable
@@ -50,6 +50,20 @@ def Merge(prop, *args):
5050
# a shorter alias to save typing.
5151
c = BuildmasterConfig = {}
5252

53+
54+
@renderer
55+
def jobs_per_build(props):
56+
worker_info = props.getBuild().getWorkerInfo()
57+
numcpus = int(worker_info.get("numcpus", 1))
58+
workername = props.getProperty("workername", "")
59+
max_builds = 1
60+
for w in c["workers"]:
61+
if w.name == workername:
62+
max_builds = w.max_builds or 1
63+
break
64+
return str(max(1, numcpus // max_builds))
65+
66+
5367
# SERVER SETTINGS
5468

5569
REPO_DIR = Path(__file__).parent.parent.resolve()
@@ -512,7 +526,7 @@ def get_cmake_definitions(builder_type, halide_target="host", wasm_jit="wabt", e
512526

513527

514528
def get_build_command(build_dir, targets=None):
515-
cmd = ["cmake", "--build", build_dir]
529+
cmd = ["cmake", "--build", build_dir, "-j", jobs_per_build]
516530

517531
if targets:
518532
cmd.append("--target")
@@ -1098,7 +1112,7 @@ def add_test_steps(factory, builder_type):
10981112
timeout=3600,
10991113
labels=parallel_test_labels,
11001114
exclude_tests=exclude_tests,
1101-
jobs=Interpolate("%(worker:numcpus)s"),
1115+
jobs=jobs_per_build,
11021116
**get_ctest_options(builder_type),
11031117
)
11041118
)

0 commit comments

Comments
 (0)