From 8d97b6d89b27c8552879a763cf5830e89a39a7a0 Mon Sep 17 00:00:00 2001 From: Michael Savigny Date: Fri, 1 Dec 2023 16:53:43 +0000 Subject: [PATCH] Add mac-specific reclient tweak. Set cas_concurrency for mac builds to 100. It doesn't affect performance on high-speed networks, but has shown an improvement on networks prone to congestion. Note that these adjustments have been checked out for builds on macs, and the cas_concurrency value being a default of 100 for mac doesn't mean it should be the default for other oses. Bug: b/304616237 Change-Id: I9431fdb35737f9f2b236296625af2f2a31e52754 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/5075857 Reviewed-by: Junji Watanabe Commit-Queue: Michael Savigny --- reclient_helper.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/reclient_helper.py b/reclient_helper.py index a7000e8d08..7686fa518a 100644 --- a/reclient_helper.py +++ b/reclient_helper.py @@ -251,6 +251,13 @@ def set_racing_defaults(): os.environ.setdefault("RBE_racing_bias", "0.95") +def set_mac_defaults(): + # Reduce the cas concurrency on macs. Lower value doesn't impact + # performance when on high-speed connection, but does show improvements + # on easily congested networks. + os.environ.setdefault("RBE_cas_concurrency", "100") + + @contextlib.contextmanager def build_context(argv, tool): # If use_remoteexec is set, but the reclient binaries or configs don't @@ -288,6 +295,8 @@ def build_context(argv, tool): remote_disabled = os.environ.get('RBE_remote_disabled') if remote_disabled not in ('1', 't', 'T', 'true', 'TRUE', 'True'): set_racing_defaults() + if sys.platform == "darwin": + set_mac_defaults() # TODO(b/292523514) remove this once a fix is landed in reproxy remove_mdproxy_from_path()