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

Issue 458173002: Optimize QuadF's PointIsInTriangle function (Closed)

Created:
6 years, 4 months ago by kui.zheng
Modified:
6 years, 4 months ago
Reviewers:
danakj
CC:
chromium-reviews, enne (OOO)
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Optimize QuadF's PointIsInTriangle function PointIsInTriangle() is still the hotspot of many CSS animation cases.Take Nexus10 with latest chromium build for example: 4.0% case: poster-circle.html 1.5% case: morphing-cubes.html This patch changes the algorithm of testing "Point In Triangle". 1. Using double-precision float point. 2. A much readable algorithm. 3. Better performance due to remove 2 div operation R=danakj@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=290290

Patch Set 1 #

Total comments: 12

Patch Set 2 : #

Patch Set 3 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+14 lines, -18 lines) Patch
M ui/gfx/geometry/quad_f.cc View 1 1 chunk +14 lines, -18 lines 0 comments Download

Messages

Total messages: 22 (0 generated)
kui.zheng
6 years, 4 months ago (2014-08-11 10:35:51 UTC) #1
danakj
Thanks for the patch! https://codereview.chromium.org/458173002/diff/1/ui/gfx/geometry/quad_f.cc File ui/gfx/geometry/quad_f.cc (right): https://codereview.chromium.org/458173002/diff/1/ui/gfx/geometry/quad_f.cc#newcode74 ui/gfx/geometry/quad_f.cc:74: // Quick test doubles have ...
6 years, 4 months ago (2014-08-11 14:09:26 UTC) #2
danakj
+enne FYI.
6 years, 4 months ago (2014-08-11 14:09:51 UTC) #3
danakj
NOTRY=true would bypass our try bots and land the CL untested, please don't use that ...
6 years, 4 months ago (2014-08-11 14:48:02 UTC) #4
kui.zheng
https://codereview.chromium.org/458173002/diff/1/ui/gfx/geometry/quad_f.cc File ui/gfx/geometry/quad_f.cc (right): https://codereview.chromium.org/458173002/diff/1/ui/gfx/geometry/quad_f.cc#newcode74 ui/gfx/geometry/quad_f.cc:74: // Quick test doubles have same sign On 2014/08/11 ...
6 years, 4 months ago (2014-08-14 06:44:17 UTC) #5
kui.zheng
Changes in patch set2: 1. Updated PointIsInTriangle algorithm. Sometimes, Testing Sign bit is insufficient. Considering ...
6 years, 4 months ago (2014-08-14 07:02:39 UTC) #6
danakj
On 2014/08/14 07:02:39, kui.zheng wrote: > Changes in patch set2: > 1. Updated PointIsInTriangle algorithm. ...
6 years, 4 months ago (2014-08-14 17:01:14 UTC) #7
kui.zheng
On 2014/08/14 17:01:14, danakj wrote: > On 2014/08/14 07:02:39, kui.zheng wrote: > > Changes in ...
6 years, 4 months ago (2014-08-15 02:55:04 UTC) #8
danakj
Ah ok, the test failed on patchset 1. Thanks. LGTM
6 years, 4 months ago (2014-08-15 15:50:54 UTC) #9
kui.zheng
The CQ bit was checked by kui.zheng@arm.com
6 years, 4 months ago (2014-08-18 04:36:53 UTC) #10
kui.zheng
The CQ bit was unchecked by kui.zheng@arm.com
6 years, 4 months ago (2014-08-18 04:37:07 UTC) #11
kui.zheng
The CQ bit was checked by kui.zheng@arm.com
6 years, 4 months ago (2014-08-18 04:55:17 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kui.zheng@arm.com/458173002/20001
6 years, 4 months ago (2014-08-18 04:55:57 UTC) #13
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_gpu on tryserver.chromium.gpu ...
6 years, 4 months ago (2014-08-18 08:36:02 UTC) #14
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-18 08:37:24 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: mac_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/42970) ios_dbg_simulator on tryserver.chromium.mac (http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator/builds/6500) ios_rel_device ...
6 years, 4 months ago (2014-08-18 08:37:25 UTC) #16
kui.zheng
On 2014/08/18 08:37:25, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
6 years, 4 months ago (2014-08-18 09:18:00 UTC) #17
danakj
The CQ bit was checked by danakj@chromium.org
6 years, 4 months ago (2014-08-18 15:19:28 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kui.zheng@arm.com/458173002/40001
6 years, 4 months ago (2014-08-18 15:20:18 UTC) #19
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: android_dbg_triggered_tests on tryserver.chromium.linux ...
6 years, 4 months ago (2014-08-18 16:29:59 UTC) #20
commit-bot: I haz the power
Committed patchset #3 (40001) as 290290
6 years, 4 months ago (2014-08-18 17:51:14 UTC) #21
danakj
6 years, 1 month ago (2014-10-27 21:44:43 UTC) #22
Message was sent while issue was closed.
A revert of this CL (patchset #3 id:40001) has been created in
https://codereview.chromium.org/682793003/ by danakj@chromium.org.

The reason for reverting is: Caused perf regressions:
https://code.google.com/p/chromium/issues/detail?id=404968

.

Powered by Google App Engine
This is Rietveld 408576698