Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(144)

Issue 20766003: [Telemetry] Add the ability to flush the system file cache to platform. (Closed)

Created:
7 years, 4 months ago by James Simonsen
Modified:
7 years, 4 months ago
Reviewers:
tonyg, bulach, dtu, nduca
CC:
chromium-reviews, chrome-speed-team+watch_google.com, telemetry+watch_chromium.org
Visibility:
Public.

Description

[Telemetry] Add the ability to flush the system file cache to platform. The cold startup test will use this to flush Chrome and its profile from the OS cache. There are two ways of flushing the cache: flush everything or flush specific files. The latter is done using clear_system_cache, which was checked in earlier. However, there are pros and cons to each approach. On Windows, clear_system_cache works well, so we prefer that. Clearing the entire cache requires privelege escalation and a third-party utility. On Linux, clear_system_cache works well. Clearing the entire cache requires root. On Mac, clear_system_cache only seems to partially flush the cache. That's not good enough. Fortunately, flushing the entire cache works and can be done without escalated priveleges. Android flushes the whole cache with escalated priveleges. To decide which method to use. Each platform must implement CanFlushIndividualFilesFromSystemCache(). Currently, flushing is unimplemented on CrOS. I will add it when I get an environment set up. BUG=None Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=214617

Patch Set 1 #

Total comments: 12

Patch Set 2 : Split CrOS from Linux #

Total comments: 2

Patch Set 3 : Support Android #

Total comments: 1

Patch Set 4 : Simpler Android support #

Unified diffs Side-by-side diffs Delta from patch set Stats (+227 lines, -63 lines) Patch
M tools/telemetry/telemetry/core/chrome/desktop_browser_finder.py View 1 4 chunks +24 lines, -25 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/__init__.py View 1 chunk +20 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/android_platform_backend.py View 1 2 3 1 chunk +10 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/cros_platform_backend.py View 1 3 chunks +21 lines, -2 lines 0 comments Download
A tools/telemetry/telemetry/core/platform/desktop_platform_backend.py View 1 1 chunk +51 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/linux_platform_backend.py View 1 2 chunks +16 lines, -32 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/mac_platform_backend.py View 1 2 chunks +9 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/platform_backend.py View 1 chunk +9 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/posix_platform_backend.py View 2 chunks +4 lines, -2 lines 0 comments Download
A tools/telemetry/telemetry/core/platform/proc_util.py View 1 1 chunk +42 lines, -0 lines 0 comments Download
M tools/telemetry/telemetry/core/platform/win_platform_backend.py View 2 chunks +8 lines, -2 lines 0 comments Download
M tools/telemetry/telemetry/core/util.py View 1 1 chunk +13 lines, -0 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
James Simonsen
Patch #3 of 5.
7 years, 4 months ago (2013-07-26 19:31:12 UTC) #1
nduca
https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/win_platform_backend.py File tools/telemetry/telemetry/core/platform/win_platform_backend.py (right): https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/win_platform_backend.py#newcode166 tools/telemetry/telemetry/core/platform/win_platform_backend.py:166: def GetFlushUtilityName(self): so a person downloads telemetry and hasn't ...
7 years, 4 months ago (2013-07-26 21:34:27 UTC) #2
James Simonsen
On 2013/07/26 21:34:27, nduca wrote: > https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/win_platform_backend.py > File tools/telemetry/telemetry/core/platform/win_platform_backend.py (right): > > https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/win_platform_backend.py#newcode166 > ...
7 years, 4 months ago (2013-07-26 21:39:29 UTC) #3
tonyg
https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/desktop_platform_backend.py File tools/telemetry/telemetry/core/platform/desktop_platform_backend.py (right): https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/desktop_platform_backend.py#newcode11 tools/telemetry/telemetry/core/platform/desktop_platform_backend.py:11: class DesktopPlatformBackend(platform_backend.PlatformBackend): One wrinkle is that CrosPlatformBackend is a ...
7 years, 4 months ago (2013-07-27 00:02:58 UTC) #4
James Simonsen
https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/desktop_platform_backend.py File tools/telemetry/telemetry/core/platform/desktop_platform_backend.py (right): https://codereview.chromium.org/20766003/diff/1/tools/telemetry/telemetry/core/platform/desktop_platform_backend.py#newcode11 tools/telemetry/telemetry/core/platform/desktop_platform_backend.py:11: class DesktopPlatformBackend(platform_backend.PlatformBackend): On 2013/07/27 00:02:58, tonyg wrote: > One ...
7 years, 4 months ago (2013-07-27 02:50:51 UTC) #5
tonyg
lgtm - very clean We can move the cache clearing binary into the cloud in ...
7 years, 4 months ago (2013-07-27 20:15:36 UTC) #6
bulach
drive-by for android: https://codereview.chromium.org/20766003/diff/9001/tools/telemetry/telemetry/core/platform/android_platform_backend.py File tools/telemetry/telemetry/core/platform/android_platform_backend.py (right): https://codereview.chromium.org/20766003/diff/9001/tools/telemetry/telemetry/core/platform/android_platform_backend.py#newcode130 tools/telemetry/telemetry/core/platform/android_platform_backend.py:130: raise NotImplementedError() it is! :) cache_control ...
7 years, 4 months ago (2013-07-29 10:17:29 UTC) #7
James Simonsen
https://codereview.chromium.org/20766003/diff/9001/tools/telemetry/telemetry/core/platform/android_platform_backend.py File tools/telemetry/telemetry/core/platform/android_platform_backend.py (right): https://codereview.chromium.org/20766003/diff/9001/tools/telemetry/telemetry/core/platform/android_platform_backend.py#newcode130 tools/telemetry/telemetry/core/platform/android_platform_backend.py:130: raise NotImplementedError() On 2013/07/29 10:17:29, bulach wrote: > it ...
7 years, 4 months ago (2013-07-29 21:41:11 UTC) #8
dtu
https://codereview.chromium.org/20766003/diff/28001/tools/telemetry/telemetry/core/perf_tests_helper.py File tools/telemetry/telemetry/core/perf_tests_helper.py (right): https://codereview.chromium.org/20766003/diff/28001/tools/telemetry/telemetry/core/perf_tests_helper.py#newcode22 tools/telemetry/telemetry/core/perf_tests_helper.py:22: perf_tests_helper.CacheControl Oh, that's why :) Uhm, this method is ...
7 years, 4 months ago (2013-07-29 22:19:28 UTC) #9
James Simonsen
On 2013/07/29 22:19:28, Dave Tu wrote: > https://codereview.chromium.org/20766003/diff/28001/tools/telemetry/telemetry/core/perf_tests_helper.py > File tools/telemetry/telemetry/core/perf_tests_helper.py (right): > > https://codereview.chromium.org/20766003/diff/28001/tools/telemetry/telemetry/core/perf_tests_helper.py#newcode22 ...
7 years, 4 months ago (2013-07-29 22:39:27 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/simonjam@chromium.org/20766003/40001
7 years, 4 months ago (2013-07-30 20:58:57 UTC) #11
commit-bot: I haz the power
7 years, 4 months ago (2013-07-31 07:24:23 UTC) #12
Message was sent while issue was closed.
Change committed as 214617

Powered by Google App Engine
This is Rietveld 408576698