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

Unified Diff: third_party/cld_2/README.chromium

Issue 187393005: Make it possible to read CLD data from a file (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Final rebase Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/translate/translate_helper.cc ('k') | third_party/cld_2/cld_2.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/cld_2/README.chromium
diff --git a/third_party/cld_2/README.chromium b/third_party/cld_2/README.chromium
index b203255e03a309e727e7a5a5c4b6c9258ce37ff7..7db316386a2f9876db25b64f81ea3c19b6849431 100644
--- a/third_party/cld_2/README.chromium
+++ b/third_party/cld_2/README.chromium
@@ -8,3 +8,42 @@ Security Critical: yes
Description:
The CLD is used to determine the language of text. In Chromium, this is used
to determine if Chrome should offer Translate UX to the user.
+
+
+Dynamic Mode
+============
+Prior to CLD2's trunk@155, Chromium has always built CLD2 statically. The data
+needed for CLD2 to perform its language detection has been compiled straight
+into the binary. This contributes around 1.5 megabytes to the size of Chrome
+and embeds one or more large rodata sections to the executable.
+
+Starting with CLD2's trunk@r155, there is a new option available: dynamic mode.
+In dynamic mode, CLD2 is built without its data; only the code is compiled, and
+the data must be supplied at runtime via a file or a pointer to a (presumably
+mmap'ed) read-only region of memory.
+
+Tradeoffs to consider before enabling dynamic mode:
+
+ Pros:
+ * Reduces the size of the Chromium binary by a bit over a megabyte.
+ * As the data file rarely changes, it can be updated independently.
+ * Depending upon the update process on your platform, this may also reduce
+ the size of Chromium updates.
+ * It is possible to run Chromium without CLD2 data at all (language
+ detection will always fail, but fails gracefully).
+ * Different types of CLD2 data files (larger and more accurate or smaller
+ and less accurate) can be dynamically downloaded or chosen depending
+ on runtime choices.
+
+ Cons:
+ * Data files must be generated and checked into source control by hand.
+ * At runtime a data file must be opened and its headers parsed before CLD2
+ can be used in any given process (this time should be negligible in most
+ circumstances). This will prevent language detection from working until
+ a data file has been loaded.
+
+To enable dynamic mode, set 'cld_dynamic' to '1' in ../../build/common.gypi.
+
+For more information on the changes required to use dynamic mode, see:
+ https://codereview.chromium.org/187393005
+
« no previous file with comments | « chrome/renderer/translate/translate_helper.cc ('k') | third_party/cld_2/cld_2.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698