|
Enable blend optimizations with instanced draws
Implements InstancedRendering::Batch::computePipelineOptimizations.
It was originally believed that blend optimizations could only hurt
performance by interfering with batching. But it turns out that:
(1) blend optimizations can significantly improve GPU-side performance
by avoiding dual source blending and/or dst copies, and
(2) blend optimizations can actually *facilitate* batching by
allowing opaque src and src_over draws to combine.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2120163002
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+3603 lines, -30 lines) |
Patch |
|
M |
bench/ShapesBench.cpp
|
View
|
1
|
2 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
gyp/gpu.gypi
|
View
|
1
|
2 chunks |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
include/gpu/GrDrawContext.h
|
View
|
1
|
2 chunks |
+2 lines, -0 lines |
0 comments
|
Download
|
|
A |
include/private/GrInstancedPipelineInfo.h
|
View
|
1
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/gpu/GrDrawContext.cpp
|
View
|
1
|
9 chunks |
+81 lines, -13 lines |
0 comments
|
Download
|
|
M |
src/gpu/GrDrawContextPriv.h
|
View
|
1
|
2 chunks |
+5 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/gpu/GrDrawTarget.h
|
View
|
1
|
2 chunks |
+20 lines, -13 lines |
0 comments
|
Download
|
|
M |
src/gpu/GrDrawTarget.cpp
|
View
|
1
|
4 chunks |
+11 lines, -1 line |
0 comments
|
Download
|
|
M |
src/gpu/GrDrawingManager.cpp
|
View
|
1
|
3 chunks |
+14 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/gpu/GrGpu.h
|
View
|
1
|
3 chunks |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/gpu/gl/GrGLGpu.h
|
View
|
1
|
3 chunks |
+5 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/gpu/gl/GrGLGpu.cpp
|
View
|
1
|
3 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/GLInstancedRendering.h
|
View
|
1
|
1 chunk |
+60 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/GLInstancedRendering.cpp
|
View
|
1
|
1 chunk |
+301 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/InstanceProcessor.h
|
View
|
1
|
1 chunk |
+63 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/InstanceProcessor.cpp
|
View
|
1
|
1 chunk |
+2096 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/InstancedRendering.h
|
View
|
1
|
1 chunk |
+187 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/InstancedRendering.cpp
|
View
|
1
|
1 chunk |
+488 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/gpu/instanced/InstancedRenderingTypes.h
|
View
|
1
|
1 chunk |
+192 lines, -0 lines |
0 comments
|
Download
|
Depends on Patchset:
Total messages: 5 (3 generated)
|