Browse Source

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 <jwata@google.com>
Commit-Queue: Michael Savigny <msavigny@google.com>
Michael Savigny 1 year ago
parent
commit
8d97b6d89b
1 changed files with 9 additions and 0 deletions
  1. 9 0
      reclient_helper.py

+ 9 - 0
reclient_helper.py

@@ -251,6 +251,13 @@ def set_racing_defaults():
     os.environ.setdefault("RBE_racing_bias", "0.95")
     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
 @contextlib.contextmanager
 def build_context(argv, tool):
 def build_context(argv, tool):
     # If use_remoteexec is set, but the reclient binaries or configs don't
     # 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')
     remote_disabled = os.environ.get('RBE_remote_disabled')
     if remote_disabled not in ('1', 't', 'T', 'true', 'TRUE', 'True'):
     if remote_disabled not in ('1', 't', 'T', 'true', 'TRUE', 'True'):
         set_racing_defaults()
         set_racing_defaults()
+        if sys.platform == "darwin":
+            set_mac_defaults()
 
 
     # TODO(b/292523514) remove this once a fix is landed in reproxy
     # TODO(b/292523514) remove this once a fix is landed in reproxy
     remove_mdproxy_from_path()
     remove_mdproxy_from_path()