WebKit Bugzilla
Attachment 356948 Details for
Bug 192490
: webkitpy: WinCairoPort.default_child_processes should return the appropriate default number of DumpRenderTree processes
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
WIP patch
a.diff (text/plain), 2.21 KB, created by
Fujii Hironori
on 2018-12-10 00:19:28 PST
(
hide
)
Description:
WIP patch
Filename:
MIME Type:
Creator:
Fujii Hironori
Created:
2018-12-10 00:19:28 PST
Size:
2.21 KB
patch
obsolete
>diff --git a/Tools/Scripts/webkitpy/common/system/platforminfo.py b/Tools/Scripts/webkitpy/common/system/platforminfo.py >index d8de317c37a..f8acd0e5d3a 100644 >--- a/Tools/Scripts/webkitpy/common/system/platforminfo.py >+++ b/Tools/Scripts/webkitpy/common/system/platforminfo.py >@@ -119,6 +119,9 @@ class PlatformInfo(object): > def total_bytes_memory(self): > if self.is_mac(): > return long(self._executive.run_command(["sysctl", "-n", "hw.memsize"])) >+ elif self.is_win(): >+ import win32api >+ return win32api.GlobalMemoryStatusEx()['TotalPhys'] > return None > > def terminal_width(self): >diff --git a/Tools/Scripts/webkitpy/port/win.py b/Tools/Scripts/webkitpy/port/win.py >index 4c287f40e4d..251b3402572 100644 >--- a/Tools/Scripts/webkitpy/port/win.py >+++ b/Tools/Scripts/webkitpy/port/win.py >@@ -490,3 +490,19 @@ class WinCairoPort(WinPort): > fallback_names = ['wincairo-' + version_name_map.to_name(version, platform=self.port_name).lower().replace(' ', '') for version in fallback_versions] > fallback_names.append('wincairo') > return map(self._webkit_baseline_path, fallback_names) >+ >+ def default_child_processes(self, **kwargs): >+ default_count = super(WinCairoPort, self).default_child_processes() >+ >+ # Make sure we have enough ram to support that many instances: >+ total_memory = self.host.platform.total_bytes_memory() >+ if total_memory: >+ bytes_per_drt = 256 * 1024 * 1024 # Assume each DRT needs 256MB to run. >+ overhead = 2048 * 1024 * 1024 # Assume we need 2GB free for the O/S >+ supportable_instances = max((total_memory - overhead) / bytes_per_drt, 1) # Always use one process, even if we don't have space for it. >+ if supportable_instances < default_count: >+ _log.warning("This machine could support %s child processes, but only has enough memory for %s." % (default_count, supportable_instances)) >+ else: >+ _log.warning("Cannot determine available memory for child processes, using default child process count of %s." % default_count) >+ supportable_instances = default_count >+ return min(supportable_instances, default_count)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 192490
: 356948