|
f18b8606
|
2017-06-13T15:39:40
|
|
Attempt to fix gyp build RangeChecks error.
This puts explicit dependencies from white_box_tests and perftests
on libANGLE. There may be one or two other places where it is
necessary.
BUG=None
Change-Id: Iaa7ea2cade8313c00a396a38f99b5bc8006105db
Reviewed-on: https://chromium-review.googlesource.com/533676
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6de51858
|
2017-04-12T09:53:01
|
|
Optimize angle::BitSetIterator.
Adds a new custom bitset template to handle packing as many bits as
possible into a single variable. Intelligently select the right class
depending on platform features and bit sizes.
For now, always use a packed 64-bit set on 64-bit, instead of using
a 32-bit set for smaller bitsets.
BUG=angleproject:1814
Change-Id: I3ffef815c15515555833f6fc9302d8a4eee5423b
Reviewed-on: https://chromium-review.googlesource.com/471827
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6483eb62
|
2017-02-01T12:57:30
|
|
Add a BlitFramebuffer perf test.
This microbenchmark targets a variety of blit use cases, including
color blit, depth/stencil blit, and multisample resolve blit.
BUG=angleproject:1710
Change-Id: Ia8b3eb40af29e809e803ed48a69f3975b97fd80b
Reviewed-on: https://chromium-review.googlesource.com/435515
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2cf7c51e
|
2017-01-16T15:27:57
|
|
Add a perf test for binding buffers.
BUG=angleproject:1639
Change-Id: I42da2acdb7c99116c4418a2f71d65d72d328d641
Reviewed-on: https://chromium-review.googlesource.com/428572
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
037340d7
|
2017-01-09T14:22:10
|
|
perftests: Make into white box tests.
By using the static libGLESv2 and libEGL, perftests can correctly
test ANGLE internals (like the Index Data Manager) without having
to export across shared object boundaries.
This also will simplify invoking the perftests on the bots because
we don't have to configure a special rpath to find the various
shared objects it would otherwise need.
BUG=angleproject:1660
BUG=chromium:675997
Change-Id: I114abb0756cf6f83e15025a0bcf292faf0064f5e
Reviewed-on: https://chromium-review.googlesource.com/425712
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2d676313
|
2017-01-04T10:44:36
|
|
Refactor common functionality out of draw call perf tests
Common functionality across some perf tests is moved to a separate
utility file, draw_call_perf_utils.
This will make it simpler to add more perf tests, such as tests for
multiview drawing.
BUG=angleproject:1669
TEST=angle_perftests
Change-Id: I2108d7425f7d8f43f333ea9daa6779e42862350b
Reviewed-on: https://chromium-review.googlesource.com/422332
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
457aa6c8
|
2016-11-22T18:36:31
|
|
Add a shader compile performance test.
BUG=angleproject:422
Change-Id: I10a2192c5c91360a1b7fe5e4d014bcf1fa84c96e
Reviewed-on: https://chromium-review.googlesource.com/413713
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
0f40d235
|
2016-09-23T14:50:29
|
|
Add a perf test for changing texture state.
BUG=angleproject:1386
Change-Id: I44da3a4cb2b23f98978349f26b80d6bb3a6dc8b5
Reviewed-on: https://chromium-review.googlesource.com/388784
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
f4863a45
|
2016-04-12T11:37:23
|
|
Add a perf test for setting uniform data.
BUG=angleproject:1353
Change-Id: Iaae79bb85318583c12b9a939ea27a7f7f7f64faf
Reviewed-on: https://chromium-review.googlesource.com/338441
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
022315de
|
2016-03-13T08:18:03
|
|
D3D: Add perf test for dynamic buffer promotion.
Drawing with a DYNAMIC usage array or element array buffer should
eventually lead to internally switching to a static usage, if the app
doesn't modify the data very often. This perf test simply renders a
bunch of random indexed triangles where both buffers are specified as
DYNAMIC. It should perform just as well as the static usage after a
warm-up period.
BUG=angleproject:1334
Change-Id: Ibe432d2122feaefc82d3c11cdf227f93ada82eda
Reviewed-on: https://chromium-review.googlesource.com/332578
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
465b3a5f
|
2015-12-15T12:08:24
|
|
Add texture sampling perf test
The test generates a texture containing random data and then blurs it in
a fragment shader using nearest neighbor sampling. The test is
specifically designed to test overhead of GLSL's builtin texture*()
functions that may result from how ANGLE translates them on each backend.
BUG=angleproject:1261
TEST=angle_perftests
Change-Id: I188fa8c07e609b7f371e587358f913b506bd7d44
Reviewed-on: https://chromium-review.googlesource.com/319382
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
90c253a6
|
2015-12-15T15:14:08
|
|
Add an instancing perf test.
BUG=526217
BUG=angleproject:1164
Change-Id: Ia353a3b2fa0ab0e8b7fd15d72bb63e5ecb7833b1
Reviewed-on: https://chromium-review.googlesource.com/301469
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
84b0c3b7
|
2015-11-05T15:15:28
|
|
Re-land "In D3D, cache static vertex buffers to prevent wasteful recreation"
BUG=angleproject:197
Changes since first failed patch:
- Optimized BufferD3D::getStaticVertexBuffer()
- Removed loop to commit static buffers
- Out-of-date static buffers (which are much rarer anyway after this patch)
are marked for deletion at the *next* draw call, rather than searched for
before each draw call. That search was expensive.
The change should see a net improvement to DrawCallPerfBenchmark for D3D null.
Change-Id: If4942e0afd9e8fefadce8820a1305e13636547ef
Reviewed-on: https://chromium-review.googlesource.com/311115
Tested-by: Austin Kinross <aukinros@microsoft.com>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5b58cae2
|
2015-11-05T14:51:47
|
|
Revert "In D3D, cache static vertex buffers to prevent wasteful recreation"
Perf bisect traced performance regression to this CL:
8.1% regression in angle_perftests/DrawCallPerf_d3d9_null/score
6.2% regression in angle_perftests/DrawCallPerf_d3d11_null/score
BUG=angleproject:197
This reverts commit 868651d334d060458af13c7ff9211c2f72be0cad.
Change-Id: Iaba7eb4e574eb886496361e61fd5fe78ca14dcb8
Reviewed-on: https://chromium-review.googlesource.com/311150
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
868651d3
|
2015-08-31T15:31:18
|
|
In D3D, cache static vertex buffers to prevent wasteful recreation
BUG=angleproject:197
Change-Id: I66cd10609b2edbcf12b99530eafe1727511fe515
Reviewed-on: https://chromium-review.googlesource.com/296503
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5a85bee2
|
2015-10-02T14:06:06
|
|
Add angle_perftests to GN.
Also clean up the formatting a bit with gn format.
BUG=537008
Change-Id: I23337e634f20f611aaae7d17ef47b5784738bbe8
Reviewed-on: https://chromium-review.googlesource.com/303793
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
dd323e95
|
2015-06-09T15:16:31
|
|
Only run tests that the current hardware can support.
For each config, determine if a context can be created at test
instantiation time. This allows skipping of ES3 tests when the hardware
does not support ES3.
Updated the perf_tests to use the EGLPlatformParameters struct so that
they can be filtered in the same way.
Change-Id: If664604b057cec4005eb4b63bebd83cd4964b7b2
Reviewed-on: https://chromium-review.googlesource.com/276460
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ce232678
|
2015-05-28T13:26:02
|
|
Add a perf test for eglInitialize.
Also shutdown performance, since it's not easy to only test one.
BUG=angleproject:1014
Change-Id: I9d06426788ed336031271f8876589b111f1294b7
Reviewed-on: https://chromium-review.googlesource.com/273974
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
b2b6dfaf
|
2015-05-25T12:31:13
|
|
Use absolute paths in angle_perftests.gypi
Otherwise in the Chromium build gyp might have a wrong cwd and then ninja
will fail to find the files to compile.
BUG=angleproject:892
Change-Id: I6b7beef5ecad62cc345b49253cedbde0ac166c17
Reviewed-on: https://chromium-review.googlesource.com/273161
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1ee5b60a
|
2015-05-25T11:15:53
|
|
Merge separate definitions of include_dirs for perftests
BUG=angleproject:892
Change-Id: Ifd108b3119ea73c05e984ca9138536fb8cf6839c
Reviewed-on: https://chromium-review.googlesource.com/273137
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
b45a80db
|
2015-05-21T10:39:43
|
|
Make perftests use ANGLE_INSTANTIATE_TEST
This also moves ANGLE_INSTANTIATE_TEST to its own header and makes it
generic over the type of test parameter.
BUG=angleproject:892
Change-Id: Id4e3929d7ad06964b3259015915be84a8ee414f9
Reviewed-on: https://chromium-review.googlesource.com/272553
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
1b21fd39
|
2015-05-20T17:26:27
|
|
Make perftests compile on Linux
BUG=angleproject:892
Change-Id: I3fe43c7a84d1eb2b875309495fe27a0bfd6c3e82
Reviewed-on: https://chromium-review.googlesource.com/272552
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
87717702
|
2015-04-13T13:50:24
|
|
Add an IndexDataManager perf test.
This microbenchmark tests the time at which we find index ranges
in the cache, and how long the call to prepareIndexData might take.
It also verifies we successfully store index ranges in the cache.
BUG=angleproject:956
Change-Id: I0f1b0c00daa73d8e1bcde197d9de80ca229078b7
Reviewed-on: https://chromium-review.googlesource.com/262779
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b48e8b07
|
2015-04-15T14:26:37
|
|
D3D11: Only rewrite for primitive restart when needed.
We would rewrite our index data every draw call. Change the index
check to see if we're writing to the same sized / typed static
buffer and only rewrite the data if the user re-uploaded.
Also add a performance test for the primitive restart workaround.
As a future improvement we could avoid creating new D3D objects
every time we reinitialize static data, since BufferSubData
calls don't change the size of the buffer if the index type
remains the same.
BUG=476658
Change-Id: I9d2540ad8b1b34fa0142ba0bf794cf572da8c61d
Reviewed-on: https://chromium-review.googlesource.com/265838
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
99f075da
|
2015-04-01T15:48:07
|
|
Split DrawCallPerf test from BufferSubData test.
This will give us better dashboard encapsulation when we're
running on the Chromium bots. It also paves the way for more
specialized draw call tests, like for indexed draw, with uniform
updates, instancing, etc.
BUG=angleproject:744
Change-Id: I396de28c027f99da18a0904f959d23b59cac2010
Reviewed-on: https://chromium-review.googlesource.com/263505
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
be13ffca
|
2015-03-19T13:42:16
|
|
Use google test to wrap our perf tests.
This provides easy implementation with the Chromium perf bots.
BUG=angleproject:744
Change-Id: I71c04e3d67cae9344ddca9fd95fd3c9849494922
Reviewed-on: https://chromium-review.googlesource.com/260644
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|