|
4716d85e
|
2023-01-10T20:31:37
|
|
Tests: Add LIMBO trace
Test: angle_trace_tests --gtest_filter="*limbo*"
Bug: angleproject:7945
Change-Id: Ic52af324ed554d62daafc8e27c373cebd52f9bdb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4152869
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
fb94622c
|
2023-01-18T14:47:56
|
|
Trace Tests: Clean up desktop skips.
These were confusing SwiftShader and ANGLE / Native drivers.
Fix these by using helper variables. This isn't an issue on
Android because our Android tests don't have SwiftShader.
Bug: angleproject:7887
Change-Id: I414f59a8eb1155aaf8b98bf5c3104273cbb5b72d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4178015
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1f997cef
|
2023-01-06T19:09:37
|
|
Skip crashing final_fantasy trace perf on Pixel 6 native
Bug: angleproject:7936
Change-Id: Ied2399e66052d3b3f2b26f39c32aaf3950579eea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4143838
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
ca0489f0
|
2023-01-06T13:13:55
|
|
Skip couple flaky trace perf tests on Win Intel
beach_buggy_racing on Vulkan
aliexpress on native
Bug: angleproject:7934
Change-Id: I78f78174e95aa0a4bab6685efb62b52f87e6e4f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4143158
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
341f2908
|
2023-01-04T16:17:17
|
|
Vulkan: Remove the car_chase skip
This should now be fixed by crrev.com/c/4133548. Re-enable the test for
pixel6.
Bug: angleproject:7916
Change-Id: Ice0adc2c81c797f31354e086e5606744941de311
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137290
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
d88464de
|
2023-01-05T17:27:48
|
|
Skip 2 slow trace perf tests on Win Intel
five_nights_at_freddys on Vulkan
pubg_mobile_launch on native
Bug: angleproject:7929
Change-Id: Ie6ebcc3db616a55fdbb9f1a0d67c950b80dc2010
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4133268
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
056f8044
|
2022-10-11T11:58:20
|
|
Perf tests: write metrics to file and read from merge script.
The idea behind is to save metrics in a structured output with
full context so that we don't have to parse stdout and
reconstruct that context (e.g. which test was running when
the output was printed etc).
Note: we already have a "histogram" file (addHistogramSample)
written but it is structured using some UUID-based ids making its
digestion more complicated (https://anglebug.com/7299#c3).
This CL just writes events as one-json-per-line
simplifying downstream handling and debugging.
Just a sanity check / logging in the merge script for now.
Bug: angleproject:7299
Change-Id: I56dada643eceef180ce9bb1aa9ae6a641ea41e4c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3945112
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
a0939325
|
2023-01-01T17:41:33
|
|
Tests: Add Catalyst Black trace
Test: angle_trace_tests --gtest_filter="*catalyst_black*"
Bug: angleproject:7921
Bug: angleproject:7924
Change-Id: I626d6790ef602f3ca09c9c9a4e03c5df32a985ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4133886
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
b5a8cb42
|
2022-12-30T21:00:54
|
|
Tests: Add Cut the Rope trace
Test: angle_trace_tests --gtest_filter="*cut_the_rope*"
Bug: angleproject:5823
Bug: angleproject:7920
Change-Id: I6c607c593d828623afadff5677e0a8324e6b89f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4129086
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
8e2b87ac
|
2022-12-29T21:19:29
|
|
Tests: Add MU Origin 3 trace
Test: angle_trace_tests --gtest_filter="*mu_origin_3*"
Bug: angleproject:7917
Change-Id: Ic00a42d3c8b7c6c92a66c09c258a32d22e5f4805
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4129866
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
4a8bc146
|
2022-12-29T17:26:05
|
|
Skip angle_restricted_trace_gold_tests.car_chase asserts on Pixel 6
Assert failed in setSerial
Bug: angleproject:7916
Change-Id: I05a91cfd29194e29e6c512c9001c064951dcf466
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4127959
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
d53ba51f
|
2022-12-17T16:31:31
|
|
Tests: Add Disney Mirrorverse trace
Test: angle_trace_tests --gtest_filter="*disney_mirrorverse*"
Bug: angleproject:7897
Change-Id: I1b49c253e606f08c5af80f8f9b60b8948a0d5121
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4114829
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
2ce2146b
|
2022-12-12T15:31:29
|
|
Fix --render-test-output-dir to work in TestSuite.
https://crrev.com/c/3956937 introduced the issue where this flag is
consumed by ANGLEPerfTestArgs.cpp logic which runs before the TestSuite
constructor and removes the flag so we end up with an empty
mTestArtifactDirectory in TestSuite.
Bug: angleproject:7755
Change-Id: Ic32d3a2ddceca7842a0aebe5a1e40cbedaedf2eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4097325
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
cc6a8536
|
2022-12-09T18:01:53
|
|
Skip couple non-deterministic angle_restricted_trace_gold_tests
on Win Intel Vulkan.
black_desert_mobile
the_gardens_between
produce slightly different images each run.
Bug: angleproject:7879
Change-Id: I3a7c218b8e67b4800b4620ab7d1dc6ee15a5a089
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4092915
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2031e215
|
2022-12-02T15:30:54
|
|
Fixes for Vulkan secondaries build.
Includes the defined name of the alternate library in every
build, so that platforms without Vulkan still have access to
the library name define.
Also fixes checks for the ANGLE driver in the tests to work
with the new secondaries enum. This will let developers run
trace tests with the vulkan secondaries library.
Bug: angleproject:6811
Change-Id: If3846d68e532238f0b1c1c506638867a23fb4357
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4076513
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
aaee3c23
|
2022-11-30T14:24:13
|
|
Build and test ANGLE with Vulkan secondary CBs.
This will allow us to run tests with both permutations of
ANGLE (custom secondaries & Vulkan secondaries) in the same
build directory. It will also allow us to run these configs
as tests on our infra. This CL adds a few simple test to CI.
Bug: angleproject:6811
Change-Id: I053f8cc5bafc2a7ab7d0665da9301f0ba7f8417f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4067806
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
938f4372
|
2022-11-30T15:30:23
|
|
Move trace_event into anglebase
This originates from Chromium's base/trace_event/ so it doesn't need to
be under a third-party folder.
Bug: b/260093525
Change-Id: Iab7a40569b6c1f91454f099c07bf51e3ce4b65df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4068342
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c991eb22
|
2022-12-01T14:05:07
|
|
Move the anglebase folder up a level
This code originates from Chromium's base/ directory so it doesn't have
to be under a third-party folder.
Bug: b/260093525
Change-Id: I0bf6950095c685f36c5c237093980a64cf6e74f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4068339
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@google.com>
|
|
71ead7b4
|
2022-11-20T15:56:42
|
|
Tests: Add Diablo Immortal trace
Test: angle_trace_tests --gtest_filter="*diablo_immortal*"
Bug: angleproject:7402
Bug: angleproject:7837
Change-Id: I7c7ccc0099707714213564740f58f04f7965a275
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4041134
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6384f76b
|
2022-11-16T21:47:04
|
|
Vulkan: Move PipelineCacheAccess to namespace vk
In preparation for a change that uses it in that namespace.
Bug: angleproject:7369
Change-Id: Icc75b8839d702fd3e6d3d00c1d8f81619cdd89cc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4031150
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1f69f580
|
2022-11-18T14:33:20
|
|
Perf tests: Add --fixed-test-time-with-warmup
Warmup trials combined with fixed-test-time was broken
recently. It was already fragile and only worked when
parameters were provided in the right order.
On Android we're relying on this combination to get steady
results without hitting thermal limits.
To address this:
- Add a new parameter that encapsulates the combination
- ASSERT that flags aren't provided in unsupported combinations
Test: python3 restricted_trace_perf.py --fixedtime 10
Bug: angleproject:7755
Change-Id: I56fce1f65d4f0538e623951163a9c8736cb3fb03
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4027282
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
202fcb8d
|
2022-11-21T15:05:13
|
|
TraceTest: Route EGLSync entry points through WGL
Test: diablo_immortal trace
Bug: angleproject:7402
Bug: angleproject:7839
Change-Id: I8897337bac38cb1923e58a9503de01454766158d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4044865
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
124ba087
|
2022-11-14T15:14:37
|
|
Tests: Add Minetest trace
Test: angle_trace_tests --gtest_filter="*minetest*"
Bug: angleproject:7831
Change-Id: If182136cd14207d7243a2fcd56737dd0ea28b2de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4022260
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
518209e8
|
2022-11-10T16:37:20
|
|
Fix Mac build
sprintf was deprecated
Bug: angleproject:7824
Change-Id: If261426f1bf4e8d7997f051b87ea4817d1e3a264
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4020418
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6b3e4d8b
|
2022-11-07T09:32:33
|
|
Ensure replay is at the first frame on startTest().
Currently trials continue from the next frame after warmup, so the frame
that they start from fluctuate depending on how the warmup went.
This was supposed to be tackled by aligning to frameCount() but the
first warmup trial wasn't aligned as it would stop after a condition was
reached. Only stop on mTrialNumStepsPerformed % stepAlignment == 0
Bug: angleproject:7671
Change-Id: I0da74d89547eda6e78762ee7745204d0da6fe73a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4008998
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
71d28a9b
|
2022-11-02T13:19:20
|
|
Vulkan: Remove unused ShaderAndSerial
The serial in the ShaderAndSerial is unused. This CL removed
ShaderAndSerial and replaced with ShaderModule directly.
Bug: b/257116399
Change-Id: I50d42af7818a12888309a80423531d75135e0bfd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3998747
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bae82cfa
|
2022-10-31T17:11:45
|
|
TraceTest: Route eglGetError through WGL
eglGetError is not implemented, but shouldn't crash on Windows.
Bug: angleproject:7799
Change-Id: I61158ab21b86539020b5d492486333a56908ab69
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3995984
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
f3e047b5
|
2022-10-12T16:28:32
|
|
Add new retrace command get_min_reqs
`retrace_restricted_traces.py get_min_reqs` finds the minimum
required GLES version and extensions and record them to a trace's
json file. TracePerfTest has also been modified to use the new
"RequiredExtensions" json field to determine if it should run a
test or not. This allows several lines to be removed from
TracePerfTest's constructor.
get_min_reqs uses a divide-and-conquer strategy to find the extensions.
This approach should be faster for traces where the number of required
extensions is less than 20.
This adds a new command to retrace_restricted_traces.py called
get_min_reqs. This runs an existing trace multiple times to find what
the minimum required GLES version is, then records that version to the
trace's json file.
Bug: angleproject:7639
Change-Id: I42530e438054efec1ad79ababebe06d221d5c695
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3884175
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Sean Risser <srisser@google.com>
|
|
a9868110
|
2022-09-15T17:29:04
|
|
Add support for testing with Mesa + Zink.
To run a trace test with zink, use --use-gl=zink.
Bug: angleproject:7689
Change-Id: I70073756f903db1c224fe6175d55be4cad637aca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899382
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
81a244de
|
2022-10-10T15:32:25
|
|
Adding a class to perform ASTC texture decompression on the CPU
This significantly improves performance by caching and re-using the ASTC
decoder context, and using multi-threaded decompression.
This code was originally written for gfxstream.
Bug: b/250688943
Change-Id: I1727447907f2e25cf9b854ffcc9ccfc04db2fb91
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3929008
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
dc62b3ee
|
2022-10-10T21:00:16
|
|
Capture/Replay: Add trace interpreter.
Also adds a self-test using the retrace script.
Bug: angleproject:7752
Change-Id: I1985b47250bef99726d2ca2d90bef859208e357e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3965128
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
bc2e9eea
|
2022-10-15T14:38:15
|
|
Refine sampling of trace perf tests.
- The warmup algorithm now computes an accurate steps estimate.
- Bump up the trials, samples, and trial time in the runner.
Bug: angleproject:7671
Change-Id: I89a73472fd72af73f695c9107119cbc559d2d6e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956946
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
a41c6173
|
2022-10-16T08:28:53
|
|
Simplify trace test names.
Originally we had a lot of conditionally enabled test configs
in angle_perftests, that we enabled behind a flag because the
total runtime would be too large if we left everything enabled.
This CL switches to using a single test set, one for each
trace, and using a the same command-line API we use in dEQP
and the ANGLE samples to pick a single configuration. This
makes it easier to pick exactly what configurations you want
from the command line.
Because we only run one configuration each time, we don't need
to specialize the test name to include the configuration info.
We can also simplify TracePerfTest -> TraceTest since these
tests are run for both perf and correctness.
Old name: TracePerfTest.Run/vulkan_trex_200
New name: TraceTest.trex_200
Example for tests that don't use default arguments:
Old args: --enable-all-trace-tests
Old name: TracePerfTest.Run/native_offscreen_trex_200
New args: --use-gl=native --offscreen
New name: TraceTest.trex_200
Bug: angleproject:7755
Change-Id: Id93cf5725eff2e2c6b3b14804bc2902f38306e7e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3966535
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
0c3b4fe8
|
2022-10-21T10:17:31
|
|
Reduce --use-angle spam in TracePerfTest.
Instead of recalculating the back-end for every trace, we can do
it once in the test instantiation and pass the results around.
Bug: angleproject:7755
Change-Id: I492c639d91ee6ad6a325cff090813aaeb900b2d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3971080
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
adde4265
|
2022-10-19T23:33:48
|
|
Vulkan: Separate pipeline cache query and insertion
In preparation for VK_EXT_graphics_pipeline_library usage, the query and
insertion functions of the graphics pipeline cache are separated. This
will allow the implementation using VK_EXT_graphics_pipeline_library to
query the monolithic pipeline cache, and if a pipeline is not found,
create it through the pipeline library caches.
Bug: angleproject:7369
Change-Id: Iebf7669ae3ea95e180646198c4861cc59d67e580
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963854
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
4bfb749f
|
2022-10-10T20:59:48
|
|
Capture/Replay: Move shared trace code into src/common.
This will let them be accessible to the test harnesses. The
trace tests interpreter will need direct access to the classes
that we move in this CL.
This CL also moves the GLenum utils into the common folder,
where they were already used by some other tests.
Bug: angleproject:7752
Change-Id: I97ad607938ef29bc316f6d40098478e002ea8128
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963362
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
7b4b56f0
|
2022-10-19T00:05:22
|
|
Vulkan: Missing output mask in GraphicsPipelineDesc
Currently, there's some program state used in creating pipelines
alongside what's in GraphicsPipelineDesc. This works because the
pipeline cache lives in the program executable.
With VK_EXT_graphics_pipeline_library however, we could create vertex
input and fragment output partial pipelines that are independent from
and are shared between multiple programs. To support this, any program
state that's necessary for pipeline creation should be part of the
GraphicsPipelineDesc structure.
This change places the state affecting fragment output in
GraphicsPipelineDesc.
Bug: angleproject:7369
Change-Id: I2e48fc9da220475e1b2ed376fc947ce13489610e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963652
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
f0e3d8f9
|
2022-10-18T13:51:31
|
|
Vulkan: Shader component type in GraphicsPipelineDesc
Currently, there's some program state used in creating pipelines
alongside what's in GraphicsPipelineDesc. This works because the
pipeline cache lives in the program executable.
With VK_EXT_graphics_pipeline_library however, we could create vertex
input and fragment output partial pipelines that are independent from
and are shared between multiple programs. To support this, any program
state that's necessary for pipeline creation should be part of the
GraphicsPipelineDesc structure.
This change places the state affecting vertex input in
GraphicsPipelineDesc. A follow up change will do the same for state
affecting fragment output.
Bug: angleproject:7369
Change-Id: Iccf691a1597d786efa1625f7b1c22f906201f2e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3964751
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
e495e7fd
|
2022-10-14T13:52:47
|
|
Redo perf and trace test parameters.
- Moves common argument parsing code into test_util.
- Changes the perf test arg parsing to use the common functions.
- Adds new --use-angle and --use-gl parameters to the trace tests.
- Also adds new --offscreen and --vsync parameters to the traces.
- Removes the now unneeded --enable-all-trace-tests argument.
- Both --arg=value and --arg value work in test suites now.
Now, instead of using --enable-all-trace-tests you can specify the
backend with --use-angle=swiftshader, --offscreen, or combinations
of those parameters. The test names are the same as they were
before, but only the configured tests will run in a session. We
could opt to simplify the test names in later CLs if we want to
simplify the test running. Ideally we'd keep the perf reporting
the same because then we'd keep the time series the same on the
test infra.
This also allows us to split up the trace tests into separate
targets on the bots, which will better allow us to control the
workloads and sampling of the tests. For example:
- angle_perftests becomes
- angle_perftests (microbenchmarks)
- angle_trace_perf_vulkan_tests (traces with vulkan back-end)
- angle_trace_perf_native_tests (traces with system GL)
Bug: angleproject:7755
Change-Id: I537168f3a6de96425dfda05ed98220eff9b19b76
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956937
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d22edf57
|
2022-10-18T14:57:55
|
|
Perf Tests: fail test on GL_CONTEXT_LOST after glFinish().
Interrupts the test in the case I ran into:
../../src/tests/perf_tests/ANGLEPerfTest.cpp:383: Failure
Failed
Context lost
Warm-up trial took 1.11 seconds.
[ FAILED ] TracePerfTest.Run/vulkan_dr_driving, where GetParam() = vulkan_dr_driving (1476 ms)
[----------] 1 test from TracePerfTest (1476 ms total)
Bug: angleproject:7762
Change-Id: Iaf416dbdaa0eb846b744bdb4d1eb596f0c2bb1a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963360
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
0e0ea026
|
2022-10-13T18:29:33
|
|
Split trace tests out into angle_trace_tests.
This makes angle_perftests strictly for microbenchmarks.
The trace tests are a better separated target because they
are for both gold correctness tests and performance.
You can now use the GN arg "build_angle_trace_tests" to control
building the trace tests. "build_angle_trace_perf_tests" is
still supported for compatibility.
Updates the infra scripts to use this new trace tests target.
Also updates the build so by default we'll build the trace
tests if you check them out, without needing a custom arg.
Also updates docs.
Bug: angleproject:7755
Change-Id: I2b1ae67799234cc1aefe7cda5f3af945c3f867fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953340
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
09b079bb
|
2022-10-14T14:28:10
|
|
Vulkan: Move pipeline subset out of pipeline desc
This way, the same pipeline desc can be used to query multiple caches
with different subsets. This design requires the pipeline cache to be
templated, while the previous design required the desc to be copied (so
the subset bits would be different).
Bug: angleproject:7369
Change-Id: Id3fd92e6f9b059069952ff092a5c867e79287604
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956940
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
94b45181
|
2022-10-12T14:54:14
|
|
Vulkan: Rearrange graphics pipeline desc bits
In preparation for use of VK_EXT_graphics_pipeline_library, the pipeline
state is split in three contiguous regions:
- Vertex input
- Pre-rasterization and fragment stages ("Shaders" for short)
- Fragment output
There is some state that affects both Shaders and Fragment output, which
is split and placed in between the two. This will allow the hash and
compare functions to eventually access each of those pipeline subsets as
a contiguous piece of memory.
Bug: angleproject:7369
Change-Id: Iedc4cf15ed6c7fed6ba93039889fbf5dd191e041
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949914
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c19ec948
|
2022-08-23T10:43:59
|
|
Vulkan: Implement imageless framebuffers
* Added the attachment image and create info objects to be used
for imageless framebuffers created in getFramebuffer().
* New helper class for framebuffers in RenderPassCommandBufferHelper:
MaybeImagelessFramebuffer, which includes a framebuffer object, if
the framebuffer is imageless, and the image views. This is to make
sure that the args for render pass begin info will be correctly set
up according to the status of the used framebuffer.
* Refactored the collection of attachments in getFramebuffer() into
a new function, getAttachmentsAndImagesFromRenderTargets(). It also
returns their corresponding ImageHelper* objects used to create the
framebuffer (from their image properties).
* New struct: RenderTargetInfo; which keeps track of render targets
and whether resolve image should be used for the render pass in the
form of the enum class RenderTargetImage.
* Added a new arg to getFramebuffer(): resolveRenderTargetIn; to use
when there is a valid resolveImageViewIn.
* Without using the framebuffer cache, we would require to handle
the framebuffer destruction by adding it to the garbage instead
of releasing it. For example, FramebufferVk::destroy() now adds
mCurrentFramebuffer to the garbage.
* Added new framebuffer unit tests.
* Added tests where two textures with different attributes are bound
to the same framebuffer before drawing, one after another.
* Added test where a blit occurs from a multisample texture into a
non-zero level of a resolve texture, each bound to a separate FBO.
* Added a new perf test to compare performance for enabled imageless
framebuffers vs disabled. (Credit: cclao)
Bug: angleproject:7553
Change-Id: Iacdbd73aaa01cbb0e37abf01ae4892bdfdd4b12f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827644
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
04f3ed80
|
2022-10-04T08:24:16
|
|
Perf Tests: Use specified trial time for warmup.
When the user specifies a trial time, use this for the warmup
time instead of using the calibration time. This will give a
longer warmup time on our test infra and should help stabilize
perf testing scores on our bots.
Bug: angleproject:7671
Change-Id: I65fb8a7ae1f684d3f7834613d8341d17bd2df00f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3933315
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
637209c9
|
2022-10-02T22:05:12
|
|
Tests: Add Survivor.io trace
Test: angle_perftests --gtest_filter="*survivor_io*"
Bug: angleproject:7728
Bug: angleproject:7733
Bug: angleproject:7737
Change-Id: Ic337af781a209c3302bee748c5aed47f367993a8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3932009
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
5b3781ec
|
2022-10-03T16:09:35
|
|
Remove namespacing from all ANGLE loaders.
This will make it easier to work with pure C files.
Bug: angleproject:7731
Change-Id: I2fe9af486af5f339d973c9149f082eb1f2efa8c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3925426
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f7a5cce1
|
2022-09-29T10:42:26
|
|
Tests: Add Life is Strange trace
Test: angle_perftests --gtest_filter="*life_is_strange*"
Bug: angleproject:7711
Bug: angleproject:7723
Change-Id: I83d9d58270a80435dba8991875b20a215372334f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3928205
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
67af8d89
|
2022-09-19T15:19:57
|
|
Perf Tests: Make dynamic step count calibration optional.
This uses a fixed test time for the tests, instead of using an
extra step to calibrate a number of steps to run in an approximate
maximum time.
Before:
1. run a test for <test time>, return the number of steps
2. for <num samples> x <num trials> times, run the tests for that
number of steps
After:
1. for <num samples> x <num trials> times, run the tests for
<test time>
This saves some total time since we don't need to run the tests in
a pre-process to calibrate the number of steps, and it also makes
this test script more like the restricted trace perf script.
Bug: angleproject:7671
Change-Id: I413cbf8d65f9f2f87781d8607f799d2450a71ea7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3906144
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5e3bf6d8
|
2022-09-22T15:53:39
|
|
Tests: Add Eve Echoes trace
Test: angle_perftests --gtest_filter="*eve_echoes*"
Bug: angleproject:7215
Bug: angleproject:7690
Change-Id: Ib636ab57831cddac5fe793ec5cf7d05764e90766
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3914041
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3700a059
|
2022-09-22T00:04:52
|
|
Revert "Add ReadPixels Perf Test"
This reverts commit ea7eff37c18d9728f7ca0796fb29cff9bb80662c.
Reason for revert: It takes too long on the bots
Original change's description:
> Add ReadPixels Perf Test
>
> Trying to compare the Metal backend to the OpenGL
> backend and it's useful to have a perf test.
>
> Bug: angleproject:7117
> Change-Id: I5a7518fdd749841c3dffb1b53a9c4bfb88813c3c
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3906338
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Commit-Queue: Gregg Tavares <gman@chromium.org>
Bug: angleproject:7117
Change-Id: Ia5e3138abe6686b2f7929a5367782c47f0f7af2d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3911543
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Gregg Tavares <gman@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
ea7eff37
|
2022-09-19T17:32:59
|
|
Add ReadPixels Perf Test
Trying to compare the Metal backend to the OpenGL
backend and it's useful to have a perf test.
Bug: angleproject:7117
Change-Id: I5a7518fdd749841c3dffb1b53a9c4bfb88813c3c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3906338
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
d375547c
|
2022-08-12T15:54:39
|
|
Do not link program pipeline in glUseProgramStages
1. The commit 3a9f18f135fe82 caused a link to occur everytime
glUseProgramStages is called. This is redundant since the program
pipeline can be linked just before usage, thus allowing for multiple
stages to be bound before linking the executable.
2. Mark PPO as a dirty object and link the PPO in dirty object handler
3. Early return if the same program is being bound to the same stage
of the pipeline.
4. Added ProgramPipelineObjectBenchmark perf test that switches programs
before a draw and observed following data -
1. vulkan profile -
1. wall_time before patch - 102000 ns
2. wall_time after patch - 38000 ns
2. vulkan_null profile -
1. wall_time before patch - 125000 ns
2. wall_time after patch - 52000 ns
Bug: angleproject:5102
Bug: angleproject:6566
Test: ContextNoErrorPPOTest31.*Vulkan
Test: ProgramPipelineTest31.*Vulkan
Test: ProgramPipelineObjectBenchmark*
Change-Id: Idbc2fcb4875bbd040e9ec847eb2a8f96f287173c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3830170
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
543c450e
|
2022-09-09T14:37:39
|
|
Tests: Add Botworld Adventure trace
Test: angle_perftests --gtest_filter="*botworld_adventure*"
Bug: angleproject:7645
Change-Id: Icbe7a21538537ea1c2ca4161b5d56bae43adcdf4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888778
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
f5b3ecd4
|
2022-09-06T17:02:50
|
|
fix perf test result path
==== Overview ====
Previously for bug 6353, we wanted to enable this extra logging at
ANGLERenderTest level so that all ANGLERenderTest tests can benefit from
the extra logging.
The design was assuming ANGLERenderTest can have any arbitrary naming,
and then just include the trace name in the name. However this
assumption is wrong because the name affects the path of some perf data
that is monitored by a dashboard.
Therefore, if we don't want to change the dashboard, then
ANGLERenderTest naming is constrained. This CL changes how the trace
names are printed in logcat for ANGLERenderTest. Instead of passing
down from TracePerfTest via the name, the new design is just printing
the mName, mBackend, and the mStory since those variables contain the
required information to serve the purpose of bug 6353.
==== Tests ====
[test 1]
- use this build args: http://go/paste/4625489225318400
- ```autoninja -C out/Android && ./out/Android/angle_perftests
--gtest_filter="*angry_birds*" --verbose```
- Wait for the test to complete, then run ```adb logcat -d | grep
"running test"```
- 4 tests were executed:
```
solti@solti:~/angle$ adb logcat -d | grep "running test"
09-06 18:34:13.491 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_1500"
09-06 18:34:23.958 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_1500"
09-06 18:34:45.177 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_launch"
09-06 18:35:11.136 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_launch"
solti@solti:~/angle$
```
[test 2]
- follow
http://docs/document/d/1W3E7e-YcR5noim_poM0f7Dc0W8AdQDbJ2tFSPXgjpH0?
resourcekey=0-VmGDLI3x0q4-sdpQ0n8GSA
- setup out/AndroidPerformance
- the build args: http://go/paste/4862801771233280
- the build cmd: autoninja -C out/AndroidPerformance angle_perftests
- run cmd: ./out/AndroidPerformance/angle_perftests
--gtest_filter="*angry_birds*" --verbose --local-output
--verbose-output --shard-timeout 100000 --max-steps-performed 1
- then, run cmd: ```adb logcat -d | grep "running test"```
- confirmed the test names are printed:
```
solti@solti:~/angle$ adb logcat -d | grep "running test"
09-06 18:58:50.216 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_1500"
09-06 18:58:51.143 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_1500"
09-06 18:58:51.467 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_launch"
09-06 18:58:51.907 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_launch"
solti@solti:~/angle$
```
Bug: angleproject:6353
Bug: angleproject:7627
Change-Id: I02ad4396674fc01e9d10e474660a9dfac0d31edc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3873118
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Solti Ho <solti@google.com>
|
|
64f41972
|
2022-08-25T11:16:23
|
|
Use canonical gl.xml and update enum to string function.
This replaces our copy of gl.xml with the upstream canonical copy.
Note that one patch is required before we can remove ANGLE's copy:
https://github.com/KhronosGroup/OpenGL-Registry/pull/538
Because the upstream version uses a new method of enum groups, we
also update our enum-to-string generator to use the new groups.
This new code includes many more enums and groups in the mapping.
Bug: angleproject:6461
Change-Id: I1c0ab44c36afce8db04c9661b377bbe5762c913e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856649
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f18b6335
|
2022-08-29T11:53:01
|
|
Replace std::this_thread::get_id() use with a unique thread id.
std::this_thread::get_id() gets recycled. It's pthread_self()
under the hood on Linux and Android which gets recycled, for
example when one thread terminates and another one starts
it is likely to return the same value.
Bug: angleproject:7602
Change-Id: I83d818bc17ead5cce8bce7f7d88fc1c7c0fa860c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855041
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4b33633a
|
2022-08-26T16:16:50
|
|
Capture/Replay: Delete binary data in FinishReplay via callback
Delete callback fixes b/179188489 as delete[] will get called from the
same module where allocation happens. When decompress/delete callbacks
not provided, new[] and delete[] are called from the fixture.
AFAICT, gBinaryData == nullptr every time, even with a single test and
--gtest_repeat=N, so we never delete the uncompressed data. When
running multiple tests locally, I see RES usage grow significantly
on Linux which this CL fixes. I don't think this matters for bot runs as
we run tests one by one there.
Bug: b/179188489
Change-Id: Iee3bccb9d6d72c315c4358b70ec9c3c0ac963258
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858185
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
28600f60
|
2022-08-21T21:51:19
|
|
Test: Add Antutu Refinery trace
Test: angle_perftests --gtest_filter="*antutu_refinery*"
Bug: angleproject:7590
Change-Id: I967c72a4109baf64cda1afc3d27407286253ea35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844790
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a216cfe8
|
2022-08-08T21:05:00
|
|
Adding angle_perftests test case names in logcat
Overview:
In logcat, we want to know which test is being executed.
The CL
1. makes *ANGLEPerfTest* print the test name
2. wire the trace names in *TracePerfTest* as test names to
*ANGLEPerfTest*
Local Test:
==== Test 1 ====
- use this build args: http://go/paste/5111738277036032
- ```autoninja -C out/Android && ./out/Android/angle_perftests
--gtest_filter="*angry_birds*" --verbose```
- Wait for the test to complete, then run ```adb logcat -d | grep
running```
- 4 tests were executed:
```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:13:49.757 7690 7721 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_1500
08-11 18:13:59.914 7690 7721 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_1500
08-11 18:14:21.265 7690 7721 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_launch
08-11 18:14:48.030 7690 7721 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_launch
08-11 18:14:58.296 1525 1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.296 1525 1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.297 1525 1635 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
solti@solti:~/angle$
```
==== Test 2 ====
- follow
http://docs/document/d/1W3E7e-YcR5noim_poM0f7Dc0W8AdQDbJ2tFSPXgjpH0?
resourcekey=0-VmGDLI3x0q4-sdpQ0n8GSA
- setup out/AndroidPerformance
- run cmd: ./out/AndroidPerformance/angle_perftests
--gtest_filter="*angry_birds*" --verbose --local-output
--verbose-output --shard-timeout 100000 --max-steps-performed 1
- then, run cmd: ```adb logcat -d | grep running```
- confirmed the test names are printed
```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:22:50.698 8496 8525 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_1500
08-11 18:22:51.599 8496 8525 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_1500
08-11 18:22:51.917 8496 8525 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_launch
08-11 18:22:52.362 8496 8525 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_launch
solti@solti:~/angle$
```
==== Test 3 ====
- build a Linux build, using the args: http://go/paste/5953043785842688
- run the same test with cmd: xvfb-run ./out/Debug/angle_perftests
--gtest_filter="*angry_birds*" --verbose | grep "running test"
- confirmed the message is printed: http://go/paste/5800151735074816
Bug: angleproject:6353
Change-Id: I6118a75f54b1648923cb5fe541633d7dd52b20bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3817409
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
02d79c32
|
2022-08-12T11:21:04
|
|
Skip kotor trace on Swiftshader due to flakiness
After changing the driver uniforms to push constants, the kotor
trace became flaky on Linux/Swiftshader. In this CL, the flaky test
is skipped.
Bug: angleproject:7565
Change-Id: Ia3deb1344ce2dfb8cec443d197b0f95788a12599
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3829907
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
6f80f0f0
|
2022-08-06T02:29:19
|
|
Translator: Clean up the compile flag passing interface
Historically, compile flags were sent to the translator as a bitmask.
Recently, we were getting close to running out of bits. Additionally,
direct-to-metal work had started to introduce constants to be passed to
the translator, which were misplaced in ShBuiltInResources and Caps.
Recent work on Pixel Local Storage adds even more constants, aggravating
the situation.
In this change, the interface to passing compile flags is reworked. A
struct is passed (instead of a bitmask) that has one bit for each flag.
This can be indefinitely extended. Additionally, the constants needed
by metal and PLS are also placed in this struct. In turn, the backends
can set these options directly, and don't have to hack them into Caps to
further get hacked into ShBuiltInResources.
Bug: angleproject:7559
Change-Id: If93f1e1b8818ad3a0ac708ab04ab93b4b397d114
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
13da8b97
|
2022-08-02T08:52:06
|
|
Tests: Add Octopath Traveler trace
Test: angle_perftests --gtest_filter="*octopath_traveler*"
Bug: angleproject:7543
Change-Id: I6187058f99c1598051a118ac65e0121e9c35ac9d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3805739
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6e6f3e6d
|
2022-07-29T11:13:24
|
|
Convert GLenum to string for failed trace prereq message
Bug: angleproject:5784
Change-Id: I14bc01afe97a2475d8b0f278840a279b663da7db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3794304
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
|
|
606a9239
|
2022-07-31T21:01:31
|
|
Tests: Add Ni no Kuni trace
Test: angle_perftests --gtest_filter="*ni_no_kuni*"
Bug: angleproject:7507
Change-Id: I129a9f053dab24f277c42d22876732b83e4de933
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3802565
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
|
|
d6acced1
|
2022-07-25T18:11:20
|
|
Add flag --save-screenshots (implied by --screenshot-dir).
--screenshot-dir and --render-test-output-dir behave differently on
Android. --screenshot-dir is passed as is and therefore means a device
directory, and --render-test-output-dir has special handling in Android
wrappers that substitutes this flag with a temporary location on the
device then copying files to the local directory set by this flag.
Cody pointed out that there are many docs referring to --screenshot-dir
so behavior should be preserved. So --save-screenshots is implied when
this flag is set. Otherwise, it defaults to false, so
--render-test-output-dir just on its own won't save screenshots, only
when --save-screenshots is added as well.
This also allows to produce other artifacts without necessarily
producing screenshots by using --render-test-output-dir without
--save-screenshots.
Bug: angleproject:7299
Change-Id: Ib1a268ddeb7eba9f120e3f37a429ea0e4bbe2411
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3785296
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
1e619503
|
2022-07-20T11:55:49
|
|
Skip TracePerfTest vulkan_car_chase on Linux Intel
Flaky VK_ERROR_DEVICE_LOST on Intel UHD 630 Mesa 20.0.8
Bug: angleproject:7125
Change-Id: I7e99819a586e3f146728f49dfdeebf9e8ddcb219
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3777097
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
45e5cf01
|
2022-06-03T14:29:23
|
|
Vulkan: Implement ASTC emulation.
Implement ASTC emulation using the astc-encoder library.
Add copy_image tests to deqp_gles31_test_expectations for desktop cards.
Add emulatedAstc limitation.
Don't expose emulated ASTC from WebGL contexts.
Introduce ANGLE_HAS_ASTCENC define to check for build availability.
Only build on angle_standalone configurations.
DEPS: Add astc-encoder.
image_util: Decode ASTC to RGBA.
TracePerfTest: Skip car_chase and genshin_impact on NVIDIA.
Bug: angleproject:7415
Change-Id: Ib2f3fd3f710164a2ecd5d5edf780227031bbfb84
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697999
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f1dac70d
|
2022-07-12T15:56:10
|
|
Remove platform skips for cookie_run and real_cricket
These traces now work after being updated in restricted_traces.json.
Bug: angleproject:7420
Change-Id: I57be700afb0a9232ce88bf2eed5f5104256b94f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3759428
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
466fc0c6
|
2022-06-30T15:47:14
|
|
Add new prerequisite type for GL_ENUM integers
This check is not applied in this commit.
Bug: angleproject:7420
Change-Id: Ie84600c21aa4829c8d8c798643719c3084597af4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3759423
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
82ff27bf
|
2022-07-08T12:38:41
|
|
Add Metal to the perf tests
Bug: angleproject:7296
Change-Id: I69cd17c464d48b933c51466bf9d21c278438c4e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3753277
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
916a35dd
|
2022-06-28T14:40:53
|
|
Merge getTempPath and CreateTemporaryFile
Also includes moving these two (and some helpers) to
common/system_utils.h
Bug: angleproject:5095
Change-Id: I7d2fcbd27a67dc13215265ac5b5e8391b15a980b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3733519
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
785353fd
|
2022-05-24T12:40:16
|
|
Support Desktop OpenGL context creation in end2end tests
Validation of Desktop GL versions and profile masks is unimplemented.
Bug: angleproject:7360
Change-Id: Ifae94215b6aada895c2b02318a1d05c9515e9b96
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3664916
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
91976352
|
2022-06-21T15:41:02
|
|
Use C++17 attributes instead of custom macros
Bug: angleproject:6747
Change-Id: Iad6c7cd8a18d028e01da49b647c5d01af11e0522
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3718999
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
72f69e84
|
2022-06-21T16:22:25
|
|
ANGLEPerfTest: Add option to disable GL debug callbacks.
Disable GL debug callbacks on native ARM GLES1.
This fixes native GLES1 replay on Pixel 6 when running debug builds.
Bug: angleproject:7447
Change-Id: I0059c07f4f2fb944e54a5163863b487bc31ab28f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3716584
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a471d4bd
|
2022-06-15T14:33:22
|
|
Ensure ANGLERenderTest.mTestParams lifetime using unique_ptr
Passing a reference is fragile, this currently works because factory
outlives the test and so do captures:
https://crsrc.org/c/third_party/angle/src/tests/perf_tests/TracePerfTest.cpp;drc=54e08a5af1f7ca50d5c154a09cc056166a9e49fa;l=2143
but if a temporary or a scoped object is passed to the constructor in
the same spot then this blows up due to use after free, which is easy to
run into accidentally as it is uncommon that f(const T&) would hold onto
the reference and expect it to outlive the function call.
In most cases ANGLERenderTest.mTestParams is initialized with GetParam()
which comes from a base class and that
Bug: angleproject:7410
Change-Id: I32ea8b79ad746129d4088d44fef2a37cc9c81b80
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697436
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
153d8db9
|
2022-06-06T13:49:40
|
|
Turn missing {trace_name}.json trace files into test failures.
Before this change, a missing or broken trace json file results in all
trace tests "disappear" from the list with only ERR in logs. After this
change, a missing or broken trace json will result in that specific test
FAIL status and error in logs.
Note that this also allows for inconsistency between
restricted_traces.json and trace json files on the device because we're
no longer requiring for trace json to be loaded unless the test is
actually being run.
Bug: angleproject:7410
Change-Id: I07532dc0bf85a0d2fcaf425ce8d4a589473a898d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3690734
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c73ea49a
|
2022-06-10T13:39:54
|
|
Reland "Remove cwd manipulations."
This reverts commit 4e37ec8c021e5739e720d2847ac814f8eef296a6.
Reason for revert: Turns out it wasn't necessary.
Original change's description:
> Revert "Remove cwd manipulations."
>
> This reverts commit c11af00ae1d10d43a71a28c07f99969665c4ea2a.
>
> Reason for revert: Needed for http://crrev.com/c/3690739
>
> Original change's description:
> > Remove cwd manipulations.
> >
> > Doesn't appear to be needed as the underlying functions
> > are already using the executable path.
> >
> > Bug: angleproject:7410
> > Change-Id: Ia9566c7159624bcb039d7dd2e9d23f4b18649f45
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695519
> > Commit-Queue: Roman Lavrov <romanl@google.com>
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
>
> Bug: angleproject:7410
> Change-Id: I397ed2e75155a774c45af9c67e5906932183f1c8
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3696830
> Auto-Submit: Jamie Madill <jmadill@chromium.org>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bug: angleproject:7410
Change-Id: I06487f345482e4c26ed78754395054b43d182357
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697310
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4e37ec8c
|
2022-06-09T16:44:44
|
|
Revert "Remove cwd manipulations."
This reverts commit c11af00ae1d10d43a71a28c07f99969665c4ea2a.
Reason for revert: Needed for http://crrev.com/c/3690739
Original change's description:
> Remove cwd manipulations.
>
> Doesn't appear to be needed as the underlying functions
> are already using the executable path.
>
> Bug: angleproject:7410
> Change-Id: Ia9566c7159624bcb039d7dd2e9d23f4b18649f45
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695519
> Commit-Queue: Roman Lavrov <romanl@google.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Bug: angleproject:7410
Change-Id: I397ed2e75155a774c45af9c67e5906932183f1c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3696830
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
c11af00a
|
2022-06-08T14:45:58
|
|
Remove cwd manipulations.
Doesn't appear to be needed as the underlying functions
are already using the executable path.
Bug: angleproject:7410
Change-Id: Ia9566c7159624bcb039d7dd2e9d23f4b18649f45
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695519
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a9516865
|
2022-06-01T22:48:04
|
|
Vulkan: Output cache look up feedback in pipeline graph
Bug: angleproject:6565
Change-Id: I12bb9ab5756860de9ba26d6b4a9429a78b65df39
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3686029
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
53ec886e
|
2022-05-30T16:49:11
|
|
Vulkan: Externally synchronize the pipeline cache
In preparation for a future change that requires this as it may perform
pipeline cache merges during creation of pipelines.
Bug: angleproject:5881
Change-Id: Ic7921b781aa773ae23b60a0bb6fa2111b1fc401e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3679479
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b0d75fb5
|
2022-05-31T16:55:23
|
|
Vulkan: Use 64-bit counters
Some upcoming counters don't fit in 32 bits.
Bug: angleproject:5881
Change-Id: I2de8a603cabdb5f7417c29d5f37a50899485d6d3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3679488
Commit-Queue: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
54e08a5a
|
2022-05-25T14:35:02
|
|
Trace Tests: Remove Pixel 2 expectations.
We no longer test on this device.
Bug: angleproject:5517
Bug: angleproject:5553
Bug: angleproject:5553
Bug: angleproject:5591
Bug: angleproject:5716
Bug: angleproject:5772
Bug: angleproject:5877
Bug: angleproject:6023
Change-Id: Iaf6f49cdf2a10bc0704e9956aca81b5e36679c10
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3668147
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
e4a517c9
|
2022-05-17T23:58:23
|
|
Vulkan: Rearrange GraphicsPipelineDesc to reduce footprint
Bits for VK_EXT_extended_dynamic_state2 are moved to the end of the
desc. Some bits are also rearranged and some paddings removed for a
total of 4 bytes of reduction in desc size.
Bug: angleproject:7328
Change-Id: I48f20408a8a2cb7bce0d8e2d0d2ccd8a121f7894
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3652747
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
2faabfe5
|
2022-05-16T16:19:03
|
|
Vulkan: Optimize pipeline desc w.r.t dynamic state
State corresponding to VK_EXT_extended_dynamic_state is moved to the
back of the description and is excluded from the hash.
Bug: angleproject:5906
Change-Id: I3b6efb2674e955eed6e12b6c7096a7fea63748a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3651581
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3da24b5c
|
2022-05-16T11:58:59
|
|
Move trace loader code to a common location.
With that Capture/Replay will be able to make use of the same
code.
CL authored by gert.wollny@collabora.com.
Bug: angleproject:4964
Change-Id: Ie1ba663169a34929f5a169ab74c7042e9fd5deb0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3645441
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ff011779
|
2022-05-13T12:36:24
|
|
Vulkan: Let texture buffer handle BufferVk's storage change
When buffer's storage changed due to glBufferData call, texture buffer
code should also respond to this and update the texture descriptor set.
This CL merges BufferVkStorageChanged message into
InternalMemoryAllocationChanged and removed BufferVkStorageChanged all
together.
Bug: angleproject:7283
Change-Id: I230ee7268634e747d06eab1954f5a76ecf84c9d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3646955
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0f2fc766
|
2022-05-04T12:51:15
|
|
TracePerfTest: Add ability to screenshot after reset.
This patch makes --screenshot-frame take frame arguments that are
greater than the frame range of the test.
This makes it possible to capture screenshots after reset.
E.g. the trace has 100 frames, the argument 1 and 101 should give the
same result, but will differ if reset fails.
Bug: angleproject:7307
Change-Id: Ie149e6046d0384d93341c677a7b391b5342917d7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3644577
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
40583b0f
|
2022-05-12T09:09:37
|
|
Tests: Skip pubg_mobile_skydive on Nvidia
Test: angle_perftests --gtest_filter="*pubg_mobile_skydive*"
Bug: angleproject:7283
Change-Id: Iba6c7c9caa2f887b0c5016869416ec4897975e1b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3645587
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f6610106
|
2022-05-10T12:05:52
|
|
Add a draw call perf test for changing a single uniform.
Bug: angleproject:6776
Change-Id: I0621c813a654b3378b48d03219620627605b24a5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3638984
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e73121b1
|
2022-05-10T22:47:20
|
|
Vulkan: Fix VulkanPipelineCachePerfTest
Bug: angleproject:5906
Change-Id: Ide86708df10679309cc2aca0df088e8595d2a8c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3641142
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
089f2871
|
2022-05-10T13:05:18
|
|
PerfTests: Add support for eglCreateImage and eglDestroyImage
Bug: angleproject:4964
Change-Id: I7a028b72cf7a44230f8d129753daef8c04f2fac5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3636061
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
225d8f83
|
2022-05-04T11:34:56
|
|
Tests: Add Mortal Kombat App Trace
Test: angle_perftests --gtest_filter="*mortal_kombat*"
Bug: angleproject:6997
Bug: b/218515707
Change-Id: Ie1d4ab498239308761aab55a92f1280cb52dd0a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3627126
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
1d073482
|
2022-05-04T23:25:23
|
|
Tests: Add Basemark GPU trace
Test: angle_perftests --gtest_filter="*basemark_gpu*"
Bug: angleproject:7274
Change-Id: I5adbc16ab7a6f5d3b51de3b31614fb1acb75a9f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3628950
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
b953bc13
|
2022-04-01T09:14:28
|
|
Tests: Add GFXBench Tessellation trace
Test: angle_perftests --gtest_filter="*tessellation*"
Bug: angleproject:7154
Change-Id: I8b5284dc32aff2631b8d3c6b726c174738cf1a5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3564075
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
5c756bc1
|
2022-04-26T14:31:47
|
|
Perf Tests: Compute GPU time periodically
If you specify `--fixed-test-time 30` while running app perftest and
watch for GPU memory allocation, you see GPU memory keeps growing. This
is due to we generate timestamp query for every frame, but don't
calculate the GPU time at the end of run. We accumulate all these
queries over the entire test run. Even though this is technically not a
leak, it does grow monotonically while test is running. This CL calls
computeGPUTime every 16 frames (steps) and changed the mTimestampQueries
to a queue structure and clean up the completed query as GPU time is
computed.
Bug: angleproject:7243
Change-Id: I283ee24c4835fe0fb4d15f8d1975c85b64e16443
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3609011
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
400d9fe4
|
2022-04-23T01:08:19
|
|
Rename feature files to *_autogen.h
To clarify further that they are not to be edited by hand.
Bug: angleproject:6435
Change-Id: Iaf79706d2b688a43b3ebb65700cfbdd71a49a742
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3603842
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cb1ee485
|
2022-04-08T12:58:12
|
|
Vulkan: Add perf test for MSAA swapchain resolve
* Added a perf test for the swap time of the MSAA swapchain resolve
* Average wall time results on Pixel 6:
~ 296992 ns using the subpass
~3163355 ns with the subpass disabled
* Average wall time results on Pixel 6 Pro:
~ 225089 ns using the subpass
~2975449 ns with the subpass disabled
Bug: angleproject:6762
Change-Id: I95f8c4350c5da136afd7f1b28b8c00d6707574ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3586181
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
b2a1f0d2
|
2022-04-14T07:58:32
|
|
Track total vs per-frame descriptor set counters.
This will give more consistent measurements for descriptor set
caches and descriptor set allocations.
Bug: angleproject:6776
Change-Id: I584b8807ad19f8393ae54cc1d88b319c8f7f9f39
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3584636
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|