Descriptioncontent: perf tests for GpuMemoryBuffers mapping and data coherency
Alternate perftest using GMB unit tests.
The idea is to benchmark how the hardware, on different usages of
GpuMemoryBuffer, performs when a native buffer object is mapped into the CPU.
In particular this test aims to capture the effects of data coherency and could
be extended further to answer the following:
- measure memory mapping performance of GpuMemoryBuffer using shared memory
(fallback case) and also native implementation of it.
- what if the Renderer process (client) just writes into the buffer object?
- what's the effect of reading from a write-combining (WC) memory? can we
avoid read backs?
- should it be UC and/or WC mapped, to get a faster access?
- what the effect of clients doing sequential writes or non-sequential? If
the latter, a WC mapping may end up being very slow.
Besides, this CL mimics Chrome OS vgem_fb_test.c but using CC and content to
get a close to real feeling of the things. It's rather important to stress
native buffers, so GL and etc needs to work together with a 3D (non-fake)
output surface. These tests are running on top of content/ architecture.
TEST=content_perftests --gtest_filter=GpuMemoryBufferPerf* --ozone-platform=gbm --ozone-use-surfaceless
BUG=475633
Patch Set 1 #Patch Set 2 : remove superfluous code from Map #Patch Set 3 : move to content_perftest #Patch Set 4 : print mean instead #Patch Set 5 : Add Read, Write and Read & Write #Patch Set 6 : update to ToT + needed CLs (1128113011, 1134993003, 1208603002 and 1212133006) #
Messages
Total messages: 7 (2 generated)
|