Issue metadata
Sign in to add a comment
|
41kb regression in resource_sizes (MonochromePublic.apk) at 472686:472687 |
||||||||||||||||||||
Issue descriptionDue to: Roll src/third_party/skia/ a281dd37e..c34a946d5 (35 commits; 11 trivial rolls) https://chromium-review.googlesource.com/508184
,
May 25 2017
FYI benhenry@, bisects are currently broken for resource_sizes: issue 678338 .
,
May 25 2017
,
May 25 2017
,
May 25 2017
Kicked off a local build: tools/binary_size/diagnose_bloat.py c34a946d5 --reference-rev a281dd37e --subrepo third_party/skia --all -v
,
May 25 2017
,
May 25 2017
Jump was due to a single CL. diagnose_bloat.py reported a 45kb jump but that's likely because I just ran it off of my local master and not from where the chromium commit was when skia rolled. Caused by: move shadows to device virtual https://skia-review.googlesource.com/c/15893/ reed@ - can you take a look at the diff (created with //tools/binary_size/supersize) below and see if there's anything unexpected, or if there's anything we can do to slim this down a bit? There are several symbols at the start that are pretty big. Section Sizes (Total=43.4kb (44404 bytes)): .bss: 64 bytes (64 bytes) (not included in totals) .data: 0 bytes (0 bytes) (0.0%) .data.rel.ro: 560 bytes (560 bytes) (1.3%) .data.rel.ro.local: 304 bytes (304 bytes) (0.7%) .rodata: 1536 bytes (1536 bytes) (3.5%) .text: 41.0kb (42004 bytes) (94.6%) 184 symbols added (+), 39 changed (~), 34 removed (-), 379210 unchanged (not shown) 6 paths added, 0 removed, 16 changed Showing 257 symbols (247 unique) with total pss: 44434 bytes .text=41.0kb .rodata=1536 bytes .data*=864 bytes .bss=67 bytes total=43.4kb Number of unique paths: 27 Index, Running Total, Section@Address, PSS ------------------------------------------------------------ + 0) 5068 (11.4%) t@0x5b1480 5068 skia/skia/SkShadowUtils.o SkBaseDevice::drawShadow + 1) 9016 (20.3%) t@0x5aec24 3948 skia/skia/SkShadowTessellator.o SkAmbientShadowTessellator::SkAmbientShadowTessellator + 2) 12340 (27.8%) t@0x5afc78 3324 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::SkSpotShadowTessellator + 3) 15232 (34.3%) t@0x5ac5c0 2892 skia/skia/SkShadowTessellator.o SkAmbientShadowTessellator::addEdge + 4) 17712 (39.9%) t@0x6021c4 2480 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::onPrepareDraws const + 5) 19224 (43.3%) t@0x5ad568 1512 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::computeClipAndPathPolygons + 6) 20648 (46.5%) t@0x5ae024 1424 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::addEdge + 7) 22040 (49.6%) t@0x5a8964 1392 skia/skia/SkInsetConvexPolygon.o SkInsetConvexPolygon + 8) 23160 (52.1%) t@Group 1120 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilterImpl::directFilterRRectMaskGPU const (count=2) + 9) 24276 (54.6%) t@0x5ad10c 1116 skia/skia/SkShadowTessellator.o SkAmbientShadowTessellator::handleLine + 10) 25324 (57.0%) t@0x601dac 1048 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::fillInRRectVerts const ~ 11) 26212 (59.0%) r@Group 888 {{no path}} ** merge strings (count=6) + 12) 27100 (61.0%) t@0x5ac248 888 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::addArc + 13) 27964 (62.9%) t@0x5b2848 864 skia/skia/SkShadowUtils.o SkGpuDevice::drawShadow + 14) 28808 (64.8%) t@0x5ae5b4 844 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::handlePolyPoint + 15) 29620 (66.7%) t@Group 812 skia/skia/SkAmbientShadowMaskFilter.o SkAmbientShadowMaskFilterImpl::directFilterRRectMaskGPU const (count=2) + 16) 30292 (68.2%) t@0x602db0 672 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::ShadowCircularRRectOp + 17) 30956 (69.7%) t@0x5b10dc 664 skia/skia/SkShadowUtils.o FindVisitor + 18) 31500 (70.9%) t@0x5a8744 544 skia/skia/SkInsetConvexPolygon.o SkOffsetSegment - 19) 30960 (69.7%) t@0x4fd174 -540 skia/skia/SkRecordDraw.o SkRecords::FillBounds::operator + 20) 31472 (70.8%) t@0x612600 512 skia/skia/GrShadowGeoProc.o GrRRectShadowGeoProc::GrRRectShadowGeoProc + 21) 31944 (71.9%) t@0x602bd8 472 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::onCombineIfPossible + 22) 32412 (72.9%) t@0x5aea50 468 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::setTransformedHeightFunc + 23) 32876 (74.0%) t@0x5b0f0c 464 skia/skia/SkShadowUtils.o FindVisitor + 24) 33280 (74.9%) t@0x5adb50 404 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::computeClipVectorsAndTestCentroid + 25) 33636 (75.7%) t@0x5a7130 356 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilterImpl::toString const + 26) 33980 (76.5%) t@0x5cd6b4 344 skia/skia/GrRenderTargetContext.o GrRenderTargetContext::drawShadowRRect + 27) 34324 (77.2%) t@0x5ac0f0 344 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::handleConic + 28) 34652 (78.0%) t@0x6124b8 328 skia/skia/GrShadowGeoProc.o GrGLSLRRectShadowGeoProc::onEmitCode + 29) 34964 (78.7%) t@0x5b0c28 312 skia/skia/SkShadowUtils.o SkGaussianColorFilter::asFragmentProcessor const + 30) 35272 (79.4%) t@0x4fcfa8 308 skia/skia/SkRecordDraw.o SkRecords::FillBounds::pushSaveBlock + 31) 35572 (80.1%) t@0x601c00 300 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::dumpInfo const + 32) 35872 (80.7%) t@0x5abcb0 300 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::handleLine + 33) 36168 (81.4%) t@0x5adce4 296 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::clipUmbraPoint + 34) 36460 (82.1%) t@0x5adf00 292 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::addInnerPoint + 35) 36744 (82.7%) t@0x5a6b40 284 {{no path}} SkAmbientShadowMaskFilterImpl::directFilterMaskGPU const + 36) 37028 (83.3%) t@0x5a6b40 284 {{no path}} SkSpotShadowMaskFilterImpl::directFilterMaskGPU const + 37) 37300 (83.9%) t@Group 272 skia/skia/SkShadowUtils.o CachedTessellations::~CachedTessellations (count=2) + 38) 37564 (84.5%) t@0x46ce60 264 skia/skia/SkCanvas.o SkCanvas::onDrawShadowRec + 39) 37820 (85.1%) r@0x294ea20 256 skia/skia/SkShadowUtils.o gByteExpU8Table + 40) 38064 (85.7%) t@0x5ade0c 244 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::getClosestUmbraPoint + 41) 38292 (86.2%) t@0x4fee44 228 skia/skia/SkRecordDraw.o SkRecords::FillBounds::trackBounds + 42) 38508 (86.7%) t@0x5ac018 216 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::handleCubic + 43) 38720 (87.1%) t@0x5a6a6c 212 skia/skia/SkAmbientShadowMaskFilter.o SkRRect::setOval + 44) 38932 (87.6%) t@Group 212 skia/skia/SkShadowTessellator.o SkSpotShadowTessellator::~SkSpotShadowTessellator (count=2) + 45) 39140 (88.1%) t@0x5a6954 208 skia/skia/SkAmbientShadowMaskFilter.o SkAmbientShadowMaskFilterImpl::toString const + 46) 39348 (88.6%) r@0x294f558 208 skia/skia/GrShadowRRectOp.o gRRectIndices + 47) 39552 (89.0%) t@0x6123ec 204 skia/skia/GrShadowGeoProc.o GrRRectShadowGeoProc::getGLSLProcessorKey const + 48) 39752 (89.5%) t@0x5b0974 200 skia/skia/SkShadowTessellator.o SkShadowTessellator::MakeSpot + 49) 39916 (89.8%) t@0x5abf34 164 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::handleQuad + 50) 40072 (90.2%) t@Group 156 skia/skia/SkShadowUtils.o CachedTessellationsRec::~CachedTessellationsRec (count=2) + 51) 40228 (90.5%) t@0x5abe54 156 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::setZOffset + 52) 40380 (90.9%) t@0x5b0a80 152 skia/skia/SkShadowUtils.o SkGaussianColorFilter::filterSpan4f const ~ 53) 40524 (91.2%) t@0x4fefec 144 skia/skia/SkRecordDraw.o SkRecordFillBounds + 54) 40664 (91.5%) t@0x603050 140 skia/skia/GrShadowRRectOp.o GrShadowRRectOp::Make + 55) 40804 (91.8%) t@0x5b0b78 140 skia/skia/SkShadowUtils.o std::__ndk1::__function::__func::operator + 56) 40940 (92.1%) t@0x5afb90 136 skia/skia/SkShadowTessellator.o SkShadowTessellator::MakeAmbient + 57) 41072 (92.4%) t@0x50052c 132 skia/skia/SkRecorder.o SkRecorder::onDrawShadowRec + 58) 41200 (92.7%) t@Group 128 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp::~ShadowCircularRRectOp (count=2) + 59) 41324 (93.0%) t@Group 124 skia/skia/SkShadowTessellator.o SkAmbientShadowTessellator::~SkAmbientShadowTessellator (count=2) + 60) 41444 (93.3%) t@0x5abddc 120 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::SkBaseShadowTessellator + 61) 41560 (93.5%) t@0x5a773c 116 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilterImpl::CreateProc - 62) 41448 (93.3%) t@0x4c856c -112 skia/skia/SkLiteDL.o $lambda#40 + 63) 41560 (93.5%) t@0x4c8c6c 112 skia/skia/SkLiteDL.o $lambda#41 + 64) 41664 (93.8%) d@0x2d49840 104 skia/skia/GrShadowGeoProc.o GrRRectShadowGeoProc [vtable] + 65) 41764 (94.0%) t@0x602b74 100 skia/skia/GrShadowRRectOp.o SkTArray::checkRealloc + 66) 41864 (94.2%) t@0x520cf4 100 skia/skia/SkVertices.o SkVertices::approximateSize const + 67) 41960 (94.4%) t@0x5afc18 96 skia/skia/SkShadowTessellator.o SkTDArray::append + 68) 42056 (94.6%) r@0x294f4f8 96 skia/skia/GrShadowRRectOp.o gStrokeCircleIndices + 69) 42144 (94.8%) d@0x2d47bc8 88 skia/skia/SkShadowUtils.o SkGaussianColorFilter [vtable] + 70) 42224 (95.0%) d@0x2d47730 80 skia/skia/SkAmbientShadowMaskFilter.o SkAmbientShadowMaskFilterImpl [vtable] + 71) 42304 (95.2%) d@0x2d47780 80 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilterImpl [vtable] + 72) 42384 (95.4%) t@0x5a70e0 80 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilterImpl::flatten const + 73) 42464 (95.6%) t@0x5abb80 80 skia/skia/SkShadowTessellator.o std::__ndk1::__function::__func::operator + 74) 42540 (95.7%) t@0x601bb4 76 skia/skia/GrShadowRRectOp.o rrect_type_to_index_count + 75) 42612 (95.9%) t@0x5a6a24 72 skia/skia/SkAmbientShadowMaskFilter.o SkAmbientShadowMaskFilterImpl::CreateProc + 76) 42684 (96.1%) t@0x5a76f4 72 skia/skia/SkSpotShadowMaskFilter.o SkSpotShadowMaskFilter::Make + 77) 42756 (96.2%) t@0x5abc68 72 skia/skia/SkShadowTessellator.o compute_normal + 78) 42824 (96.4%) t@0x5abef0 68 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::handleLine + 79) 42892 (96.5%) t@0x49e0a4 68 skia/skia/SkColorSpaceXformCanvas.o SkColorSpaceXformCanvas::onDrawShadowRec + 80) 42960 (96.7%) t@0x5aa384 68 skia/skia/SkNWayCanvas.o SkNWayCanvas::onDrawShadowRec + 81) 43024 (96.8%) d@0x2d48e00 64 skia/skia/GrShadowRRectOp.o ShadowCircularRRectOp [vtable] + 82) 43088 (97.0%) t@0x5abfd8 64 skia/skia/SkShadowTessellator.o SkBaseShadowTessellator::handleQuad + 83) 43144 (97.1%) t@0x4c8bc4 56 skia/skia/SkLiteDL.o $lambda#60 - 84) 43088 (97.0%) t@0x4c84c4 -56 skia/skia/SkLiteDL.o $lambda#61 + 85) 43144 (97.1%) t@0x4c8c34 56 skia/skia/SkLiteDL.o $lambda#73
,
May 25 2017
This CL was part of a larger move to refactor shadow drawing, and make it specialize-able by raster and gpu. It also made it recordable in pictures, which accounts for some of the growth as well.
,
May 26 2017
It also allowed for this further refactor, which may have helped reduce the size again: https://skia-review.googlesource.com/c/17266/
,
Jun 9 2017
Sounds like due diligence was done here. |
|||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||
Comment 1 Deleted