|
fb34c93d
|
2020-11-09T19:30:17
|
|
Perf Tests: Add mutex around trace events.
This prevents a race where two threads try to write events
simultaneously.
Bug: b/172704839
Change-Id: Idd2f3b1c2a393488ea2270b91d579dc8630e59d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2533496
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b22f8e8e
|
2020-10-29T15:50:39
|
|
Vulkan: Add specialization constants for surface rotation
This plumbing through the specialization constant for surface rotation
from ContextVk to pipeline program creation. It has not been used yet,
so expecting no real functional change. This CL also converts
lineRasterEmulation to use the same specialization constant path as
surface rotation.
Bug: b/171750979
Change-Id: Ic08c4f8bb576424d1752015e874d0977a58d78bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508837
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
489f2c83
|
2020-11-06T17:24:28
|
|
Perf Tests: Trace multiple threads.
This uses a little helper list to map thread IDs into simple serials
that we output as 'tid' in our trace JSON file. We can use this to
analyze the behaviour of the command processor thread.
Bug: b/172704839
Change-Id: Ic1b5f3ec8427cb310833d1f589503daec4812681
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2524542
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
06eaaac5
|
2020-11-06T16:33:13
|
|
Fix trace writing in angle_perftests.
We can use this to produce AGI-like reports in standalone desktop.
Bug: b/172704839
Change-Id: Ifc510232e3da81210e22429b6cea9800e2723e06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2524540
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4323ed0c
|
2020-11-06T12:45:12
|
|
Perf Tests: Fix test time with max steps performed.
This lets the default test time be 10 minutes when using a maximum
steps value. This will prevent the current 10 second limit from
kicking in and aborting. Also changes the --test-time override to
be more clearly a calibration time, and adds a new --test-time that
lets the user override the actual trial test time.
Bug: b/172480147
Change-Id: I630aa8d3c9e118bb5f0100b38f37e717e12f3538
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2523371
Reviewed-by: Paul Thomson <paulthomson@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
af16c638
|
2020-11-06T09:50:51
|
|
Perf Tests: Add --max-steps-performed argument.
This will limit the total number of steps run in the test.
When using this argument we skip warmp & calibration.
Renames the prior --steps argument to --steps-per-trial.
Bug: b/172480147
Change-Id: Iae7cce26d66ca0bbdb21c1f511a6bfa246bd204e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2519404
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3e5b6f81
|
2020-10-31T12:33:28
|
|
Enable writing histogram-set-json-format.
This uses the protobuf histogram functionality to build up a histogram
set. The test suites then output the histograms to JSON. This is only
implemented for angle_perftests.
Bug: angleproject:5161
Change-Id: Ia5a7868e8d8dcf4f13d83115ae622828c63ef0d9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482295
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
257b9ad9
|
2020-10-29T12:40:33
|
|
Add a perf test for scissored draw calls
Bug: angleproject:4988
Change-Id: I59facc66aaa2af216d3a6c6ef1e4efa934a45cb8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2506779
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
77defeb0
|
2020-10-27T18:31:53
|
|
Add the ability to re-trace existing traces.
This new script runs the ANGLE trace tests with capture enabled to
generate updated replay cpp files. This allows us to update our
traces files to a new file format in one step.
Trace metadata (currently only the default FBO format) is preserved
between re-traces.
Currently only desktop-based retracing is supported. This means a
couple traces that require specific extensions don't run on all
platforms.
Bug: angleproject:5134
Change-Id: I7c923d89e33c18285ab36a7cee91f2fb735758eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488130
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
626a4185
|
2020-10-27T18:31:52
|
|
Trace Tests: Allow runs against SwiftShader.
SwiftShader can allow for a platform-indendent replay. This is useful
for re-tracing. By default disable the SwiftShader test configs unless
we pass in --enable-all-trace-tests.
Also disable the mock ICD trace tests by default.
Bug: angleproject:5134
Change-Id: Ibf1f3ebd6c17f15123705b7d4d9ddd6308f873f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2502311
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
85782968
|
2020-10-27T08:16:58
|
|
Fix extension requirement for "World of Tanks".
GL_EXT_disjoint_timer_query was missing the "GL_".
Bug: b/171446929
Change-Id: I6e11f18bfa3da18efc65691a94a6290fbcf16777
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2502309
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5cbf54da
|
2020-10-18T10:42:07
|
|
Vulkan: Fix exposure requirements for EXT_texture_format_sRGB_override
Previously we were not checking for the correct format support
to expose this extension. This change fixes that, and disables
the extension if we do not support the formats we need for our
implementation to function. This also adds an end2end test to
check each possible format that can be used with this extension.
Update GLES major version to 3 for TextureSampling perf benchmark
Bug: angleproject:4561
Change-Id: Ic81bb28f02f9f36e1bc83a8eea376169de9e7735
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2359482
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
29ca7186
|
2020-10-25T11:16:29
|
|
Tests: Add Dragon Ball Legends trace
TBR: jmadill@chromium.org,courtneygo@google.com
Test: angle_perftests --gtest_filter="*dragon_ball_legends*"
Bug: b/171652453
Change-Id: I668232f3a1e7ca9663f481fb4246b44fb9333b4a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497104
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
258f17d6
|
2020-10-23T10:39:25
|
|
Tests: Add World of Tanks Blitz trace
Test: angle_perftests --gtest_filter="*world_of_tanks_blitz*"
Bug: b/171446929
Change-Id: I028bfde50baa583f1ff7bf30ad77fe40026c7ca7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495486
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8feb5c82
|
2020-10-20T15:49:13
|
|
Tests: Add Marvel Contest of Champions trace
Test: angle_perftests --gtest_filter="*marvel_contest_of_champions*"
Bug: b/171334313
Change-Id: Ia1195a5647ad2805e3cabd23c15719eb1ebc3534
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2487764
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
d591ddff
|
2020-10-08T10:36:21
|
|
Tests: Add Free Fire trace
Test: angle_perftests --gtest_filter="*free_fire*"
Bug: b/168049517
Change-Id: Ide772454fe5c602d92bf9c476d33da420b9dfa14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461350
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
9d160b0b
|
2020-10-16T08:31:18
|
|
Tests: Add Brawl Stars trace
Test: angle_perftests --gtest_filter="*brawl_stars*"
Bug: b/171043467
Change-Id: Ide04fbbfd69145554c6dbb544d6ee4daa51df9cc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481154
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8061002b
|
2020-10-16T11:24:04
|
|
Perf tests: Bump replay ES version to 3.1
Required to run traces of newer apps.
Test: LEGO MEC
Bug: b/161716126
Bug: angleproject:4048
Change-Id: Ie135fc1ce461460e1bc0978ceca4ba8c9cff68e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481153
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
5eebf3a7
|
2020-10-18T11:44:27
|
|
Perf Tests: Call finish every step in calibration.
Calibration is only supposed to take one second of warmup time.
Instead we were queuing up a large amount of GPU work and then janking
on the finish call at the end of calibration.
Fix this by calling glFinish repeatedly during calibration.
Bug: chromium:1136900
Change-Id: Idb2fefe17fcb9acbe688cff5a36f051732fc5b59
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483462
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
51ff0d05
|
2020-10-16T11:54:04
|
|
Trace Tests: Add vsync-limited mode with a GPU timer.
Local testing on Linux shows that ANGLE and native have
the same wall-time, and ANGLE has a 10 ms vs native 6 ms
GPU time.
Bug: angleproject:5183
Change-Id: I26da678b984af916bfb40e1db6416f5df4f85c08
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2480782
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ecbac31c
|
2020-10-16T10:36:06
|
|
Perf Tests: Add offscreen mode.
This lets the trace perf tests run configurable number of frames
within a single swap. The offscreen config is similar to how
gfxbench works. It renders to a user FBO (by overriding calls to
BindFramebuffer) and then composits multiple frames into the real
backbuffer. This allows us to get a perf measurement with less
overhead from composition and display.
Adds emulation for some APIs that operate on Framebuffers like
BindFramebuffer, Invalidate, DrawBuffers and ReadBuffer.
Bug: angleproject:4845
Change-Id: I1044c1d52c82f1c215a68a6c46d74c52ed0f3d2a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2300207
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
089eac22
|
2020-10-11T12:40:07
|
|
Perf tests: remove redundant null naming.
Bug: None
Change-Id: I9e3e0d8b160a438c9001d9dbd4bb067355b9e562
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2475457
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8af9ef3b
|
2020-10-06T10:59:07
|
|
Add emulated format clear perf test
Bug: angleproject:4836
Change-Id: If900d288630ba5fbf82b8b1ce2ccab681cfc50c3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2451481
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a22a19a4
|
2020-10-04T13:16:46
|
|
Add a --no-finish option to the perf tests.
We can use this to re-capture replays.
Bug: angleproject:5134
Change-Id: I765e0bbb66cfdd822ffa981f2b5533157d024cac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2449161
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
974c2371
|
2020-10-04T12:22:38
|
|
Perf Tests: Run at least 1 step.
We could end up in some very slow scenes (e.g. when debugging). This
could produce a step count of zero which doesn't make sense. Noticed
while capturing the T-Rex replay.
Bug: angleproject:5134
Change-Id: Ibf2439961dfb3c01649dcab37acead7b6e2ab345
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2449160
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e815afbf
|
2020-09-07T22:09:22
|
|
First pass at increasing inclusivity
Link to the inclusivity rules
https://source.android.com/setup/contribute/respectful-code
Bug: b/162834212
Bug: chromium:1097198
Change-Id: Ied5a9e3879d72bff3f77ea6fcda9b82f30c32c2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2396737
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Trevor Black <vantablack@google.com>
|
|
eb1df14b
|
2020-10-01T16:25:33
|
|
Suppress MultisampledRenderToTextureBenchmark on Pixel2/GLES
This test started failing, but we don't care about performance on
GLES so we can suppress it for now.
Bug: angleproject:5120
Change-Id: If5eb865956ee5fb6f798d110d42e3493294bc18e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2443590
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
11d94d86
|
2020-09-23T15:16:19
|
|
Integrate Skia Gold with restricted trace tests.
The implementation is based heavily on the Chromium Skia Gold
Python classes in //build/skia_gold_common .
Results will be visible here: https://angle-gold.skia.org/
Currently results are not visible until this CL lands.
Bug: angleproject:4090
Bug: b/168049670
Change-Id: I7a5d64fe35583ad7ea6360804a0f6b72cd9f6d8b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2430179
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f8e5b97e
|
2020-09-28T23:31:41
|
|
Additional perf test cleanup & functionality.
Adds several new command line arguments and documents all args in the
README. Changes the trace tests to output milliseconds.
Bug: b/169600938
Change-Id: Ie8c7840a6a8958951992c806979dde6dc7d8a709
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2438194
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
6e36029d
|
2020-09-28T21:57:08
|
|
Disable Mock ICD perf tests on Android.
Bug: angleproject:5084
Change-Id: Iafff2adbd8bfc2844c43ca31329f3f8be1250631
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2438193
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5ec560fb
|
2020-09-17T17:18:25
|
|
Add restricted trace golden image script test.
The script reads the list of tests from the restricted traces JSON and
runs angle_perftests once for each test. Running the tests in a batch
seems unstable on some platfroms so running each test separately works
around that limitation. It does not yet interact with Skia Gold. The
Gold integration will come later once this basic skeleton is running
on the bots.
Also updates the perf tests to exit more quickly with --one-frame-only.
This will speed up the screenshots.
Example run with trigger.py:
https://chromium-swarm.appspot.com/task?id=4ecb985330a33910
Bug: angleproject:4090
Bug: b/168049670
Test: tested with trigger.py
Change-Id: I52820dfba2acfbc5d638673c37297877e8476adb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2417641
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
8f7970cb
|
2020-09-21T18:25:21
|
|
Trace/Replay: Reset replay after taking a screenshot.
This was causing a replay state tracking error that could fail some
traces. For example, Mobile Legends.
Bug: angleproject:4090
Bug: b/168049670
Change-Id: Ia4c2db795bb861fba77c9c35217ab22c2004c492
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2422686
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
bda2205d
|
2020-09-17T14:37:25
|
|
Traces: Move up from tests/perf_tests/ to tests/.
The trace tests aren't strictly for performance. Since we'll be using
them for correctenss testing as well it makes sense to move them out
of the perf_tests/ folder.
Also renames RestrictedTraceTests.md to README.md so it'll load
automatically in gitiles.
Bug: angleproject:4090
Bug: b/168049670
Change-Id: I8be9f1d831489a9abf534d049a93441687850142
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2416913
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c99c22bb
|
2020-09-15T16:53:26
|
|
EGL: Add support for EGL_ANDROID_create_native_client_buffer
This EGL extension will add support for creating EGLClientBuffer
backed by an Android window buffer (struct ANativeWindowBuffer)
which can be later used to create an EGLImage.
Bug: angleproject:5018
Tests: angle_end2end_tests --gtest_filter=ImageTest.SourceNativeClientBufferTarget*
Change-Id: If78ed7b80ad09629b8c5f5b5a0eb07a548e82e6e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2404320
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
a2d670c5
|
2020-08-15T21:13:33
|
|
Run trace tests against Vulkan Mock ICD.
Required an upstream fix:
https://github.com/KhronosGroup/Vulkan-Tools/pull/437
Also a workaround filed as an issue:
https://github.com/KhronosGroup/Vulkan-Tools/issues/445
Bug: angleproject:4950
Change-Id: I21333464d2a8e52d5d85d35654f0e6372f9650db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2358517
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ba7f8913
|
2020-09-12T23:23:01
|
|
Samples: Enable Debug callback.
This moves the debug callback code into a common location. For ease of
access it's in shader_utils since that file has access to the GL API.
Bug: angleproject:5040
Change-Id: Iab9de47c2d520a5618ea6825852f8afa63565c8a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2408715
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
bca88739
|
2020-08-16T11:32:40
|
|
Add a perf test that cycles through many VBOs.
Stresses the RenderPass buffer tracking in the Vulkan back-end.
Bug: angleproject:4950
Change-Id: I33d38d8703d0e333d0092195d34228d90f1af52a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2358522
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f184cb61
|
2020-09-06T22:29:29
|
|
Add perf test for multisampled render to texture
Bug: angleproject:4881
Change-Id: I4733e2868a3e056ec61463fec88d17aaa564234f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2394955
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4f7edbe1
|
2020-06-03T14:51:50
|
|
State: Add dirty object for active textures.
Checking sampler completeness after every sampler related
state change is inefficient. Defer sampler completeness
check to draw time.
Based on a CL by hckim.kim@samsung.com.
Bug: angleproject:4765
Tests: angle_perftests.exe --gtest_filter=TexturesBenchmark.*
Change-Id: I7e971371e40b3044ca3d5ca39bfe7fc600620c3e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2268577
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c4a82aaa
|
2020-08-17T11:16:22
|
|
Tests: Add COD:Mobile trace
Test: angle_perftests --gtest_filter=TracePerfTest.Run/*cod_mobile*
Bug: b/164426913
Bug: angleproject:4048
Change-Id: I306714632b635c728fa212ed793f076c6b889227
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2360047
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
e89eb912
|
2020-08-12T11:21:07
|
|
Reduce spam in native perf tests.
The QC driver was repeating HIGH priority messages about map flags.
Bug: angleproject:4943
Change-Id: I927c38249f840544a7c1f5e595fa34e706e401bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2352472
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
cc958e0e
|
2020-08-12T14:27:42
|
|
Remove D3D9 configs from perf tests.
We are not maintaining D3D9 for performance and reducing the number
of perf tests will speed up the bots.
Bug: angleproject:4943
Change-Id: Ib4ddad2cbfefcf6fccf3307df3bac7565ef246f4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2352478
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d667ad2f
|
2020-08-11T16:09:36
|
|
Tests: Add Mobile Legends trace
Test: angle_perftests --gtest_filter=TracePerfTest.Run/*mobile*
Bug: b/163619545
Bug: angleproject:4048
Change-Id: I8ed176afe10b758a22b539d526bf02a9fe35ab92
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2350582
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
48d951e2
|
2020-07-30T15:32:03
|
|
Perf Tests: Handle logError callback.
This will force errors when ANGLE runs into Vulkan Validation Layer
failures and other internal bugs. Currently we could sometimes fail
silently. Especially on Android where the error would only show up in
logcat.
Bug: angleproject:4909
Change-Id: Ie2888805c577d9fbad417d45a33e3269966b7b25
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2330091
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
063d754b
|
2020-08-07T12:02:13
|
|
Tests: Update NBA2K20 trace
Significantly reduce setup for this trace. First frame drops
from ~430K lines to ~150K lines of code. Compile/link times
should be bearable.
TBR: ianelliott@google.com,jmadill@chromium.org
Test: angle_perftests --gtest_filter="TracePerfTest.Run/*nba*"
Bug: b/160014453
Change-Id: Ia33941012e02ec5488d039501f592dc48e9acfe4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2343454
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
fc8866cf
|
2020-08-07T10:31:35
|
|
Tests: Update Angry Birds 2 trace
Primarily fix the width/height of the drawing surface,
but also pull in changes from July 2020 update.
TBR: courtneygo@google.com,jmadill@chromium.org
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/157672184
Change-Id: Ia6e16f6d695954f50b3d2a4e8aaaa88514b461d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2343453
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
e4e2a847
|
2020-08-03T14:09:49
|
|
Entry points for ANGLE_external_objects_flags
Bug: angleproject:4912
Bug: fuchsia:52759
Change-Id: If339f096a74cc87d16a6494562711d718a7738ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2335019
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1780609d
|
2020-08-03T17:01:21
|
|
Trace Tests: Disable timestamp queries.
This framebuffer changing timing code adds overhead so it should stay
disabled unless turned on explicitly.
This was causing a performance regression in the native benchmark for
some trace tests like egypt.
Bug: angleproject:4845
Change-Id: I51c77d544cae063ba185aa4f20d028d9ffa7a2ab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2335021
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4f7f4387
|
2020-07-24T11:44:02
|
|
Add entry points for OES/EXT_texture_buffer
This extension is core in 3.2
Bug: angleproject:3573
Change-Id: If08736759da2fdc680cfa396d354dbfa97d1a60f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2317040
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2d0265fa
|
2020-08-02T12:01:46
|
|
Trace Tests: Scale results based on frames in capture.
This now reports averaged time per frame instead of per "step".
Scores in general will be divided by 11. Results still reported
in nanoseconds.
Bug: angleproject:4920
Change-Id: I6f9dca75885cce358c3c7d1e871441969d8aa3d3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2334095
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
bd7cef28
|
2020-07-31T11:18:27
|
|
Trace Tests: Fix Win/x86 crash.
A missing KHRONOS_APIENTRY annotation was causing a crash due to
stack corruption in Win/x86 only.
Bug: angleproject:4845
Bug: chromium:1111764
Change-Id: I60b30ce8bc409c71d223eaedd74dc0c1ae034f7a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2331739
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f3a38d97
|
2020-07-23T19:00:34
|
|
Add a custom trace tests loader.
This custom loader will disambiguate the trace tests gl layer
from the util GL/EGL loader.
Bug: angleproject:4845
Change-Id: I5e8340eb50f736d931302f71f15f556fd9e52081
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2315627
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Manh Nguyen <nguyenmh@google.com>
|
|
aed3d65b
|
2020-07-29T22:23:00
|
|
Tests: Add NBA2K20 trace
Test: angle_perftests --gtest_filter="TracePerfTest.Run/*nba*"
Bug: b/160014453
Bug: angleproject:4048
Change-Id: I4899af05d48ad2900e6d5e44adc5f5e0bdba157e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2326911
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5f6f47f6
|
2020-07-29T14:26:37
|
|
Tests: Update gfxbench traces
Use new capture calls to support offscreen mode.
Test: run_angle_perftests --gtest_filter="*Trace*"
Bug: angleproject:4845
Change-Id: I6d9ea79bd8339b7d5398e34b0407425e80ce1d32
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2327699
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
bba8daea
|
2020-07-27T20:07:53
|
|
Perf Tests: Use timestamp queries for GPU time.
Testing shows that using timestamp queries and deferring the
query get calls until after the frame produces little overhead.
Also this fixes a missing GPU time reset between iterations.
Bug: angleproject:4879
Change-Id: I2a566548add1536aab689cd969594a15f0628da3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2321573
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
52d25633
|
2020-07-27T17:37:46
|
|
Disable GPU time tracking in trace tests.
Adds considerable overhead to wall time on Adreno. Not tested on
other platforms.
Bug: angleproject:4879
Change-Id: Ib219f14162fb5768e484f717ed2a870478bd1c86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2321404
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ca8f856a
|
2020-07-22T13:56:40
|
|
Tests: Update gfxbench traces
Migrate from traces recorded on desktop to traces recorded
on a Pixel 4 XL. This impacts the resolution and framebuffer
config used for the tests. They now more accurately reflect
the numbers seen from running the benchmark directly.
Test: angle_perftests --gtest_filter=TracePerfTest.Run/*
Bug: angleproject:4048
Change-Id: Ib013dfb35c32c6f97bcae76a74cc16d9a5d1a369
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2314896
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a4535c18
|
2020-07-22T14:52:26
|
|
Fix trace tests auto-generation.
This moves the trace header inclusion to the cpp file so that the
test itself doesn't need to look at the individual trace headers.
This fixes an include directory dependency. Also removes the FBO
change callback from the generated traces.
Bug: angleproject:4845
Change-Id: I019f0d347a62a81b92bf32110572911111212689
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2314217
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9faf0cdc
|
2020-07-20T10:30:55
|
|
Capture/Replay: Use custom GL header.
This will let us override the util loader for all new traces. It will
also be easier to maintain going forward if we have to change the
header again.
The end goal is to run the trace tests with a custom GL layer that can
intercept certain API calls.
Bug: angleproject:4845
Change-Id: I028a1afdadf638998805d7b9a2cc6717cf5f0148
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2308029
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
6ca2c116
|
2020-07-17T13:07:24
|
|
Make trace tests a shared library.
This will facilitate intercepting the GL calls and implementing
emulation paths for offscreen redering. Or other EGL/GL features.
It does not yet override the GLES loader and uses the shared
'angle_util' loader as it did before.
Bug: angleproject:4845
Change-Id: I68806c307f59e1852999299e88dc358781817f12
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2305042
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Manh Nguyen <nguyenmh@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
4fa75b5c
|
2020-07-17T12:58:50
|
|
Move restricted trace functions to cpp file.
This is a refactoring change only. It will facilitate moving these
functions to a shared library. A shared library will allow us to more
easily override GL functions with an interception layer. The intercept
layer will allow us to do emulation for features like offscreen tests.
Bug: angleproject:4845
Change-Id: I0e00c0c22a26f1bb8faec30a825c71953033f8a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2305039
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
4e577a2a
|
2020-07-15T15:50:06
|
|
Perf Tests: Make "offscreen" a common test param.
This will let us use it in the trace perf tests.
Bug: angleproject:4845
Change-Id: I6188a0765c6f482bb38842faa4c58209c70b0153
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2300206
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4e7a6a69
|
2020-07-15T19:35:43
|
|
Perf Tests: Fix trace test calibration.
The trace tests were including the startup time in their calibration
calculations. Then was forcing them to always render one step. This
fixes the calibration to attempt to get a more consistent measurement.
The trace tests now render many more steps than they did before. It
should increase the stability and decrease variance in our measurements
as they will be runnnig many more frames than before.
Also adds a verbose logging flag to help debugging.
Noticed this bug when working on the trace test offscreen mode.
Bug: angleproject:4845
Change-Id: Iff0c987008a935e7051fca34ef12f4433eb46092
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2300205
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6fe87f4a
|
2020-07-10T09:13:39
|
|
Tests: Change screen orientation for traces on Android
This CL adds a reverse JNI call to our Android Native Activity that
sets the orientation of the screen based on width and height.
To achieve this we:
* Attach to the java thread once at the beginning to grab JNI env.
* Detach from the thread once when platform sends APP_CMD_DESTROY
* Set the orientation during test init
Bug: angleproject:4327
Change-Id: Ifbe31a6a84dd60a0dfe7d7032962c99b290d8b81
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2289054
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
1265dbe6
|
2020-06-24T15:12:17
|
|
Update JsonCpp usage
This patch updates usages of the JsonCpp library, including the
following changes:
1. Removed unused version variable from the DEPS file.
2. Removed deprecated writer and reader usages, in favor of the new
builder pattern inside JsonCpp.
3. Modernized usage of the Json::Value types, including some rewrites to
avoid unnecessary heap allocations, and using the new foreach
iterators.
Bug: chromium:983223
Change-Id: If26abc8be677d905183a23498fbb81256854525c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2265093
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
bdf91e5f
|
2020-06-29T13:47:13
|
|
Refactor frame_capture_utils.h to frame_capture_test_utils.h
frame_capture_utils.h is only used in tests so changing the name to be
frame_capture_test_utils.h is more appropriate. Also
frame_capture_utils.h will now be a file in libANGLE_with_capture
library where serialization code is stored.
Bug: angleproject:4806
Change-Id: I7482693a75b2d0edda7e84ae9b777fd3f46f1855
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2273917
Commit-Queue: Manh Nguyen <nguyenmh@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ea15439b
|
2020-06-23T00:17:52
|
|
Add mipmap generation perf test for emulated formats
Add a variation to mipmap generation perf test to measure performance
when given a format that requires emulation in the Vulkan backend, in
this case GL_RGB.
Bug: angleproject:4551
Change-Id: I4c533d13e35279fec9e007691fb64353735040d7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2259199
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c028fc73
|
2020-06-19T09:06:03
|
|
Tests: Update traces to include draw surface width/height
The traces now contain the original resolution they ran with,
so we can set that based on testID.
This fixes correctness problems on Android, where only a fraction
of the screen could be seen during replay.
Bug: b/159238311
Test: angle_perftests --gtest_filter="*Trace*"
Change-Id: I47b92ee31681998260bad059cde0856a25ae0fc6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2250863
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Manh Nguyen <nguyenmh@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e474cc9e
|
2020-06-18T16:03:30
|
|
Download restricted trace data
To ensure that things are built we need to update the modification time
on the files we download. This adds a script to download the requested
files and then touch everything that was downloaded in the traces
folders.
Bug: chromium:1096577
Change-Id: Idce6abb6100e7c662429a9db71b1a44a78dd88a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2252544
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
c81f0b7b
|
2020-06-18T15:32:48
|
|
Tests: Update trace timestamps
Move all timestamps forward to get CQ working again.
TBR=courtneygo@google.com,jmadill@chromium.org
Test: angle_perftests --gtest_filter="*Trace*"
Bug: angleproject:4762
Change-Id: I1aff31a705d9a014d4ec3463d3d7b4bf6f3208a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2252542
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
24945828
|
2020-06-18T10:00:33
|
|
Disable ES3 perf tests on Nvidia/windows7/Vulkan
Notry: true
Bug: chromium:1096510
Change-Id: I488d572f448d48402138e38b42fbf46c940a8b97
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2252118
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d44da6e9
|
2020-06-17T23:55:02
|
|
Fix restricted_traces/.gitignore
Use a pattern to exclude all compressed and uncompressed test files
instead of relying on them being manually entered.
Bug: None
Change-Id: I76a3117ebeb22f25c46059e84457afffa5ef6757
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2251319
Reviewed-by: Manh Nguyen <nguyenmh@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
51487e1e
|
2020-06-15T23:35:39
|
|
Add mipmap generation perftest
Bug: angleproject:4551
Change-Id: Iae205674029888447d070e0df30b65828b6fa6eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2246732
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e6124500
|
2020-06-02T12:02:55
|
|
Fix baseVertex and baseInstance with streaming attributes
baseInstance: Fixed by adding the intial offset to each copy for
streaming attributes
baseVertex: make sure mShaderConstants.onFirstVertexChange takes
in correct firstVertex value for dynamic attribs (where firstVertex
passed to StateManager11::updateState already include baseVertex)
Bug: chromium:1078330, angleproject:3402
Change-Id: I289c4e3733fdf6f78af8c3adee84112c05a5abce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227022
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
4e6f6545
|
2020-04-16T16:31:24
|
|
GLX: Support X11 pixmaps
Add support for creating EGL pixmaps from X11 pixmaps using GLX.
Pixmaps are needed for various external APIs such as VAAPI.
Add support for EGL_NOK_texture_from_pixmap to allow binding
pixmaps to textures.
BUG=angleproject:4560
Change-Id: I4a6d3ad7e87151ff5317bbdaaf093ac1b46daf5f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2153805
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
aad69df9
|
2020-06-11T13:27:52
|
|
Run TracePerfTests in WGL configs.
Uses the "native" naming pattern.
Bug: angleproject:4728
Change-Id: I28cafcdb8c5c1fb48bba51adeca641e88bfe3446
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2241619
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
53c3ea8f
|
2020-06-05T17:21:44
|
|
Perf: Add a trace of Angry Birds 2
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/157672184
Change-Id: If4885398aff73ce774987fbeefb63d140f7fab1d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2233367
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4360c6b9
|
2020-06-04T16:58:16
|
|
Perf: Ensure last frame is replayed for traces
This is now required for upcoming buffer mapping resets.
Test: Angry Birds 2 MEC
Bug: b/157672184
Change-Id: I6358acf42ca9b92bfff621f12f207be7c3655e52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2231801
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
0df92012
|
2020-06-03T17:08:43
|
|
Rename Platform.h to PlatformMethods.h.
"platform.h" is too common a name and causes headers to be
included incorrectly. Disambiguate the header using a more
specific name.
Solves a problem that came up with the GLES 1 tests and the
standalone test harness.
Bug: angleproject:3162
Change-Id: I88229a2c9407e0db57f5beee44daa11a4075f700
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2229065
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
957a2359
|
2020-06-02T11:09:18
|
|
Skip VulkanBarriersPerfBenchmark on NV/Win.
This test is failing because our out-of-date Windows 7 NV bots
can't create a GLES 3.0 context. Skip this test until the machines
are updated.
Also updates our wrapper classes to check for an empty handle
before calling delete. Prevents a crash trying to call null functions.
Bug: chromium:1090139
Change-Id: I0bb58f8bd167691cd241fb0df30cdf4b2f6adf5b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225447
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b3693762
|
2020-05-22T14:44:48
|
|
Vulkan: Enhance VulkanBarriersPerfBenchmark
1. Request a GLES3.0 context
2. Create 2 uniform buffers to be used in the new test case
3. Increase the size of the viewport
4. Add a new test case where we issue draw and buffer
copy commands. The expectation is that the draw to
FBO and the copy between the 2 buffers happen in
parallel.
Bug: angleproject:4633
Test: angle_perftest --gtest_filter=VulkanBarriersPerfBenchmark.Run/vulkan_buffer_copy
Change-Id: I3c5d287c05451f77053962371a96e2de6a8ea00d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215139
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
48102b2b
|
2020-05-29T10:28:18
|
|
Perf: Add Candy Crush trace
TBR: jmadill@chromium.org,nguyenmh@google.com,tobine@google.com
Test: angle_perftest --gtest_filter="*candy*"
Bug: b/150458396
Change-Id: I79c86b8d111ef55528da2ec5f0ac3a39428a1667
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2223658
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
b59db10a
|
2020-05-28T16:24:11
|
|
Perf: Add Subway Surfer trace
TBR: jmadill@chromium.org,nguyenmh@google.com,tobine@google.com
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/150458446
Change-Id: Ie47dfa7208db0fb1f2449b758df9d2b73bbfe974
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2220766
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6de7ee52
|
2020-05-25T17:00:01
|
|
Clean up overlay RenderPass count reporting.
This fixes the trace perf test to accurately report how many
RPs in each frame. Instead of counting the RPs on a flush we now
count only on a swap call. This won't work for offscreen surfaces
which is fine - the overlay doesn't really have the same use for
offscreen rendering. Also ignores the first frame in graph data so
we can ignore the first setup frame in the trace tests.
Also skips the redundant extra "flush" call that would generate an
empty space in the RP graph.
Gives a cleaner measurement for optimizing the XFB RP count.
Bug: angleproject:4622
Change-Id: I5762c500cdb216700247095984ae62b4f8741602
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215309
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
8add7dbf
|
2020-05-20T15:00:09
|
|
Tests: Add trace of Egypt to TracePerfTest
Test: angle_perftest --gtest_filter="*Trace*egypt*"
Bug: b/157158456
Change-Id: I9c076f247cb8a2743beae8377830c15269794f9d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2209689
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6c4af0c3
|
2020-05-20T14:54:39
|
|
Tests: Add a common framebuffer config for perf tests
As we add traces tests, some were recorded expecting depth as an
attachment to framebuffer 0. This causes errors when they
unconditionally query info about depth attachments. Since perf tests
have never requested a config before (they are all DONT_CARE for each
componenent), go ahead and set one shared by all.
Test: angle_perftests
Bug: b/157158456
Change-Id: I83ef1a58f246bfbc98c3bc7e024aca01560107f7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2210966
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cf8422c2
|
2020-05-19T10:14:02
|
|
Vulkan: Acquire a new BufferHelper from the pool based on a threshold
We acquire a new BufferHelper from the pool when the app updates the
data of the entire buffer. In scenarios where the app updates say, 60%
of the buffer it would still be benificial to acquire a new buffer and
copy over the remaining 40% of data from the old buffer to the new one.
This reduces the transfer workload from 60% to 40% of buffer size.
Currently the threshold is set to 50% of buffer size.
Bug: angleproject:4380
Change-Id: I12576c585230e771d4c1a4352fab93dd3db2ecef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2204655
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8f6d1af9
|
2020-03-19T14:35:48
|
|
Vulkan: Implement EXT_texture_format_sRGB_override
Implemented support for EXT_texture_format_sRGB_override
This is done by creating new imageviews for textures with sRGB
overridden that reinterpret the format to its sRGB counterpart.
As preparation for this, textures that use this feature are
reallocated with VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT. This will
have a performance cost for textures that use this feature, but
should have no performance cost for regular textures, since they
will not have this bit set.
Bug: angleproject:4561
Test: angle_end2end_tests --gtest_filter=SRGBTextureTest.*Vulkan*
Change-Id: Iba25f1f2b0a7227959c1cb4ba6e3ca8311c20d06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2152145
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
ce925b4c
|
2020-05-12T11:52:42
|
|
Perf: Add Temple Run trace
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/152512564
Bug: angleproject:4048
Change-Id: Ifca698a9c294e77bf90900781c1495ef6b559d63
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2197285
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
3a909841
|
2020-05-12T14:19:06
|
|
Perf: Add Reset call to trace tests
The traces are already updated to contain the Reset calls, now
actually call them from TracePerfTests.
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/152512564
Bug: angleproject:4599
Change-Id: I18b6726bc98b96f132c3245c51420cbfed1b84d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2197284
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
544a80ef
|
2020-05-12T11:46:15
|
|
Perf: Detect context used by trace
Capturing supports multiple contexts, which are hard coded into
the function and file names. On desktop, they've typically been
"1", but on Android we've seen context "2" or "3".
This CL adds the ability to detect the context number used by the
trace, and programmatically adds it to generated files.
Test: angle_perftests --gtest_filter="*Trace*"
Bug: b/152512564
Bug: angleproject:4036
Change-Id: I64616b93a704446b08cb614b2a74ab1932ef1f40
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2197283
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
93ec0ca5
|
2020-05-06T11:57:42
|
|
Capture/Replay: Regenerate glue if captures change.
This ensures if we re-capture with different parameters that
we regenerate traces. It uses the sha1 so that it can be run
correctly from an open-source checkout.
Bug: angleproject:4590
Change-Id: I01a2eef037924c5acaaf124308315364e6f1d723
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2185157
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
823b1bff
|
2020-05-07T16:06:26
|
|
Trace/Replay: Always use Linux-style line endings.
This makes the traces consistent no matter which platform they are
captured on. Will make it easier to use hashing with our code generator
script.
Bug: angleproject:4590
Change-Id: I7134b824c5cfefe4f2c21d8f9e21d80c2e8af57b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2188953
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
fa507296
|
2020-05-08T12:10:13
|
|
Update trace capture workflow doc.
Makes a lot common between Linux and Windows using git bash.
Bug: angleproject:4620
Change-Id: I68cf8ac0fb43bc9c21d07ae3abecf5ca0358261c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2189814
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
5b35c7f6
|
2020-05-07T13:40:55
|
|
Fix up screenshot saving for trace tests.
Now works when run in a sequence. Also saves RGB images to avoid
issues with the alpha being inconsistent and also flips images
vertically to fix the rendering.
Bug: angleproject:4615
Change-Id: I8d3b38c5d914e0ca2227320ac42a0e28acd12c4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2187971
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d08f1d8d
|
2020-05-05T12:54:07
|
|
Perf tests: Add screenshot capture mode.
This adds a "--screenshot-dir" argument to capture screenshots.
If we're running with screenshot capture then the test will
early exit after the first capture. The screenshots use the same
naming pattern as the test name:
TracePerfTest.Run/vulkan_trex_200 -> angle_vulkan_trex_200.png
Note the screenshot dir is relative to the test binary directory,
not the CWD. Also adds a PNG saving utility function.
Bug: angleproject:4615
Change-Id: I1de8ae6a6e6892586bb0b743e7b9a842f90f98e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2184834
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
101da757
|
2020-05-06T16:10:29
|
|
Capture/Replay: Update gfxbench traces
Incorporate fixes to get them running correctly on native.
TBR=cnorthrop@google.com,courtneygo@google.com,jmadill@chromium.org
Test: angle_perftests.exe --gtest_filter="*Trace*"
Bug: angleproject:4598
Change-Id: I44e9401f1554cc89749ac398ebe46440abd8eeff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2186171
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
bcd2c592
|
2020-05-06T15:49:41
|
|
Revert "Capture/Replay: Update traces to include Reset"
This reverts commit 968bb06d94369b782eacb9b7c6a3f1f2171b5f85.
Reason for revert: Broke angle_perftests on the P2 bots:
https://ci.chromium.org/p/chromium/builders/ci/Android%20FYI%2064%20Perf%20(Pixel%202)/30223
Original change's description:
> Capture/Replay: Update traces to include Reset
>
> Now that our traces can reset state back to how it started with MEC:
>
> * Update the code generation to include that call.
> * Update existing traces to include that call.
> * Add a capture of Temple Run.
>
> Test: angle_perftests.exe --gtest_filter="Trace*"
> Bug: b/152512564
> Bug: angleproject:3662
> Bug: angleproject:4599
> Change-Id: I4062271b75b5c6fc9122b301d1af443d79770edc
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2182911
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
TBR=cnorthrop@google.com,courtneygo@google.com,jmadill@chromium.org
Change-Id: Icea86c2fbfbabe4a1e7738954cecc176b5574a16
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/152512564, angleproject:3662, angleproject:4599
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2184705
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
968bb06d
|
2020-05-05T12:38:40
|
|
Capture/Replay: Update traces to include Reset
Now that our traces can reset state back to how it started with MEC:
* Update the code generation to include that call.
* Update existing traces to include that call.
* Add a capture of Temple Run.
Test: angle_perftests.exe --gtest_filter="Trace*"
Bug: b/152512564
Bug: angleproject:3662
Bug: angleproject:4599
Change-Id: I4062271b75b5c6fc9122b301d1af443d79770edc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2182911
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
930b2641
|
2020-03-23T14:47:03
|
|
Allow tests to run on native EGL.
Adds support for Linux and Android native EGL testing.
This can be useful for doing performance comparisons of ANGLE vs
a native GL driver. Only enabled for the trace perf tests due to
limitations in the test harness.
Bug: angleproject:4596
Change-Id: Iba6d3ccd7c1275cf095893fab824a0ea33dc3a79
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2116254
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|