OSDN Git Service

FDO: Only support locally
authorsynergydev <synergye@codefi.re>
Wed, 14 Aug 2013 00:41:52 +0000 (17:41 -0700)
committerSynergy Dev <synergye@codefi.re>
Tue, 3 Sep 2013 20:53:20 +0000 (20:53 +0000)
commit7c4674205c1e2ab4106b99e07434ca31687736ac
tree91a6ec3a6bac28487b469aef8bf6176725bc1be2
parentd58df2de78b798f8fc301afcfeb61f574629b8ce
FDO: Only support locally

The issues:
  - The size increase from utilizing FDO is quite large while
    utilizing runtime profiles in build.
  - By default, FDO is utilized globally if the target arch variant
    profiles exist.
  - Not all modules can show statistical significance in
    performance comparison, yet still suffer the size increase.

The solution:
  - Only enable FDO locally with LOCAL_FDO_SUPPORT
    for modules which may benefit enough to justify the size
    tradeoff.

Solution notes:
  - I've noted statistical significance in libwebcore and libskia
    thus far from utilizing FDO.
  - Analysis included sunspider, drawcanvas benchmarks, as
    well as gooda analysis on both arm and x86
  - To support runtime profile generation in modules which have
    LOCAL_FDO_SUPPORT specified,
    BUILD_FDO_INSTRUMENTATION is still used. Otherwise,
    if the target arch variant profiles exist, FDO is utilized for
    specified modules.

Change-Id: I7e95266943ff47c7d82b02e6200fd09911d0bb57
core/binary.mk
core/clear_vars.mk