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

Issue 202903004: Xfermode: SSE2 implementation of multiply_modeproc (Closed)

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

Description

Xfermode: SSE2 implementation of multiply_modeproc This patch implements basics for Xfermode SSE optimization. Based on these basics, SSE2 implementation of multiply_modeproc is provided. SSE2 implementation for other modes will come in future. With this patch performance of Xfermode_Multiply will improve about 45%. Here are the data on desktop i7-3770. before: Xfermode_Multiply 8888: cmsecs = 33.30 565: cmsecs = 45.65 after: Xfermode_Multiply 8888: cmsecs = 17.18 565: cmsecs = 24.87 BUG= Committed: http://code.google.com/p/skia/source/detail?r=14006 Committed: http://code.google.com/p/skia/source/detail?r=14050 Committed: http://code.google.com/p/skia/source/detail?r=14107

Patch Set 1 #

Patch Set 2 : add SkGetPacked(A/R/G/B)32_SSE2 function #

Total comments: 10

Patch Set 3 : fix reviewer's comments #

Patch Set 4 : fix try-bot #

Patch Set 5 : fix try-bot #

Patch Set 6 : rebase #

Patch Set 7 : rebase #

Patch Set 8 : fix build failure #

Patch Set 9 : fix build with clang #

Patch Set 10 : fix windows and arm build failure #

Patch Set 11 : fix buildbot failure #

Unified diffs Side-by-side diffs Delta from patch set Stats (+474 lines, -29 lines) Patch
M gyp/opts.gyp View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -1 line 0 comments Download
M src/core/SkXfermode.cpp View 1 2 3 4 5 6 10 2 chunks +2 lines, -0 lines 0 comments Download
M src/opts/SkBlitRow_opts_SSE2.cpp View 1 2 3 4 5 6 7 5 chunks +20 lines, -20 lines 0 comments Download
M src/opts/SkColor_opts_SSE2.h View 1 2 3 4 5 6 7 8 9 2 chunks +123 lines, -8 lines 0 comments Download
A src/opts/SkXfermode_opts_SSE2.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +30 lines, -0 lines 0 comments Download
A src/opts/SkXfermode_opts_SSE2.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +267 lines, -0 lines 0 comments Download
M src/opts/opts_check_SSE2.cpp View 1 2 3 4 5 6 7 8 2 chunks +31 lines, -0 lines 0 comments Download

Messages

Total messages: 55 (0 generated)
qiankun
PTAL, thanks!
6 years, 9 months ago (2014-03-18 09:16:07 UTC) #1
qiankun
On 2014/03/18 09:16:07, qiankun wrote: > PTAL, thanks! Ping.
6 years, 9 months ago (2014-03-24 06:16:24 UTC) #2
mtklein
Feel free to send out the other changes all at once. My focus on the ...
6 years, 9 months ago (2014-03-27 14:55:17 UTC) #3
qiankun
Thanks for your comments. I uploaded a new patch. PTAL. For "other changes all at ...
6 years, 9 months ago (2014-03-28 07:52:57 UTC) #4
mtklein
On 2014/03/28 07:52:57, qiankun wrote: > Thanks for your comments. I uploaded a new patch. ...
6 years, 9 months ago (2014-03-28 13:05:44 UTC) #5
qiankun
On 2014/03/28 13:05:44, mtklein wrote: > On 2014/03/28 07:52:57, qiankun wrote: > > Thanks for ...
6 years, 9 months ago (2014-03-28 17:02:49 UTC) #6
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 9 months ago (2014-03-28 17:02:56 UTC) #7
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/202903004/40001
6 years, 9 months ago (2014-03-28 17:03:02 UTC) #8
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-28 17:10:16 UTC) #9
commit-bot: I haz the power
Retried try job too often on Build-Mac10.8-Clang-x86-Release-Trybot for step(s) BuildSkiaLib http://skia-tree-status-staging.appspot.com/redirect/compile-buildbots/buildstatus?builder=Build-Mac10.8-Clang-x86-Release-Trybot&number=432
6 years, 9 months ago (2014-03-28 17:10:16 UTC) #10
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 8 months ago (2014-03-31 03:02:47 UTC) #11
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/202903004/80001
6 years, 8 months ago (2014-03-31 03:02:58 UTC) #12
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-03-31 03:06:39 UTC) #13
commit-bot: I haz the power
Retried try job too often on Build-Ubuntu12-GCC-x86_64-Release-Trybot for step(s) BuildBench, BuildEverything, BuildGm, BuildSkiaLib, BuildTests, BuildTools ...
6 years, 8 months ago (2014-03-31 03:06:40 UTC) #14
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 8 months ago (2014-03-31 03:32:11 UTC) #15
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/202903004/60002
6 years, 8 months ago (2014-03-31 03:32:18 UTC) #16
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-03-31 03:32:22 UTC) #17
commit-bot: I haz the power
Failed to apply patch for src/opts/SkColor_opts_SSE2.h: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file ...
6 years, 8 months ago (2014-03-31 03:32:22 UTC) #18
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 8 months ago (2014-03-31 04:29:47 UTC) #19
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/202903004/110001
6 years, 8 months ago (2014-03-31 04:29:49 UTC) #20
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-03-31 04:36:39 UTC) #21
commit-bot: I haz the power
Retried try job too often on Build-Mac10.8-Clang-x86-Release-Trybot for step(s) BuildBench, BuildEverything http://skia-tree-status-staging.appspot.com/redirect/compile-buildbots/buildstatus?builder=Build-Mac10.8-Clang-x86-Release-Trybot&number=445
6 years, 8 months ago (2014-03-31 04:36:40 UTC) #22
qiankun
On 2014/03/31 04:36:40, I haz the power (commit-bot) wrote: > Retried try job too often ...
6 years, 8 months ago (2014-03-31 04:47:06 UTC) #23
qiankun
On 2014/03/31 04:47:06, qiankun wrote: > On 2014/03/31 04:36:40, I haz the power (commit-bot) wrote: ...
6 years, 8 months ago (2014-03-31 06:36:44 UTC) #24
mtklein
On 2014/03/31 06:36:44, qiankun wrote: > On 2014/03/31 04:47:06, qiankun wrote: > > On 2014/03/31 ...
6 years, 8 months ago (2014-03-31 14:51:39 UTC) #25
mtklein
The CQ bit was checked by mtklein@google.com
6 years, 8 months ago (2014-03-31 14:51:44 UTC) #26
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/202903004/130001
6 years, 8 months ago (2014-03-31 14:51:48 UTC) #27
qiankun
The CQ bit was checked by qiankun.miao@intel.com
6 years, 8 months ago (2014-04-01 06:26:55 UTC) #28
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/202903004/150001
6 years, 8 months ago (2014-04-01 06:27:02 UTC) #29
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-01 06:44:17 UTC) #30
commit-bot: I haz the power
Failed to apply the patch. Sending gyp/opts.gyp Sending src/core/SkXfermode.cpp Sending src/opts/SkBlitRow_opts_SSE2.cpp Sending src/opts/SkColor_opts_SSE2.h Adding src/opts/SkXfermode_opts_SSE2.cpp ...
6 years, 8 months ago (2014-04-01 06:44:18 UTC) #31
qiankun
On 2014/04/01 06:44:18, I haz the power (commit-bot) wrote: > Failed to apply the patch. ...
6 years, 8 months ago (2014-04-01 06:50:50 UTC) #32
mtklein
On 2014/04/01 06:50:50, qiankun wrote: > On 2014/04/01 06:44:18, I haz the power (commit-bot) wrote: ...
6 years, 8 months ago (2014-04-01 14:01:06 UTC) #33
mtklein
The CQ bit was checked by mtklein@google.com
6 years, 8 months ago (2014-04-01 14:01:12 UTC) #34
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/202903004/150001
6 years, 8 months ago (2014-04-01 14:01:17 UTC) #35
commit-bot: I haz the power
Change committed as 14006
6 years, 8 months ago (2014-04-01 14:01:45 UTC) #36
robertphillips
A revert of this CL has been created in https://codereview.chromium.org/219243009/ by robertphillips@google.com. The reason for ...
6 years, 8 months ago (2014-04-01 14:17:33 UTC) #37
robertphillips
On Win8 (http://108.170.220.76:10117/builders/Build-Win8-VS2012-x86-Release/builds/2249/steps/BuildMost/logs/stdio): [07:04:07.064000] FAILED: ninja -t msvc -e environment.x86 -- "C:\Program Files (x86)\Microsoft Visual ...
6 years, 8 months ago (2014-04-01 14:21:46 UTC) #38
mtklein
> On Ubuntu12 > (http://108.170.220.76:10117/builders/Build-Ubuntu12-GCC-Arm7-Release-Nexus4/builds/2633/steps/BuildAll/logs/stdio) > > [14:12:27.963893] In file included from > ../../../../src/core/SkXfermode.cpp:11:0: > ...
6 years, 8 months ago (2014-04-01 14:24:35 UTC) #39
qiankun
On 2014/04/01 14:24:35, mtklein wrote: > > On Ubuntu12 > > > (http://108.170.220.76:10117/builders/Build-Ubuntu12-GCC-Arm7-Release-Nexus4/builds/2633/steps/BuildAll/logs/stdio) > > ...
6 years, 8 months ago (2014-04-02 10:11:50 UTC) #40
mtklein
> I will add #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 guard in SkXfermode.cpp > to avoid building ...
6 years, 8 months ago (2014-04-02 12:28:44 UTC) #41
qiankun
On 2014/04/02 12:28:44, mtklein wrote: > > I will add #if SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2 guard ...
6 years, 8 months ago (2014-04-03 07:43:21 UTC) #42
mtklein
On 2014/04/03 07:43:21, qiankun wrote: > On 2014/04/02 12:28:44, mtklein wrote: > > > I ...
6 years, 8 months ago (2014-04-03 17:33:53 UTC) #43
mtklein
The CQ bit was checked by mtklein@google.com
6 years, 8 months ago (2014-04-03 17:34:01 UTC) #44
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/202903004/160001
6 years, 8 months ago (2014-04-03 17:34:11 UTC) #45
commit-bot: I haz the power
Change committed as 14050
6 years, 8 months ago (2014-04-03 18:26:44 UTC) #46
robertphillips
A revert of this CL has been created in https://codereview.chromium.org/224253003/ by robertphillips@google.com. The reason for ...
6 years, 8 months ago (2014-04-03 18:53:21 UTC) #47
robertphillips
Here are the logs from the Ubuntu bot: http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86-Debug/builds/114/steps/GenerateGMs/logs/stdio http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86-Debug/builds/114/steps/CompareGMs/logs/stdio
6 years, 8 months ago (2014-04-03 18:59:57 UTC) #48
robertphillips
Here's how to reproduce the issue: sync your repo to your CL (r14050) build it ...
6 years, 8 months ago (2014-04-03 20:06:27 UTC) #49
qiankun
On 2014/04/03 20:06:27, robertphillips wrote: > Here's how to reproduce the issue: > > sync ...
6 years, 8 months ago (2014-04-04 10:16:47 UTC) #50
qiankun
On 2014/04/04 10:16:47, qiankun wrote: > On 2014/04/03 20:06:27, robertphillips wrote: > > Here's how ...
6 years, 8 months ago (2014-04-09 06:59:13 UTC) #51
mtklein
On 2014/04/09 06:59:13, qiankun wrote: > On 2014/04/04 10:16:47, qiankun wrote: > > On 2014/04/03 ...
6 years, 8 months ago (2014-04-09 15:16:14 UTC) #52
mtklein
The CQ bit was checked by mtklein@google.com
6 years, 8 months ago (2014-04-09 15:16:38 UTC) #53
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/202903004/180001
6 years, 8 months ago (2014-04-09 15:16:41 UTC) #54
commit-bot: I haz the power
6 years, 8 months ago (2014-04-09 15:43:57 UTC) #55
Message was sent while issue was closed.
Change committed as 14107

Powered by Google App Engine
This is Rietveld 408576698