New issue
Advanced search Search tips

Issue 848273 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 848253
Owner:
Closed: May 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug-Regression



Sign in to add a comment

100.9 KiB regression in resource_sizes (MonochromePublic.apk) at 563170:563170

Project Member Reported by huangs@google.com, May 31 2018

Issue description

Caused by “Roll AFDO from 69.0.3444.0_rc-r1 to 69.0.3446.0_rc-r1”

Commit: 1ba598d0444530abd3d5f116e6ab70f2b055c651

Link to size graph: https://chromeperf.appspot.com/group_report?keys=agxzfmNocm9tZXBlcmZyFAsSB0Fub21hbHkYgICQsY2usQkM

Debugging size regressions is documented at: https://chromium.googlesource.com/chromium/src/+/master/docs/speed/apk_size_regressions.md#Debugging-Apk-Size-Increase

Based on the graph: 100.9 KiB of native code.


 
Project Member

Comment 1 by 42576172...@developer.gserviceaccount.com, May 31 2018

All graphs for this bug:
  https://chromeperf.appspot.com/group_report?bug_id=848273

(For debugging:) Original alerts at time of bug-filing:
  https://chromeperf.appspot.com/group_report?sid=6406a286638bbd1e6e013b1c40997a8a3866d71a8e27732d7a5f7ae36f93dd2a


Bot(s) for this bug's original alert(s):

Android Builder Perf
Project Member

Comment 2 by 42576172...@developer.gserviceaccount.com, May 31 2018

Assigning to sheriff gbiv@chromium.org because this autoroll is the only CL in range:
Roll AFDO from 69.0.3444.0_rc-r1 to 69.0.3446.0_rc-r1

This CL may cause a small binary size increase, roughly proportional
to how long it's been since our last AFDO profile roll. For larger
increases (around or exceeding 100KB), please file a bug against
gbiv@chromium.org. Additional context:  https://crbug.com/805539 

The AutoRoll server is located here: https://afdo-chromium-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


TBR=gbiv@chromium.org

Change-Id: Ic1f4df5dd1b4ddaa06d0e00ef088e85fa6d8d3e3
Reviewed-on: https://chromium-review.googlesource.com/1080451
Reviewed-by: afdo-chromium-autoroll <afdo-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: afdo-chromium-autoroll <afdo-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#563170}

Comment 3 by huangs@google.com, May 31 2018

Command to run to see details:

tools/binary_size/diagnose_bloat.py --cloud 1ba598d0444530abd3d5f116e6ab70f2b055c651

Output:

******************************Native Diff******************************
Common Metadata:
    apk_file_name=apks/MonochromePublic.apk
    elf_arch=arm
    elf_file_name=lib.unstripped/libmonochrome.so
    gn_args=ffmpeg_branding="Chrome" goma_dir="/b/build/slave/goma_cache/client" is_chrome_branded=true is_debug=false is_official_build=true proprietary_codecs=true strip_absolute_paths_from_debug_symbols=true symbol_level=1 target_os="android" use_goma=true
    map_file_name=lib.unstripped/libmonochrome.so.map.gz
    tool_prefix=third_party/llvm-build/Release+Asserts/bin/llvm-
Old Metadata:
    apk_size=67476601
    elf_build_id=78a614cf51a7250e03ca87a765bdc7318e2f6dcb
    elf_mtime=2018-05-31 08:10:31
    git_revision=1bd58466eab023e8c734d1e63bd997daed4b3e30
New Metadata:
    apk_size=67579003
    elf_build_id=d81af5d11bd57d08c446ab9bc86885b1e3414171
    elf_mtime=2018-05-31 08:28:50
    git_revision=1ba598d0444530abd3d5f116e6ab70f2b055c651

Section Sizes (Total=100kb (102402 bytes)):
    .bss: 0 bytes (0 bytes) (not included in totals)
    .data: 0 bytes (0 bytes) (0.0%)
    .data.rel.ro: 0 bytes (0 bytes) (0.0%)
    .dex: 0 bytes (0 bytes) (0.0%)
    .other: -1230 bytes (-1230 bytes) (-1.2%)
    .pak.nontranslated: 0 bytes (0 bytes) (0.0%)
    .pak.translations: 0 bytes (0 bytes) (0.0%)
    .rel.dyn: 0 bytes (0 bytes) (0.0%)
    .rodata: 0 bytes (0 bytes) (0.0%)
    .text: 101kb (103632 bytes) (101.2%)

559 symbols added (+), 15322 changed (~), 572 removed (-), 966914 unchanged (not shown)
Of changed symbols, 9769 grew, 6684 shrank
Number of unique symbols 615701 -> 615523 (-178)
0 paths added, 0 removed, 4049 changed

Showing 16,453 symbols (2,226 -> 2,048 unique) with total pss: 102401 bytes
Histogram of symbols based on PSS:
    (-8192,-4096]: 1    (-256,-128]: 81    (-8,-4]: 302      [1,2): 220      [32,64): 161     [1024,2048): 7
    (-4096,-2048]: 1     (-128,-64]: 151   (-4,-2]: 199      [2,4): 203     [64,128): 190     [2048,4096): 13
    (-2048,-1024]: 9      (-64,-32]: 214   (-2,-1]: 270      [4,8): 241    [128,256): 114     [4096,8192): 5
     (-1024,-512]: 18     (-32,-16]: 170    (-1,0): 5017    [8,16): 193    [256,512): 74    [16384,32768): 1
      (-512,-256]: 43      (-16,-8]: 208     (0,1): 8169   [16,32): 146   [512,1024): 32
.text=101kb      .rodata=0 bytes    .data.rel.ro=0 bytes    .data=0 bytes    .bss=0 bytes    .dex=0 bytes    .dex.method=0 bytes    .pak.translations=0 bytes    .pak.nontranslated=0 bytes    .other=-1230 bytes total=100kb
Number of unique paths: 4056

Section Legend: t=.text, r=.rodata, R=.data.rel.ro, d=.data, b=.bss, x=.dex, m=.dex.method, p=.pak.translations, P=.pak.nontranslated, o=.other
Index | Running Total | Section@Address | Δ PSS (Δ size_without_padding) | Path
------------------------------------------------------------
~ 0)      25656 (25.1%) t@0xe11538   25656 (17764->43420) v8/src/heap/concurrent-marking.cc
               v8::internal::ConcurrentMarking::Run
~ 1)      32268 (31.5%) t@0xe44658   6612 (3340->9952)  v8/src/heap/mark-compact.cc
               v8::internal::MarkCompactCollector::ProcessMarkingWorklist
~ 2)      38584 (37.7%) t@0x76f670   6316 (1844->8160)  third_party/skia/src/shaders/gradients/Sk4fLinearGradient.cpp
               SkLinearGradient::LinearGradient4fContext::shadeSpan
~ 3)      44276 (43.2%) t@0x1f33b4c  5692 (47820->53512) third_party/blink/renderer/core/html/parser/html_tokenizer.cc
               blink::HTMLTokenizer::NextToken
~ 4)      49680 (48.5%) t@0xe60234   5404 (3736->9140)  v8/src/heap/scavenger.cc
               v8::internal::BodyDescriptorApply<>
~ 5)      45276 (44.2%) t@0x1336174  -4404 (5056->652)  third_party/skia/src/gpu/ops/GrAAConvexPathRenderer.cpp
               AAConvexPathOp::onPrepareDraws
+ 6)      49572 (48.4%) t@0xe1d80c   4296 (0->4296)     v8/src/heap/concurrent-marking.cc
               v8::internal::ConcurrentMarkingVisitor::VisitMap
~ 7)      53600 (52.3%) t@0xda04d0   4028 (27868->31896) v8/src/compiler/simplified-lowering.cc
               v8::internal::compiler::RepresentationSelector::VisitNode
- 8)      49940 (48.8%) t@0x0        -3660 (3648->0)    third_party/skia/src/shaders/gradients/Sk4fLinearGradient.cpp
               SkLinearGradient::LinearGradient4fContext::shadePremulSpan<> const
~ 9)      53472 (52.2%) t@0x1686ac4  3532 (21364->24896) third_party/sqlite/amalgamation/sqlite3.c
               sqlite3VdbeExec
~ 10)     56156 (54.8%) t@0x11ed860  2684 (740->3424)   third_party/icu/source/i18n/dtfmtsym.cpp
               icu_61::DateFormatSymbols::copyData
~ 11)     58528 (57.2%) t@0xe5b25c   2372 (2576->4948)  v8/src/heap/scavenger.cc
               v8::internal::Scavenger::Process
~ 12)     60796 (59.4%) t@0x69e438   2268 (2076->4344)  third_party/skia/src/core/SkMaskBlurFilter.cpp
               SkMaskBlurFilter::blur const
~ 13)     63060 (61.6%) t@0x1d25960  2264 (684->2948)   v8/src/base/ieee754.cc
               v8::base::ieee754::__ieee754_rem_pio2
+ 14)     65324 (63.8%) t@0xe1edc8   2264 (0->2264)     v8/src/heap/concurrent-marking.cc
               v8::internal::ConcurrentMarkingVisitor::VisitLeftTrimmableArray<>
~ 15)     67560 (66.0%) t@0x1d26f18  2236 (1484->3720)  v8/src/base/ieee754.cc
               v8::base::ieee754::sin
~ 16)     69764 (68.1%) t@0xd234b4   2204 (3944->6148)  v8/src/compiler/escape-analysis.cc
               v8::internal::compiler::EscapeAnalysis::Reduce
~ 17)     71942 (70.3%) t@0xd7b4a8   2178 (570->2748)   v8/src/compiler/move-optimizer.cc
               v8::internal::compiler::MoveOptimizer::Run
~ 18)     74074 (72.3%) t@0x1d24a70  2132 (1692->3824)  v8/src/base/ieee754.cc
               v8::base::ieee754::cos
+ 19)     76186 (74.4%) t@0x13368ae  2112 (0->2112)     third_party/skia/src/gpu/ops/GrAAConvexPathRenderer.cpp
               create_vertices
~ 20)     78262 (76.4%) t@0x13382d0  2076 (424->2500)   third_party/skia/src/gpu/ops/GrAAFillRectOp.cpp
               AAFillRectOp::onPrepareDraws
- 21)     76490 (74.7%) t@0x0        -1772 (1772->0)    v8/src/heap/concurrent-marking.cc
               v8::internal::ConcurrentMarkingVisitor::VisitWeakCell
~ 22)     78262 (76.4%) t@0xe2797c   1772 (40->1812)    v8/src/heap/factory.cc
               v8::internal::Factory::NewJSArray
~ 23)     80022 (78.1%) t@0x7991c8   1760 (21720->23480) third_party/freetype/src/src/psaux/psaux.c
               cf2_interpT2CharString
- 24)     78410 (76.6%) t@0x0        -1612 (1600->0)    third_party/skia/src/shaders/gradients/Sk4fLinearGradient.cpp
               SkLinearGradient::LinearGradient4fContext::shadeSpanInternal<> const
- 25)     76810 (75.0%) t@0x0        -1600 (1600->0)    third_party/skia/src/shaders/gradients/Sk4fLinearGradient.cpp
               SkLinearGradient::LinearGradient4fContext::shadeSpanInternal<> const


******************************Resource Sizes Diff******************************
MonochromePublic.apk_Breakdown (+102,402 bytes)
      +922 bytes Zip Overhead
      -922 bytes unwind_cfi (dev and canary only) size
  +102,400 bytes Native code size
        +2 bytes Package metadata size
MonochromePublic.apk_Specifics
  +103,324 bytes normalized apk size
  +102,400 bytes main lib size

I  55157 See detailed diff results here: out/binary-size-results/diffs/1bd58466eab023e8c734d1e63bd997daed4b3e30..1ba598d0444530abd3d5f116e6ab70f2b055c651/diff_results.txt

Diff Summary
   +103324 bytes MonochromePublic.apk_Specifics normalized apk size for range: 1bd58466eab023e8c734d1e63bd997daed4b3e30..1ba598d0444530abd3d5f116e6ab70f2b055c651

Comment 4 by g...@chromium.org, May 31 2018

Mergedinto: 848253
Status: Duplicate (was: Assigned)
Thanks!

Linux is similarly unhappy about the size implications of this roll. I'm assuming the root cause is the same.

Generally, I expect this to recover after another roll or two. AFDO rolls have generated quite a few complaints for me in the last few weeks, though; I'm trying to fix that. 

Sign in to add a comment