Index: content/public/common/content_switches.cc |
diff --git a/content/public/common/content_switches.cc b/content/public/common/content_switches.cc |
index b87df7f8f2d4a75c01367d7858920e4ec9fd1d76..c7c03a4b2f085a2a73d18d281ba9e309761ca1da 100644 |
--- a/content/public/common/content_switches.cc |
+++ b/content/public/common/content_switches.cc |
@@ -966,6 +966,32 @@ const char kDisableCoreAnimationPlugins[] = |
#endif |
#if defined(OS_WIN) |
+// /prefetch:# arguments to use when launching various process types. It has |
+// been observed that when file reads are consistent for 3 process launches with |
+// the same /prefetch:# argument, the Windows prefetcher starts issuing reads in |
+// batch at process launch. Because reads depend on the process type, the |
+// prefetcher wouldn't be able to observe consistent reads if no /prefetch:# |
+// arguments were used. Note that the browser process has no /prefetch:# |
+// argument; as such all other processes must have one in order to avoid |
+// polluting its profile. Note: # must always be in [1, 8]; otherwise it is |
+// ignored by the// Windows prefetcher. |
gab
2016/01/29 19:39:28
rm "//" mid sentence.
fdoray
2016/02/01 13:28:26
Done.
|
+const char kPrefetchArgumentRenderer[] = "/prefetch:1"; |
+const char kPrefetchArgumentGpu[] = "/prefetch:2"; |
+const char kPrefetchArgumentPpapi[] = "/prefetch:3"; |
+const char kPrefetchArgumentPpapiBroker[] = "/prefetch:4"; |
+ |
gab
2016/01/29 19:39:28
I'd remove this empty line to make it even clearer
fdoray
2016/02/01 13:28:26
Done.
|
+// /prefetch:5 is unused to this date and can be claimed by a new process type. |
+// /prefetch:6 and /prefetch:7 are reserved for content embedders and are not to |
+// be used by content itself. |
+ |
+// /prefetch:# argument shared by all process types that don't have their own. |
+// It is likely that the prefetcher won't work for these process types as it |
+// won't be able to observe consistent file reads across launches. However, |
+// having a valid prefetch argument for these process types is required to |
+// prevent them from interfering with the prefetch profile of the browser |
+// process. |
+const char kPrefetchArgumentOther[] = "/prefetch:8"; |
+ |
// Device scale factor passed to certain processes like renderers, etc. |
const char kDeviceScaleFactor[] = "device-scale-factor"; |