|
Rewriting MatrixConvolution image filter with SSE and AVX2
1. Hottest part of SkMatrixConvolutionImageFilter was moved
to opts/ folder.
2. Create SSE implementation for MatrixConvolution.
Perf.gain ~ 2x over plain implementation.
3. Create AVX2 implementation for MatrixConvolution.
Perf.gain ~ 2.5x over plain implementation.
4. Add runtime check for AVX2 availability (AVX2 implementation
will be uses only if AVX2 is supported by HW).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1881903004
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+400 lines, -30 lines) |
Patch |
 |
M |
gyp/opts.gyp
|
View
|
|
1 chunk |
+1 line, -1 line |
1 comment
|
Download
|
 |
M |
gyp/opts.gypi
|
View
|
|
2 chunks |
+4 lines, -0 lines |
1 comment
|
Download
|
 |
M |
include/effects/SkMatrixConvolutionImageFilter.h
|
View
|
|
1 chunk |
+0 lines, -5 lines |
0 comments
|
Download
|
 |
M |
src/core/SkOpts.h
|
View
|
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/core/SkOpts.cpp
|
View
|
|
2 chunks |
+12 lines, -1 line |
0 comments
|
Download
|
 |
M |
src/effects/SkMatrixConvolutionImageFilter.cpp
|
View
|
|
6 chunks |
+16 lines, -23 lines |
2 comments
|
Download
|
 |
A |
src/opts/SkMatrixConvolutionImageFilter_opts.h
|
View
|
|
1 chunk |
+71 lines, -0 lines |
1 comment
|
Download
|
 |
A |
src/opts/SkMatrixConvolutionImageFilter_opts_AVX2.h
|
View
|
|
1 chunk |
+31 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/opts/SkMatrixConvolutionImageFilter_opts_AVX2.cpp
|
View
|
|
1 chunk |
+112 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/opts/SkMatrixConvolutionImageFilter_opts_SSE.h
|
View
|
|
1 chunk |
+31 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/opts/SkMatrixConvolutionImageFilter_opts_SSE.cpp
|
View
|
|
1 chunk |
+76 lines, -0 lines |
1 comment
|
Download
|
 |
A |
src/opts/SkOpts_avx2.cpp
|
View
|
|
1 chunk |
+17 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/opts/SkOpts_sse_sse2.cpp
|
View
|
|
1 chunk |
+17 lines, -0 lines |
0 comments
|
Download
|
Total messages: 15 (4 generated)
|