|
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>
|
|
fcec6904
|
2022-04-13T14:18:06
|
|
Generate feature variable names from display names
The json file now only contains the feature display name. The variable
name is automaticaly derived.
For consistence with Chromium and other Chromium-based projects, the
display name is now always snake_case, and that's what's specified in
the json files. This also makes camelCase variable name generation
trivial (as opposed to the other way around).
Feature overrides now accept both snake_case and camelCase names to
ensure compatibility with existing scripts. This is done by removing _
and comparing override names with feature names in lower case.
Bug: angleproject:6435
Change-Id: I0b6ed2bbf5c312bc4f4be7b3c7d55dbaca2a9886
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3584630
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
03b3bc3f
|
2022-04-08T13:36:50
|
|
Tests: Add Special Forces Group 2 trace.
Ignore a SYNC-HAZARD-WRITE_AFTER_READ VVL error in RendererVk.
Add GL_EXT_texture_buffer prerequisite.
Test: angle_perftests --gtest_filter="*special_forces_group_2*"
Bug: angleproject:5592
Change-Id: I63350a0bdbdffbc6951fd650753d900b5ff0bade
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3578764
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8074061d
|
2022-04-09T01:03:53
|
|
Remove feature override platform methods
Instead, the tests now use the enable() functions to override the
feature at platform level.
This fixes the forceFallbackFormat feature mistakenly not having been
tested.
Bug: angleproject:6435
Change-Id: I605e4133407282bd52232887b595af0d2c13575d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3577369
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
797e627e
|
2022-04-08T22:49:51
|
|
Autogenerate list of features as enum
The WithX() and WithNoX() helpers are removed and replaced with enable()
and disable() member functions that take the name of the feature (as a
Feature::X enum constant). This has two benefits:
- Adding tests that override a feature no longer requires additional
helper functions to be written.
- There's no mistaking the feature name.
This change doesn't yet fix the main issue in anglebug.com/6435, but
does fix the following helpers using an old feature name (so they were
ineffective):
- WithMetalForcedBufferGPUStorage
- WithNoVulkanViewportFlip
A follow up would remove the old way of overriding features in tests and
replaces them with the new way.
Bug: angleproject:6435
Change-Id: Ida02b26ec72bc40d7a8938c76a93815bb903ca05
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3580982
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
23558369
|
2022-04-06T15:41:59
|
|
Update perf tests arguments.
Bug: angleproject:6776
Change-Id: I3cf51cdf9ad05dc792126354c84e717574638408
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3566219
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
152616ee
|
2022-04-04T19:34:53
|
|
Tests: Add Aztec Ruins High trace
Test: angle_perftests --gtest_filter="*aztec_ruins_high*"
Bug: angleproject:7169
Change-Id: I3d30348f663a4b1c54df1179d471363ca4c244c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3570244
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3258477a
|
2022-04-05T16:08:09
|
|
Skip car_chase on all Intel Windows platforms
The trace did not get its gold image assigned correctly
due to some Intel platforms not running the trace on
submission.
Bug: angleproject:7173
Change-Id: I7891204ccba86bff1ee1cb5e16aa870a2122beb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3572973
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8b84cf15
|
2022-03-30T13:42:38
|
|
Tests: Add GFXBench Car Chase trace
Test: angle_perftests --gtest_filter="*car_chase*"
Bug: angleproject:7125
Bug: angleproject:7173
Change-Id: I07069d46351718743e545fc056f41de2b6fe3820
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3561484
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a555be4a
|
2022-04-02T19:46:22
|
|
Tests: Add Scary Teacher 3D trace
Test: angle_perftests --gtest_filter="*scary_teacher_3d*"
Bug: angleproject:7163
Change-Id: I305146c403288f9409637c0847af6c38b0cefa89
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3567125
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
1a3411c7
|
2022-04-01T18:42:51
|
|
Set SKIPPED status on skipped tests, rely on it in Gold tests.
Gold tests check for '[ SKIPPED ] {test_name}' notice in test output
instead of assuming that missing screenshot means SKIP. Now missing
screenshot raises an exception.
Also log the reason why the test was skipped.
Example:
[ RUN ] TracePerfTest.Run/native_asphalt_8
../../src/tests/perf_tests/ANGLEPerfTest.cpp:837: Skipped
Test skipped due to missing extension:
GL_KHR_texture_compression_astc_ldr
[ SKIPPED ] TracePerfTest.Run/native_asphalt_8 (182 ms)
Bug: angleproject:6854
Change-Id: I2d88e2063a68ae95399a7932700f74032737ec91
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3565561
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
83d3a98c
|
2022-04-04T16:03:06
|
|
Remove commented out mSkipTest.
mSkipTest = true was commented out in https://crrev.com/c/1456482
back in 2019 so presumably this is no longer needed.
Bug: angleproject:3137
Change-Id: Ic2c4ca5e2bea939aee8cfb4e5386c7d526c39064
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3569586
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
b2c01ac4
|
2021-09-28T12:57:45
|
|
Report process memory in perf tests.
Bug: angleproject:6440
Change-Id: Ifdd4389266e3ac55963a3069d437c631bf73f72a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3191194
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3739a195
|
2022-03-09T13:56:36
|
|
perf tests: Record perf counter metrics.
This adds a new command line argument that will allow the user to
specify perf counters to record into the test output.
Bug: angleproject:4918
Change-Id: Ia7432ff96eadf13ef681f67d2d503d00fd83e06e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516970
Reviewed-by: Lingfeng Yang <lfy@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1cfbe863
|
2022-03-09T13:35:44
|
|
perf tests: Report multiple time metrics.
We can now report cpu/wall/gpu time instead of just a single timing
metric. This is in preparation for reporting other types of metric
including counters.
Also includes some other minor script improvements.
Bug: angleproject:4918
Change-Id: I52a3241893c56a1bfe982990ebac0fa168dbac51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3516969
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
37bfc40d
|
2022-02-27T16:27:26
|
|
Tests: Add Blade&Soul Revolution trace
Test: angle_perftests --gtest_filter="*blade_and_soul_revolution*"
Bug: angleproject:7053
Change-Id: I0ef1442c5cf12c08f9b461559512ae858829e41c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3492850
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
802e0d4d
|
2022-02-15T16:40:07
|
|
Document perf test metrics
Bug: angleproject:1944
Change-Id: I7f0d5c73c943ba28b3e0270e17681d7e69a7ee4a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3466757
Reviewed-by: Lingfeng Yang <lfy@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e2f8c5c6
|
2022-02-22T19:15:11
|
|
Vulkan: Add ClearBenchmark.Run/vulkan_scissoredClear
Add the test ClearBenchmark.Run/vulkan_scissoredClear to benchmark
scissored clears with the Vulkan backend.
Bug: angleproject:5194
Test: ClearBenchmark.Run/vulkan_scissoredClear
Change-Id: I7d6aeb8683b2ac2488e1c961d0cc194e6107b7f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3408457
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
b69349bc
|
2022-02-15T14:59:03
|
|
Tests: Add Real Racing 3 trace.
Add GL_EXT_shader_framebuffer_fetch prerequisite.
Test: angle_perftests --gtest_filter="*real_racing3*"
Bug: angleproject:7026
Change-Id: Ie76e7ca43bb3a95c343e56d3b830f1f6d6e733c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3475351
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
54d428dd
|
2022-02-10T20:25:51
|
|
Tests: Add MARVEL Strike Force trace
Test: angle_perftests --gtest_filter="*marvel_strike_force*"
Bug: angleproject:7005
Change-Id: Ife9c6f303651bc746953e0ecfc529a2c9ec0b0d7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3457744
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
02ce52d2
|
2022-02-08T20:41:01
|
|
Test: Add Lords Mobile trace
Test: angle_perftests --gtest_filter="*lords_mobile*"
Bug: angleproject:7000
Change-Id: I451433be5269c199ff404162df406b16ecee155b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3450029
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
236a3d0f
|
2022-02-06T16:09:24
|
|
Tests: Add Dead Trigger 2 trace
Test: angle_perftests --gtest_filter="*dead_trigger_2*"
Bug: angleproject:5823
Bug: angleproject:6986
Change-Id: I259cfb2f9c9d2d0f14af315c0e02fcd42d24cb8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442757
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
9bf5716c
|
2022-01-26T16:39:11
|
|
Tests: Add War Planet Online trace.
Add GL_KHR_texture_compression_astc_ldr prerequisite.
Test: angle_perftests --gtest_filter="*war_planet_online*"
Bug: angleproject:6774
Change-Id: I3d595453a0a570a1af4b1e6673cfc77e4ff9210b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3420296
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
42c8b29d
|
2022-01-05T13:35:23
|
|
Tests: Add Dead By Daylight trace.
Add GL_EXT_shader_framebuffer_fetch prerequisite.
Ignore SYNC-HAZARD-READ_AFTER_WRITE validation error in RendererVk.
Test: angle_perftests --gtest_filter="*dead_by_daylight*"
Bug: angleproject:6870
Change-Id: I01f53ff8d26b704b75afe8c02ac12777b51fd5de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3372793
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
706e44b0
|
2021-12-23T19:36:44
|
|
Tests: Add PUBG Mobile launch trace
Note: This isn't full representative of the shader compilation phase,
since the glGetProgramBinary() calls are excluded from the trace due to
missing functionality. The goal of this trace is to benchmark the
compile/link/use program steps, so this trace is still useful from that
perspective.
Test: TracePerfTest.Run/*pubg_mobile_launch
Bug: angleproject:6848
Bug: angleproject:6850
Change-Id: Ic0572b9fd1d0d26a53571c64446e577c7af7fa3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3355556
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
cb96c236
|
2022-01-26T18:53:55
|
|
Revert "Vulkan: Enable framebuffer fetch on SwiftShader."
This reverts commit 5107231939b5e04d3d5e4376176db42c3ae60193.
Reason for revert: Fails new code paths in Chrome+Skia.
Bug: angleproject:6947
Original change's description:
> Vulkan: Enable framebuffer fetch on SwiftShader.
>
> This also fixes a bug with non-coherent fetch in the symbol table.
>
> Bug: angleproject:6947
> Bug: angleproject:6948
> Change-Id: I190b2e0cddf1bc1b53a79079d3e2f79ccbb40d15
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3412998
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Bug: angleproject:6947
Bug: angleproject:6948
Change-Id: I8bd6c55598552b733547e45c854f6d55768d2b65
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3417503
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
51072319
|
2022-01-25T10:41:25
|
|
Vulkan: Enable framebuffer fetch on SwiftShader.
This also fixes a bug with non-coherent fetch in the symbol table.
Bug: angleproject:6947
Bug: angleproject:6948
Change-Id: I190b2e0cddf1bc1b53a79079d3e2f79ccbb40d15
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3412998
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b0e15ee4
|
2021-12-28T20:37:33
|
|
Decide GL_KHR_parallel_shader_compile in backends
GL_KHR_parallel_shader_compile was previously being enabled
unconditionally in the front end. However, some backends (Vulkan)
perform worse with parallel shader compilation. This CL moves the
decision of enabling GL_KHR_parallel_shader_compile to the backends.
To support single-threaded shader compilation without affecting the
generic worker thread pool, Context::mSingleThreadPool is added to own
the single-threaded WorkerThreadPool and can be returned by the new
function Context::getShaderCompileThreadPool(). Otherwise, if the
extension is enabled, the (renamed) Context::mMultiThreadPool is
returned.
Bug: angleproject:6748
Change-Id: Ic8d3a183f397608f3002a05480deb976dfe44792
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3360337
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
4d893a93
|
2021-09-07T11:47:23
|
|
Re-land: "Trace Tests: Remove auto-generated code."
No significant changes in the re-land.
Bug: angleproject:5133
Change-Id: Ib5bb8fba3e9e2f1f648d5af251b7b2319c9f37dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3352432
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
26fa0fe6
|
2021-12-15T10:44:40
|
|
Tests: Add Asphalt 9 trace
Test: angle_perftests --gtest_filter="*asphalt_9*"
Bug: angleproject:5883
Change-Id: I8d180e6bd865d04ccc5c5938d62d86d1293de901
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3308852
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
709d8727
|
2021-12-14T16:11:33
|
|
Revert "Trace Tests: Remove auto-generated code."
This reverts commit 1c0bb44862fbc6107d73d056c2e07c59bcfa8d09.
Reason for revert: Causing failures on Intel Linux with native driver.
Original change's description:
> Trace Tests: Remove auto-generated code.
>
> Bug: angleproject:5133
> Change-Id: I71a82071b1c667475f7fefcd6c8766a9de71141d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3144215
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Bug: angleproject:6816
Change-Id: Ic35145c8c3bb23ccf196b86def42f4a82f07aad5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3340332
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
1c0bb448
|
2021-09-07T11:47:23
|
|
Trace Tests: Remove auto-generated code.
Bug: angleproject:5133
Change-Id: I71a82071b1c667475f7fefcd6c8766a9de71141d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3144215
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7fc6c07c
|
2021-09-29T14:02:29
|
|
Capture/Replay: Update process for trace upgrading.
Includes changes to the retracing script.
Also includes documentation on how the process works.
Bug: angleproject:5133
Change-Id: I1acfe338f3fe0282a0461c314274c761ed04bd2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193418
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
66e1fb86
|
2021-12-09T11:52:24
|
|
Trace Tests: Ensure zillow runs on SwiftShader.
This trace was being skipped based on incorrect GPU detection.
Bug: angleproject:5133
Change-Id: I15e36e099aa2443153184f95b360a8afec278019
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3330575
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
268653c9
|
2021-11-25T13:37:58
|
|
Vulkan: Update a test to triger large dirty bit handling
Some traces bind one VBO to a large number of VAOs,and use glBufferData
to change buffer size frequently,this will cause glBufferData spending
a lot of time doing VAO dirty bit handling, which leads to high cpu load
in these traces.This test could triger this issue.
Bug: angleproject:6371
Change-Id: I99292825b8cb5bba58cc6b37e3baa7adcd02c780
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3301536
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8c634492
|
2021-11-17T11:06:23
|
|
Updates to perf test running script.
- Fixes logging (needed reload)
- Improves logging messages (less spam)
- Reduces time in test calibration & sampling
- Record failures on test errors more robustly
- Redesign the result recording class
Bug: angleproject:6090
Change-Id: I53fd86e9e009bd52ec98507334c69b05e711d83e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3288206
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
e9f9fa17
|
2021-11-09T18:13:15
|
|
Add cpu time measurement to perf tests
Bug: angleproject:6667
Change-Id: I16570a7b51d363dd1c0f35789b985520cb76d488
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3270601
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
27bc56c6
|
2021-11-15T18:18:53
|
|
Vulkan: MAP_UNSYNCHRONIZED_BIT: Skip ghosting/idling
Respect the following spec language:
No GL error is generated if pending operations which source or modify
the buffer overlap the mapped region, but the result of such previous
and any subsequent operations is undefined
Test: cpu time improves in unsync case in perf-tests/MapBufferRange.cpp
Bug: angleproject:6680
Change-Id: I6133952546735aced6e6ee8468ef2ac695316fb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3272018
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
316dcb56
|
2021-10-06T09:31:49
|
|
Add SwANGLE Skia Gold testing.
Required updating our system info helper to be able to retrieve
SwiftShader device information.
Bug: angleproject:6496
Change-Id: Ib38ea4da65d199433e17b87df2630c3fd77cb619
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208646
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
0b46ef40
|
2021-11-04T09:30:23
|
|
Vulkan: Start on a MapBufferRange benchmark
We have a lot of apps that use MapBufferRange to upload data. That can
be low performance. Let's have a benchmark for this.
Bug: angleproject:6634
Change-Id: I7e20ad65b89700733c02995a7c56d641e39a43b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3261378
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
|
|
45ffabd0
|
2021-11-04T09:45:03
|
|
Skip world_cricket_championship_2 Intel Linux
Timing out.
Bug: angleproject:6657
Change-Id: Ia4b6456adbffd41764ae2bccac6d1cf79f3b4fb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3262032
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
73da1648
|
2021-11-04T09:26:00
|
|
Tests: Skip zillow trace on desktop Vulkan
Bug: angleproject:6658
Change-Id: I0d0152c83930b6a789bd9660ad2f16e9a8e9f80a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3262031
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8aec7f35
|
2021-11-02T22:01:25
|
|
Add World Cricket Championship 2 Trace
Test: angle_perftests --gtest_filter="*world_cricket_championship_2*"
Bug: b/194508692
Change-Id: I0f36eba247b4726bc13b327634c429339ad1297c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3258343
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
4a2446c6
|
2021-10-19T11:55:17
|
|
Vulkan: Implement robust shader outputs.
In this CL we change ANGLE to pass the mask of missing shader
outputs down to pipeline creation. We then use the color mask
bits to block SwiftShader writing to unused outputs.
This fixes the undefined behaviour present in Genshin Impact.
Note that the other GLES implementations we tested don't seem
to modify outputs even if they're unused.
It was easier to mask out the color attachments in initialize
rather than set up the pipeline desc to mask out the attachments.
This was because we manipulate the color mask in a fairly complex
way before we initialize the pipeline desc.
Bug: angleproject:6566
Change-Id: Ie659fcd511cd286fa573fd25e3e6a0b9e123ebd6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3232435
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
1dc2b702
|
2021-10-13T16:02:37
|
|
Vulkan: Pass shader module map to init pipelines.
Instead of pulling out the shader modules from the shader map when
we start the call chain, pull them out right in the init call. This
saves a bunch of boilerplate code.
Refactoring change only.
Bug: angleproject:6566
Change-Id: Ib8d79bd7284d7ddb83522270f3d4df9086ab7300
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3221134
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f3d5dac3
|
2021-08-23T17:25:15
|
|
Vulkan: SPIR-V Gen: Drop dependency to glslang
The SPIR-V gen path is now made default. Compilation through glslang is
still supported for debugging, and is enabled on the GLSL* end2end tests
for smoke testing. On release builds, glslang is not supported.
To test with glslang, add the following gn arg (only necessary if dcheck
is disabled):
angle_enable_spirv_gen_through_glslang = true
Then enable the generateSPIRVThroughGlslang feature. This can be done
by setting an environment variable:
ANGLE_FEATURE_OVERRIDES_ENABLED=generateSPIRVThroughGlslang ./angle_deqp_gles2_tests
Binary size saving:
- 1.3MB on Linux (SPIR-V gen itself: 240KB)
- 730KB on Android (SPIR-V gen itself: 140KB)
Perf tests:
- LinkProgramBenchmark.Run/vulkan_compile_single_thread
* Through glslang:
truncated mean: 1287033.36
* Direct SPIR-V Gen:
truncated mean: 244495.91 (~80% reduction)
- LinkProgramBenchmark.Run/vulkan_compile_multi_thread
* Through glslang:
truncated mean: 4565894.83
* Direct SPIR-V Gen:
truncated mean: 1158164.10 (~75% reduction)
Bug: angleproject:4889
Bug: angleproject:6210
Change-Id: I486342702977c8114e90073b97183aba115a8b2d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3115140
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
44bef8ae
|
2021-10-08T15:01:37
|
|
Remove traces of Feature Level 9_3 support from tests.
Bug: angleproject:1284
Bug: angleproject:3042
Change-Id: Ic2f77d315e98c3b15c5fc8b0359168bce00867d4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213294
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c0ab6a77
|
2021-10-09T00:38:40
|
|
Skip crashing pokemon_unite trace on Linux Intel
Already skipped on Windows
Bug: b/201900915
Bug: angleproject:6494
Change-Id: I4c586d88bb91ff13700157ee5ca585370e7c7887
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3213755
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
da804530
|
2021-10-08T12:52:04
|
|
Capture/Replay: Skip pokemon_unite on Intel+Windows
Test is getting inconsistent results around foliage edges.
Test: angle_perftests --gtest_filter="*pokemon_unite*"
Bug: b/201900915
Bug: angleproject:6494
Bug: angleproject:6548
Change-Id: I06a72bcd2e471613caf1787ee8e5fd6e7f22817d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3214691
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
666fcf38
|
2021-10-08T12:19:15
|
|
Rename functions that overlap with Windows APIs.
Bug: angleproject:6283
Change-Id: Ifcd9ea9e3bf729fd2066178eb9429050b2f10518
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3212894
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fe943910
|
2021-10-02T21:55:34
|
|
Tests: Add Pokemon UNITE trace
Test: angle_perftests --gtest_filter="*pokemon_unite*"
Bug: b/201900915
Bug: angleproject:6494
Change-Id: I37b52a8557f135ca4d7e42eb964f17104d004513
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3201031
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
62414cf8
|
2021-10-06T16:07:03
|
|
Fix GPU-time-tracking in WebGL perf tests
GL_EXT_disjoint_timer_query is not enabled by default in WebGL mode.
This change ensures that extension is enabled.
Bug: angleproject:4794
Change-Id: I1835f7ed2afd7a155ff9b63fad74a066df59ea4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3210626
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
66c89b0f
|
2021-10-06T16:28:42
|
|
Fix and disable MSVC warnings
Needed because some warnings are no longer disabled after
http://crrev.com/c/3189512.
Also includes https://github.com/KhronosGroup/OpenCL-Headers/pull/179,
needed after clang upgrade to llvmorg-14-init-5410-gd0473681
Bug: chromium:1257173
Change-Id: I4f844aa972362c488cb6d37244439e2126f2c1c3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3210629
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
1b669f5d
|
2021-10-05T15:55:58
|
|
Add test names and metric names for BitSetIteratorPerf.
New names are like so:
[ RUN ] BitSetIteratorPerfTest/BitSetArray_96.Run
*RESULT BitSetIteratorPerfTest/BitSetArray_96.wall_time: run= 8609.2511842004 ns
.. etc ...
Bug: angleproject:2244
Change-Id: I461f52a0ee098875544203c618c6b24598281f73
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206257
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a44197b5
|
2021-09-30T17:21:21
|
|
Tests: Add Mini World Creata Trace
Vulkan test failed on Pixel4XL due to a
vulkan validation layer error
VUID-vkDestroyBuffer-buffer-00922.
As a temp work around,
I add a condition in TracePerfTest.cpp
to skip the vulkan test on Qualcomm GPU
Test: angle_perftests --gtest_filter="*mini_world*"
Bug: b/194508684
Bug: angleproject:6443
Change-Id: I382b9dfc9aafeed92b89223214d8a4aeb75425a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3195194
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
9994110b
|
2021-09-09T15:29:13
|
|
Tests: Add Nier Reincarnation trace.
Requires EGL_KHR_gl_colorspace and GL_KHR_texture_compression_astc_ldr.
Test: angle_perftests --gtest_filter="*nier_reincarnation*"
Bug: angleproject:6366
Change-Id: Ibb71520762cf9c0a17047324557e70215754bbbb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3151818
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e024635d
|
2021-09-10T13:56:28
|
|
ANGLEPerfTest: Skip tests when missing color space support.
Make tests where a non-linear colorspace was requested on platforms
that do not support EGL_KHR_gl_colorspace non-fatal.
Add a initializeGLWithResult function to GLWindowBase, returning a
new GLWindowResult enum and wrap it in EGLWindow and WGLWindow.
Bug: angleproject:6366
Change-Id: Ib57327c4d988d82064272f229f8ad59287541623
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3151833
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3e234e24
|
2021-09-17T11:45:01
|
|
PerfTests: Updates to several tests.
Bug: angleproject:6371
Change-Id: If71c79fd363f7463098b571550af6ceb0634c00d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3176440
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c3e0eafa
|
2021-09-22T13:35:04
|
|
Revert "Perf Tests: Split samples into sub-tests on desktop."
This reverts commit 90c981dafc06d6bc0696749dface1337e37784d2.
Reason for revert: Causing timeouts on perf bots.
Original change's description:
> Perf Tests: Split samples into sub-tests on desktop.
>
> This adds an option to the perf test runner to split each sample of
> each test into a sub-test. The sub-tests then are split among the
> shards like ordinary tests, and distributed across machines. The
> intent is that running on different machines will reduce inter-build
> variance because of differences between test machines.
>
> This sampling change is only added to desktop (Linux/Win) because
> Android device variance seems to be lower.
>
> Bug: angleproject:6090
> Change-Id: I4046a012727baa8a0f2595de2349cc34257691f9
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152752
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Bug: angleproject:6090
Change-Id: I92bffb98999f35274ec31a3b7567d87453feff94
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3174274
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
90c981da
|
2021-09-10T11:04:19
|
|
Perf Tests: Split samples into sub-tests on desktop.
This adds an option to the perf test runner to split each sample of
each test into a sub-test. The sub-tests then are split among the
shards like ordinary tests, and distributed across machines. The
intent is that running on different machines will reduce inter-build
variance because of differences between test machines.
This sampling change is only added to desktop (Linux/Win) because
Android device variance seems to be lower.
Bug: angleproject:6090
Change-Id: I4046a012727baa8a0f2595de2349cc34257691f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152752
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
c78ebccd
|
2021-09-09T16:47:26
|
|
Perf: Add _many_tex_draw test
Add a new perf test _many_tex_draw, which draws with 8 textures bound.
The intent of this test is to stress calls like retain() with various
implementations of vk::Resource.
Additionally, this CL updates the textures to use format GL_RGBA, rather
than GL_RGB, to avoid the emulation step that's required due to the lack
of support for the 3 channel format.
Bug: angleproject:5971
Test: DrawCallPerfBenchmark.Run/*_many_tex_draw
Change-Id: Iffb39b76fab68cc2a76dfd2da38db7e77cb4dac0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152171
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
e10a4031
|
2021-09-08T15:57:00
|
|
Vulkan: Add a test to triger large VAO dirty bit handling.
Some traces bind one VBO to a large number of VAOs,this will cause
glBufferData spending a lot of time doing VAO dirty bit handling,which
leads to high cpu load in these traces.This test could triger this
issue.
Bug: angleproject:6371
Change-Id: Iedc6630b497cb0f62ea0129aefc19c717c3ef905
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3147173
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Sunny Sun <sunny.sun@arm.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
247ee1c3
|
2021-09-10T09:38:25
|
|
Perf Tests: Output results in "msBestFitFormat" again.
The histogram bins for "ms" would cause excessive rounding for tests
that run very quickly. For example, 0.0012354 ms would be rounded to
0.001 ms. This would produce very flat graphs that don't accurately
represent the real results.
Bug: angleproject:6090
Change-Id: I9293b2083d7e54dc2663648c361f4883278806ec
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152746
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1a6fd9d0
|
2021-09-09T10:32:26
|
|
Capture/Replay: Remove debug logging
The debug logging is flooding the terminal with the following:
Frame 0: x 0 y 0 (screen x 64, screen y 133)
Frame 1: x 1 y 0 (screen x 74, screen y 133)
Frame 2: x 2 y 0 (screen x 84, screen y 133)
Frame 3: x 3 y 0 (screen x 94, screen y 133)
Frame 4: x 4 y 0 (screen x 104, screen y 133)
Frame 5: x 5 y 0 (screen x 114, screen y 133)
Frame 6: x 0 y 1 (screen x 64, screen y 166)
Frame 7: x 1 y 1 (screen x 74, screen y 166)
Frame 8: x 2 y 1 (screen x 84, screen y 166)
Frame 9: x 3 y 1 (screen x 94, screen y 166)
This drowns out all over log statements, so it's being removed.
Bug: b/186881553
Change-Id: Ib2235a18b56b993f16e7532249c488403383bd65
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152155
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
e1bc8de3
|
2021-09-08T07:59:37
|
|
Change links from 'master' to 'main' branch.
Bug: chromium:1226949
Change-Id: Ie7b28b2fa094cf0c0a407968d681e580519cbb88
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3148210
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5726158f
|
2021-09-08T13:31:40
|
|
Trace Tests: Fix test data path.
A prior refactor was missing the path separator between the trace
folders. This CL also makes the error more visible by forcing the
test step to fail if there's a missing path. Previously it would
print an error message but silently continue.
Bug: angleproject:5133
Change-Id: I71e7c751662a08d6ff199f0f802310d0ef52ed5e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3149572
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f1cbaac7
|
2021-09-08T10:21:40
|
|
Capture/Replay: Disable world_of_kings for Win+Intel
The world_of_kings trace is flaky, particularly on Windows+Intel.
In most instances (every?) it's off by 1:
Left Pixel rgba(32, 105, 119, 255) #206977FF <<--- good
Diff rgba(0, 0, 1, 0)
Right Pixel rgba(32, 105, 118, 255) #206976FF <<--- bad
Bug: angleproject:6372
Bug: b/198101940
Change-Id: I6be7138e050d63df3dd8a189882b64dadfe62740
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3149433
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
2f3e4db8
|
2021-09-02T10:31:13
|
|
Capture/Replay: Serialize trace metadata to a JSON file.
This will allow us to remove more code auto-generation for the trace
tests. The trace info now can be loaded directly from JSON instead of
from the autogenerated information.
Bug: angleproject:5133
Change-Id: I04e22b9279b19282df274bc8defcd363d0449111
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140218
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
9874be31
|
2021-09-02T10:25:21
|
|
Trace Tests: Load trace list from JSON file.
Instead of using the auto-generated enum for the trace list, load
directly from restricted_traces.json. This will lead to more CLs
that entirely remove the auto-generated code from the trace tests.
Bug: angleproject:5133
Change-Id: I6515624a2145319d097b43085741cf9c48f1792e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140217
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b6e99bb3
|
2021-09-02T13:47:34
|
|
Rename and expand shader variable init feature.
This feature now forces both output and unitialized locals to be
initialized by the shader translator. This feature is needed by the
trace validator to ensure we get deterministic behaviour in traces
that exhibit some undefined results.
Bug: angleproject:5133
Change-Id: Id1242cd077a57e891eed217f7671976ce1631a58
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140216
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9c05f55a
|
2021-07-15T10:58:10
|
|
Capture/Replay: Add replay state validation.
We can use this to validate traces that have slight differences
when retracing. The valdation works by embedding the "expected"
JSON into a string at the end of each captured frame. The replay
also embeds a callback which fires right before the swap in the
replay harness. The harness then gets the "actual" JSON and runs
a comparison. On a mismatch it calls "diff" externally.
Currently the diff call is hard-coded to work on Linux only.
Note that when running validation it's important to replay on
SwiftShader since that's what we use to retrace.
Bug: angleproject:5133
Change-Id: Icbf0031d07be8bd916607c537dec235f9a512c43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3066008
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3a9df22f
|
2021-08-29T21:05:04
|
|
Tests: Add World of Kings trace
Test: angle_perftests --gtest_filter="*world_of_kings*"
Tbr: timvp@google.com, jmadill@chromium.org
Bug: b/198101940
Bug: angleproject:6339
Change-Id: Id19ebe19d6a3dee3bc7c1c59801e7b9a4dc4fdb2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3127943
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
58bb11ca
|
2021-04-16T12:28:50
|
|
Capture/Replay: Multi-Context Support
Add support for capturing and replaying multiple contexts.
1.) Create and initialize the Contexts in the share group during
SetupReplay().
2.) Track the Context the command stream is for, and if the Context ID
changes, inject an eglMakeCurrent() call to switch to the new Context.
3.) Intercept eglCreateContext() and eglMakeCurrent() to route to either
EGLWindow or WGLWindow, depending on the current platform.
Specifically, this enables capturing and replaying Asphalt 9.
Bug: angleproject:5878
Change-Id: I5bc9b7ece5388ce405ba3f9e9dc3967e78662000
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2830145
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f7b2ab5c
|
2021-08-25T19:00:44
|
|
Perf tests: Add 3 new skips after updating perf run times.
MultisampledRenderToTexturePerf on P4 and Intel Linux
TextureUploadPerf on Intel Linux
Bug: angleproject:5120
Bug: angleproject:6319
Bug: angleproject:6320
Change-Id: Ia201a4d62e95f82ec42f64abebc4222e31d41e9f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3119058
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1b2febb9
|
2021-08-23T12:39:16
|
|
Trace Tests: Refactor calibration logic.
Instead of calling glFinish every step we now run a few warmup loops
to try and figure out the right step interval. On each run we refine
the step interval until we reach a number that completes in the
specific time after a single glFinish call. This method will use the
specified test time much more consistenty.
Also a couple other improvements. Will use more test time on the bots
because previously they were using a calibration/warmup time of 1
second per run loop, and this bumps it up to 3 per run loop.
Long explanation below.
What we did before:
step()
glFinish()
step()
glFinish()
.. repeat for "gCalibrationTime" seconds
then take the number of steps, the actual time ran, and compute an
estimate for "mStepsToRun".
When we run for real, we go:
step()
step()
step()
.. repeat for "mStepsToRun" steps.
glFinish()
this has an obvious performance difference, because after each step()
(one frame in a trace) you had a complete stall.
The new code first does the above to compute a tentative mStepsToRun,
then uses the results of the second run to compute a much more accurate
mStepsToRun by using the "actual" time it took to run the estimate.
Bug: angleproject:6090
Change-Id: I0ff19873580e13f2af5a145a21f5b1c59fb15795
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3114606
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
d240f104
|
2021-08-23T16:25:20
|
|
Perf Tests: Update histogram units.
Use "ms_smallerIsBetter" instead of "msBestFitFormat". This matches
the requirements of the online docs as well as ensuring the dashboard
knows which way to track the regressions.
https://chromium.googlesource.com/catapult/+/HEAD/docs/histogram-set-json-format.md
Bug: angleproject:6090
Change-Id: I0b234725b55d4abb1dd1e8153e132fdbcbad1c60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3115225
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
|