-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optimize TransformationMatrix inverse on ARM64 #10283
Optimize TransformationMatrix inverse on ARM64 #10283
Conversation
@cdumez - we have old bug and I posted here about this - https://bugs.webkit.org/show_bug.cgi?id=24996 |
EWS run on previous version of this PR (hash 29601c2) |
29601c2
to
b88f551
Compare
EWS run on previous version of this PR (hash b88f551) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r=me
@@ -216,12 +213,129 @@ static bool inverse(const TransformationMatrix::Matrix4& matrix, TransformationM | |||
if (fabs(det) < SMALL_NUMBER) | |||
return false; | |||
|
|||
// Scale the adjoint matrix to get the inverse | |||
#if CPU(ARM64) && defined(_LP64) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's use CPU(ARM64) && CPU(ADDRESS64)
b88f551
to
19de229
Compare
EWS run on current version of this PR (hash 19de229) |
19de229
to
a8e2fd4
Compare
https://bugs.webkit.org/show_bug.cgi?id=252487 Reviewed by Yusuke Suzuki. Optimize TransformationMatrix inverse on ARM64 by using SIMD. This is a cherry-pick of: https://chromium.googlesource.com/chromium/blink/+/7b03a53c2c7f24fb1dd79c0e7f4b7fad520875a5 I benchmarked this locally on M1 Pro with 100k matrices of random double values. I saw a 20% speedup. * Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp: (WebCore::adjoint): (WebCore::inverse): Canonical link: https://commits.webkit.org/260468@main
a8e2fd4
to
cf6d576
Compare
Committed 260468@main (cf6d576): https://commits.webkit.org/260468@main Reviewed commits have been landed. Closing PR #10283 and removing active labels. |
cf6d576
19de229
π§ͺ api-gtkπ§ͺ mac-AS-debug-wk2