WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
179833
FETurbulence: compute all 4 channels at once
https://bugs.webkit.org/show_bug.cgi?id=179833
Summary
FETurbulence: compute all 4 channels at once
Simon Fraser (smfr)
Reported
2017-11-17 11:41:28 PST
We can compute all 4 channels in one pass.
Attachments
Patch
(12.12 KB, patch)
2017-11-17 11:42 PST
,
Simon Fraser (smfr)
no flags
Details
Formatted Diff
Diff
Patch
(20.24 KB, patch)
2017-11-17 17:40 PST
,
Simon Fraser (smfr)
sam
: review+
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Simon Fraser (smfr)
Comment 1
2017-11-17 11:42:17 PST
Created
attachment 327203
[details]
Patch This makes FETurbulence about 2x faster.
Simon Fraser (smfr)
Comment 2
2017-11-17 17:40:38 PST
Created
attachment 327286
[details]
Patch
Sam Weinig
Comment 3
2017-11-17 17:57:01 PST
Comment on
attachment 327286
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=327286&action=review
> Source/WebCore/platform/graphics/ColorUtilities.h:42 > + FloatComponents& operator +=(const FloatComponents& rhs)
We don't usually put a space after 'operator'.
> Source/WebCore/platform/graphics/ColorUtilities.h:51 > + FloatComponents operator +(float rhs) const
We don't usually put a space after 'operator'.
> Source/WebCore/platform/graphics/ColorUtilities.h:61 > + FloatComponents operator /(float denominator) const
We don't usually put a space after 'operator'.
> Source/WebCore/platform/graphics/ColorUtilities.h:71 > + FloatComponents operator *(float factor) const
We don't usually put a space after 'operator'.
Simon Fraser (smfr)
Comment 4
2017-11-17 18:32:32 PST
https://trac.webkit.org/r225009
Radar WebKit Bug Importer
Comment 5
2017-11-17 18:33:35 PST
<
rdar://problem/35628662
>
Sam Weinig
Comment 6
2017-11-18 09:08:04 PST
I know I already reviewed this, but I wonder if this could get an even bigger speedup if we used something like GCC's: typedef float float4 __attribute__((__vector_size__(16))) or clangs: typedef __attribute__((__ext_vector_type__(4))) float float4;
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug