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

Issue 943383002: DM: lazy decoding on SKP playback (Closed)

Created:
5 years, 10 months ago by hal.canary
Modified:
5 years, 7 months ago
Reviewers:
mtklein
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

DM: lazy decoding on SKP playback Command `out/Release/dm --config pdf --src gm skp`, uses 27% less RAM. Committed: https://skia.googlesource.com/skia/+/77d366d72a6ae83fb0abcb2ec7e2d692fef2e923

Patch Set 1 #

Patch Set 2 : 2015-02-23 (Monday) 11:07:51 EST #

Patch Set 3 : 2015-02-23 (Monday) 11:08:28 EST #

Total comments: 6

Patch Set 4 : 2015-02-23 (Monday) 13:16:23 EST #

Patch Set 5 : 2015-02-23 (Monday) 14:25:04 EST #

Patch Set 6 : 2015-03-17 (Tuesday) 13:02:02 EDT #

Unified diffs Side-by-side diffs Delta from patch set Stats (+24 lines, -2 lines) Patch
M dm/DMSrcSink.cpp View 1 2 3 4 5 6 chunks +24 lines, -2 lines 0 comments Download

Messages

Total messages: 11 (4 generated)
hal.canary
ptal
5 years, 10 months ago (2015-02-23 16:05:37 UTC) #2
mtklein
https://codereview.chromium.org/943383002/diff/40001/dm/DMSrcSink.cpp File dm/DMSrcSink.cpp (right): https://codereview.chromium.org/943383002/diff/40001/dm/DMSrcSink.cpp#newcode15 dm/DMSrcSink.cpp:15: Move here? https://codereview.chromium.org/943383002/diff/40001/dm/DMSrcSink.cpp#newcode114 dm/DMSrcSink.cpp:114: bool lazy_decode_bitmap(const void* src, size_t ...
5 years, 10 months ago (2015-02-23 17:01:11 UTC) #3
hal.canary
https://codereview.chromium.org/943383002/diff/40001/dm/DMSrcSink.cpp File dm/DMSrcSink.cpp (right): https://codereview.chromium.org/943383002/diff/40001/dm/DMSrcSink.cpp#newcode15 dm/DMSrcSink.cpp:15: On 2015/02/23 17:01:10, mtklein wrote: > Move here? Done. ...
5 years, 10 months ago (2015-02-23 18:16:36 UTC) #4
mtklein
lgtm
5 years, 10 months ago (2015-02-23 18:21:29 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/943383002/60001
5 years, 10 months ago (2015-02-23 18:22:29 UTC) #7
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://skia.googlesource.com/skia/+/77d366d72a6ae83fb0abcb2ec7e2d692fef2e923
5 years, 10 months ago (2015-02-23 18:28:06 UTC) #8
hal.canary
5 years, 10 months ago (2015-02-23 18:42:29 UTC) #9
Message was sent while issue was closed.
A revert of this CL (patchset #4 id:60001) has been created in
https://codereview.chromium.org/947103005/ by halcanary@google.com.

The reason for reverting is: crashing dm

Test-Mac10.9-MacMini6.2-HD4000-x86_64-Debug

u gm addarc
(1431MB   932) 169ms	gpu gm aarectmodes
(1431MB   931) 38.6ms	gpu gm aaclip
(1431MB   930) 474ms	gpu skp desk_amazon.skp
(1431MB   929) 615ms	gpu skp desk_baidu.skp
(1431MB   928) 600ms	gpu skp desk_blogger.skp
Signal 11:
_sigtramp (+0x1a)
compute_yuv_size(jpeg_decompress_struct const&, int, SizeType) (+0x30)
update_components_sizes(jpeg_decompress_struct const&, SkTSize<int>*, SizeType)
(+0x46)
SkJPEGImageDecoder::onDecodeYUV8Planes(SkStream*, SkTSize<int>*, void**,
unsigned long*, SkYUVColorSpace*) (+0x239)
SkImageDecoder::decodeYUV8Planes(SkStream*, SkTSize<int>*, void**, unsigned
long*, SkYUVColorSpace*) (+0x64)
SkImageDecoderGenerator::onGetYUV8Planes(SkTSize<int>*, void**, unsigned long*,
SkYUVColorSpace*) (+0x9f)
SkImageGenerator::getYUV8Planes(SkTSize<int>*, void**, unsigned long*,
SkYUVColorSpace*) (+0x3b7)
SkDiscardablePixelRef::onGetYUV8Planes(SkTSize<int>*, void**, unsigned long*,
SkYUVColorSpace*) (+0x3c)
SkPixelRef::getYUV8Planes(SkTSize<int>*, void**, unsigned long*,
SkYUVColorSpace*) (+0x55)
load_yuv_texture(GrContext*, GrUniqueKey const&, SkBitmap const&, GrSurfaceDesc
const&) (+0x24b)
create_unstretched_bitmap_texture(GrContext*, SkBitmap const&, GrUniqueKey
const&) (+0x3df)
create_bitmap_texture(GrContext*, SkBitmap const&, Stretch, GrUniqueKey const&,
GrUniqueKey const&) (+0x1ca)
GrRefCachedBitmapTexture(GrContext*, SkBitmap const&, GrTextureParams const*)
(+0x368)
AutoBitmapTexture::set(GrContext*, SkBitmap const&, GrTextureParams const*)
(+0x87)
AutoBitmapTexture::AutoBitmapTexture(GrContext*, SkBitmap const&,
GrTextureParams const*, GrTexture**) (+0xe0)
AutoBitmapTexture::AutoBitmapTexture(GrContext*, SkBitmap const&,
GrTextureParams const*, GrTexture**) (+0x35)
SkGpuDevice::internalDrawBitmap(SkBitmap const&, SkMatrix const&, SkRect const&,
GrTextureParams const&, SkPaint const&, SkCanvas::DrawBitmapRectFlags, bool,
bool) (+0x118)
SkGpuDevice::drawBitmapCommon(SkDraw const&, SkBitmap const&, SkRect const*,
SkSize const*, SkPaint const&, SkCanvas::DrawBitmapRectFlags) (+0xa84)
SkGpuDevice::drawBitmapRect(SkDraw const&, SkBitmap const&, SkRect const*,
SkRect const&, SkPaint const&, SkCanvas::DrawBitmapRectFlags) (+0x2bb)
SkCanvas::internalDrawBitmapRect(SkBitmap const&, SkRect const*, SkRect const&,
SkPaint const*, SkCanvas::DrawBitmapRectFlags) (+0x2a9)
SkCanvas::onDrawBitmapRect(SkBitmap const&, SkRect const*, SkRect const&,
SkPaint const*, SkCanvas::DrawBitmapRectFlags) (+0x118)
SkCanvas::drawBitmapRectToRect(SkBitmap const&, SkRect const*, SkRect const&,
SkPaint const*, SkCanvas::DrawBitmapRectFlags) (+0x60)
void
SkRecords::Draw::draw<SkRecords::DrawBitmapRectToRect>(SkRecords::DrawBitmapRectToRect
const&) (+0x8a)
void
SkRecords::Draw::operator()<SkRecords::DrawBitmapRectToRect>(SkRecords::DrawBitmapRectToRect
const&) (+0x1d)
void SkRecord::Record::visit<void, SkRecords::Draw>(SkRecord::Type8,
SkRecords::Draw&) const (+0x298)
void SkRecord::visit<void, SkRecords::Draw>(unsigned int, SkRecords::Draw&)
const (+0xbc)
SkRecordDraw(SkRecord const&, SkCanvas*, SkPicture const* const*, SkDrawable*
const*, int, SkBBoxHierarchy const*, SkPicture::AbortCallback*) (+0x2eb)
SkPicture::playback(SkCanvas*, SkPicture::AbortCallback*) const (+0x186)
SkCanvas::onDrawPicture(SkPicture const*, SkMatrix const*, SkPaint const*)
(+0xe0)
SkCanvas::drawPicture(SkPicture const*) (+0x11b)
DM::SKPSrc::draw(SkCanvas*) const (+0x25b)
DM::GPUSink::draw(DM::Src const&, SkBitmap*, SkWStream*, SkString*) const
(+0x21d)
Task::Run(Task*) (+0x1de)
run_enclave(SkTArray<Task, false>*) (+0x49)
run_enclave_and_gpu_tests(SkTArray<Task, false>*) (+0x15)
(anonymous namespace)::ThreadPool::Wait(int*) (+0x14b)
SkTaskGroup::wait() (+0x15)
dm_main() (+0x624)
main (+0x27)

.

Powered by Google App Engine
This is Rietveld 408576698