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

Issue 224823004: Xfermode: SSE2 implementation of colordodge&colorburn modes (Closed)

Created:
6 years, 8 months ago by qiankun
Modified:
6 years, 8 months ago
Reviewers:
mtklein
CC:
skia-review_googlegroups.com
Base URL:
https://skia.googlesource.com/skia.git@master
Visibility:
Public.

Description

Xfermode: SSE2 implementation of colordodge&colorburn modes With SSE2 optimization, performance of the related benchmarks will improve about 45% for Xfermode_ColorDodge and little for Xfermode_ColorBurn on desktop i7-3770. The little performance improvement for Xfermode_ColorBurn is due to the portable version may mostly go the fast if branch while the SSE2 version do the calculation for all the three if-else branches. Here are the data: before: Xfermode_ColorDodge 8888: cmsecs = 73.71 565: cmsecs = 82.88 Xfermode_ColorBurn 8888: cmsecs = 46.46 565: cmsecs = 52.23 after: Xfermode_ColorDodge 8888: cmsecs = 39.70 565: cmsecs = 47.45 Xfermode_ColorBurn 8888: cmsecs = 45.02 565: cmsecs = 51.15 BUG=skia: Committed: http://code.google.com/p/skia/source/detail?r=14377

Patch Set 1 #

Total comments: 2

Patch Set 2 : rebase and fix review's comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+118 lines, -2 lines) Patch
M src/opts/SkMath_opts_SSE2.h View 1 1 chunk +8 lines, -0 lines 0 comments Download
M src/opts/SkXfermode_opts_SSE2.cpp View 1 2 chunks +110 lines, -2 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
qiankun
PTAL.
6 years, 8 months ago (2014-04-11 07:47:01 UTC) #1
mtklein
lgtm with one suggestion for readability, provided it doesn't hurt performance. I think I've hit ...
6 years, 8 months ago (2014-04-24 18:13:30 UTC) #2
qiankun
https://codereview.chromium.org/224823004/diff/1/src/opts/SkXfermode_opts_SSE2.cpp File src/opts/SkXfermode_opts_SSE2.cpp (right): https://codereview.chromium.org/224823004/diff/1/src/opts/SkXfermode_opts_SSE2.cpp#newcode126 src/opts/SkXfermode_opts_SSE2.cpp:126: diff = _mm_cvttps_epi32(_mm_div_ps(x, y)); On 2014/04/24 18:13:31, mtklein wrote: ...
6 years, 8 months ago (2014-04-25 09:24:37 UTC) #3
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 8 months ago (2014-04-25 09:26:19 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://skia-tree-status.appspot.com/cq/qiankun.miao@intel.com/224823004/20001
6 years, 8 months ago (2014-04-25 09:26:40 UTC) #5
commit-bot: I haz the power
6 years, 8 months ago (2014-04-25 09:45:03 UTC) #6
Message was sent while issue was closed.
Change committed as 14377

Powered by Google App Engine
This is Rietveld 408576698