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

Issue 19564007: Start from scratch on a faster SkFlatDictionary. (Closed)

Created:
7 years, 5 months ago by mtklein
Modified:
7 years, 4 months ago
Reviewers:
scroggo, tomhudson, reed1
CC:
skia-review_googlegroups.com
Visibility:
Public.

Description

Start from scratch on a faster SkFlatDictionary. This is like codereview.chromium.org/19276003, except it fits in better with the existing code, doesn't leak memory, and because it's back using SkChunkFlatController it's a little faster too, now a win across the board: Slowdown bench -1.59% desk_youtubetvbrowse.skp -2.56% desk_googlehome.skp -6.40% tabl_androidpolice.skp -6.45% desk_youtubetvvideo.skp -6.91% tabl_googlecalendar.skp ... -29.70% desk_yahoogames.skp -32.17% desk_googlespreadsheet.skp -32.23% mobi_wikipedia.skp -37.16% desk_chalkboard.skp -41.57% desk_pokemonwiki.skp Overall slowdown: -22.74% running bench [640 480] picture_record_recurring_paint_dictionary NONRENDERING: cmsecs = 9.92 running bench [640 480] picture_record_unique_paint_dictionary NONRENDERING: cmsecs = 22.16 running bench [640 480] picture_record_dictionaries NONRENDERING: cmsecs = 9.18 BUG= Committed: http://code.google.com/p/skia/source/detail?r=10328 Committed: http://code.google.com/p/skia/source/detail?r=10336

Patch Set 1 #

Patch Set 2 : fix memory overwrite and tests #

Total comments: 9

Patch Set 3 : tomhudson #

Total comments: 12

Patch Set 4 : reed #

Patch Set 5 : init order #

Patch Set 6 : sigh, this time be efficient about RAM use #

Total comments: 4

Patch Set 7 : tomhudson #

Patch Set 8 : fix windows build by making AllocScratch static #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+177 lines, -68 lines) Patch
M include/core/SkWriter32.h View 1 2 3 2 chunks +9 lines, -4 lines 0 comments Download
M src/core/SkOrderedWriteBuffer.h View 1 2 3 1 chunk +10 lines, -3 lines 0 comments Download
M src/core/SkPictureFlat.h View 1 2 3 4 5 6 7 9 chunks +134 lines, -54 lines 1 comment Download
M src/core/SkPictureFlat.cpp View 1 2 3 2 chunks +9 lines, -6 lines 0 comments Download
M tests/Writer32Test.cpp View 1 2 3 1 chunk +6 lines, -1 line 0 comments Download
M tools/render_pictures_main.cpp View 2 chunks +9 lines, -0 lines 0 comments Download

Messages

Total messages: 17 (0 generated)
mtklein
Sorry for yanking you guys around onto a different CL, but this version is different ...
7 years, 5 months ago (2013-07-18 18:16:07 UTC) #1
mtklein
On 2013/07/18 18:16:07, mtklein wrote: > Sorry for yanking you guys around onto a different ...
7 years, 5 months ago (2013-07-19 18:03:25 UTC) #2
tomhudson
LGTM modulo nits. Speedup numbers look great. https://codereview.chromium.org/19564007/diff/2001/include/core/SkWriter32.h File include/core/SkWriter32.h (right): https://codereview.chromium.org/19564007/diff/2001/include/core/SkWriter32.h#newcode49 include/core/SkWriter32.h:49: // DEPRECATED: ...
7 years, 5 months ago (2013-07-22 16:36:02 UTC) #3
mtklein
https://codereview.chromium.org/19564007/diff/2001/include/core/SkWriter32.h File include/core/SkWriter32.h (right): https://codereview.chromium.org/19564007/diff/2001/include/core/SkWriter32.h#newcode49 include/core/SkWriter32.h:49: // DEPRECATED: use byetsWritten instead On 2013/07/22 16:36:02, tomhudson ...
7 years, 5 months ago (2013-07-22 17:43:55 UTC) #4
reed1
unittest for new Write32 functionality? https://codereview.chromium.org/19564007/diff/10001/src/core/SkPictureFlat.cpp File src/core/SkPictureFlat.cpp (right): https://codereview.chromium.org/19564007/diff/10001/src/core/SkPictureFlat.cpp#newcode97 src/core/SkPictureFlat.cpp:97: void SkFlatData::init(int index, int32_t ...
7 years, 5 months ago (2013-07-22 18:07:48 UTC) #5
mtklein
PTAL https://codereview.chromium.org/19564007/diff/10001/src/core/SkPictureFlat.cpp File src/core/SkPictureFlat.cpp (right): https://codereview.chromium.org/19564007/diff/10001/src/core/SkPictureFlat.cpp#newcode97 src/core/SkPictureFlat.cpp:97: void SkFlatData::init(int index, int32_t size) { On 2013/07/22 ...
7 years, 5 months ago (2013-07-22 18:54:48 UTC) #6
reed1
good from my side lgtm
7 years, 5 months ago (2013-07-22 19:00:49 UTC) #7
mtklein
On 2013/07/22 18:54:48, mtklein wrote: > PTAL > > https://codereview.chromium.org/19564007/diff/10001/src/core/SkPictureFlat.cpp > File src/core/SkPictureFlat.cpp (right): > ...
7 years, 5 months ago (2013-07-22 19:03:02 UTC) #8
tomhudson
> OK, going to kick off the queue to submit this, with the promise to ...
7 years, 5 months ago (2013-07-23 09:41:08 UTC) #9
mtklein
On 2013/07/23 09:41:08, tomhudson wrote: > > OK, going to kick off the queue to ...
7 years, 5 months ago (2013-07-23 21:56:11 UTC) #10
tomhudson
lgtm https://codereview.chromium.org/19564007/diff/28001/src/core/SkPictureFlat.h File src/core/SkPictureFlat.h (right): https://codereview.chromium.org/19564007/diff/28001/src/core/SkPictureFlat.h#newcode413 src/core/SkPictureFlat.h:413: SkFlatDictionary(SkFlatController* controller, size_t scratchSizeGuess=0) Nit: don't we usually ...
7 years, 5 months ago (2013-07-24 11:10:14 UTC) #11
mtklein
https://codereview.chromium.org/19564007/diff/28001/src/core/SkPictureFlat.h File src/core/SkPictureFlat.h (right): https://codereview.chromium.org/19564007/diff/28001/src/core/SkPictureFlat.h#newcode413 src/core/SkPictureFlat.h:413: SkFlatDictionary(SkFlatController* controller, size_t scratchSizeGuess=0) On 2013/07/24 11:10:14, tomhudson wrote: ...
7 years, 5 months ago (2013-07-24 17:40:15 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/mtklein@google.com/19564007/34001
7 years, 5 months ago (2013-07-24 18:05:43 UTC) #13
commit-bot: I haz the power
Change committed as 10328
7 years, 5 months ago (2013-07-24 18:45:29 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/mtklein@google.com/19564007/39001
7 years, 5 months ago (2013-07-24 20:30:35 UTC) #15
commit-bot: I haz the power
Change committed as 10336
7 years, 5 months ago (2013-07-24 20:37:32 UTC) #16
scroggo
7 years, 4 months ago (2013-07-30 21:21:11 UTC) #17
Message was sent while issue was closed.
lgtm

https://chromiumcodereview.appspot.com/19564007/diff/39001/src/core/SkPicture...
File src/core/SkPictureFlat.h (right):

https://chromiumcodereview.appspot.com/19564007/diff/39001/src/core/SkPicture...
src/core/SkPictureFlat.h:757: void*                      fLastAllocated;
This should never be a problem in practice, but shouldn't we set fLastAllocated
to NULL in the constructor?

Powered by Google App Engine
This is Rietveld 408576698