|
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>
|
|
5c0b329e
|
2022-10-19T16:59:58
|
|
Vulkan: Clean up rotation spec const update
Update during makeCurrent was done by invalidating the program, and then
at pipeline creation time the spec const was updated. This is changed
so that makeCurrent updates the spec const directly, and avoid
invalidating the pipeline.
Also removes spec const usage calculation, as it's unused.
Bug: angleproject:7369
Change-Id: I79444ce4173c4db9c6800fb02afd9e8447a25f82
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963853
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
873650f4
|
2022-10-19T16:51:53
|
|
run_perf_tests.py: Fix test list unexpected error.
The tests were failing because of a failure to pull the test
json output from the device after --list-tests. This failure
was benign because the test lists still came through to the
test runner and it was able to proceed, but it was causing
an error message.
Also changes the runner to fail early if there's any error
during --list-tests.
Bug: angleproject:7755
Change-Id: I67bceec6b69fd2856136313d5e456e3c1f1caccf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3964753
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Roman Lavrov <romanl@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>
|
|
8403e4c5
|
2022-10-10T20:59:29
|
|
EGL: Resource IDs for Surface, Context and EGL Image.
This will make these classes play nicely with resource maps. As these
objects are used in a lot of places, and simplified C can't handle
unordered_map, it's necessary to index the maps by simple packed IDs
in capture/replay code. This indirection will also have increased
safety as we validate EGL resource ID handle values before accessing
the memory directly.
Also hides some of the other EGL capture methods behind helper methods
to simplify the C code and hide assignments and other complex maps.
Bug: angleproject:7758
Change-Id: Ibc7bb56430d3068bd38877c9dfb011979d4ea234
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957164
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@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>
|
|
d8fe28dd
|
2022-10-19T00:00:00
|
|
Suppress clip distance tests on iOS
Bug: angleproject:4452
Bug: angleproject:7768
Change-Id: Iabea037ded6ee3cfa0c325c59099772ac6adbbc6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963134
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
025504b9
|
2022-10-17T17:03:03
|
|
Pass worker pools to image load functions
In preparation for the ASTC decoder using threaded decoding.
Bug: b/250688943
Change-Id: I70d669bcb57b900dbb633304182e174aec362203
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961339
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Greg Schlomoff <gregschlom@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fbd7d5fa
|
2022-10-17T17:20:09
|
|
Move thread pool classes to common/
In preparation for access by image_util files.
Bug: b/250688943
Change-Id: I24777269a5071eae9a60f939635d01ed7246461f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961454
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
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>
|
|
03eccad2
|
2022-10-18T10:39:53
|
|
Tests: Add reduced crashing shader test
Reduced case of a shader that crashes an app during SPIR-V compile.
Test: GLSLTest_ES3.NestedPowFromUniform
Bug: b/217922015
Change-Id: I8d0ccd8b2c4f4e8e51ac39c9dbfaafbf48423157
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3965051
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d6ca85bd
|
2022-10-18T17:10:41
|
|
run_perf_tests.py: Remove unneeded Android args.
These only apply to the Chromium Android test runner, which we
no longer use for this script.
Bug: angleproject:7755
Change-Id: I311ac204e1999a77872a76f6d0b9d149f7ac409e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963651
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
|
|
fec93f40
|
2022-10-14T00:00:00
|
|
GL: Support clip and cull distance extensions
Use EXT_clip_cull_distance on OpenGL ES to expose
APPLE_clip_distance; use ARB_cull_distance on OpenGL
to expose EXT_clip_cull_distance.
Added disableClipCullDistance OpenGL workaround.
Bug: angleproject:4452
Change-Id: I458cad29c10b9d9193c5233e24bac53361ba104e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956075
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
11f8f537
|
2022-10-17T16:59:50
|
|
Capture/Replay: Improvements to self-test.
- print errors in the replay test
- catch missing serialization
- clean stale json output files before each replay
- add flag to show replay stdout
- fix help message
Bug: angleproject:7731
Change-Id: Ibeb780f417bdbed4b249038920963dd1bd68f4aa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3962248
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e0d2c7f2
|
2022-10-18T15:07:25
|
|
retrace script: Update trace test suite name.
Bug: angleproject:7755
Change-Id: I1322543b199aacb4f083b67f0bc4f8bf93ea65b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963359
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
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>
|
|
0d203aef
|
2022-10-16T10:08:01
|
|
EGL: Add ID types for egl::Surface and egl::Image.
This is in preparation for using resource maps for Context, Surface
and EGLImage. The map change will make it much easier to work with
the trace fixture. It will also have a small benefit in safety as
we will longer be casting raw pointers for these types.
As these objects are used in a lot of places, and simplified C
can't handle unordered_map, it's necessary to index the maps by
simple packed IDs in capture/replay code.
Bug: angleproject:7758
Change-Id: Ib1d19622a4f2a6f0458cc28f5bbe30bb9f349b98
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957163
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4be8294c
|
2022-10-06T09:50:28
|
|
Tests: Enable EGL_ANGLE_iosurface_client_buffer tests on iOS
This enables EGL_ANGLE_iosurface_client_buffer extension tests on iOS
platform. A few OpenGLES related tests had to be suppressed though. I'm
getting the following:
[==========] 96 tests from 1 test suite ran. (960 ms total)
[ PASSED ] 66 tests.
[ SKIPPED ] 30 tests, listed below:
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_Metal
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_Metal
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES3_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_OpenGL
[ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_Metal
Test: iPhone 13 and ./iossim -d 'iPhone 13' -c \
'--gtest_filter=\*IOSurfaceClientBufferTest\*' angle_end2end_tests.app
Bug: angleproject:5491
Change-Id: Id7c489ae41b11442a2dd06174b2c279894e83401
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957539
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
968041b5
|
2022-08-19T12:11:23
|
|
Metal: Optimized BufferSubData per device
Adds a staging buffer path which means there are 4 paths
for bufferSubData.
1. direct copy
* get a pointer to the buffer
* copy the new data to the buffer
* if the buffer is managed, tell metal which part was updated
2. use a shadow copy
* copy the data to a shadow copy
* copy the entire shadow to a new buffer
* start using the new buffer
3. use a new buffer
* get a new buffer (or unused)
* put the new data in the new buffer
* blit any unchanged data from the old buffer to the new buffer
* start using the new buffer
4. use a staging buffer
* get a staging buffer
* put the new data in the staging buffer
* blit from the staging buffer to the existing buffer.
Further, there are 3 types of memory storage modes.
Managed, Staged, Private.
Based on the GPU type different storage modes and different
paths in different sitatutions are more performant.
So, add feature flags to select paths by GPU.
Bug: angleproject:7544
Change-Id: I741dd1874201043416374194bd2001ded8dbd9b4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842641
Reviewed-by: Kyle Piddington <kpiddington@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
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>
|
|
b354aa4d
|
2022-10-17T13:18:17
|
|
Skip some end2end tests failing on iOS
Bug: angleproject:7756
Change-Id: Ia9a7d9260feb97d094b2e58104d7cdb4a866e5b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3960968
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
eaa71709
|
2022-10-14T11:47:07
|
|
Vulkan: s/ContextVk/Context in pipeline creation
With VK_EXT_graphics_pipeline_library, pipeline creation may happen on a
thread. This change prepares the interface such that only a vk::Context
is needed, instead of ContextVk.
Bug: angleproject:7369
Change-Id: Ib7e9e7e140e27a4af71bffee069c88e3d7f47dfa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956935
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
19fb11b6
|
2022-10-14T11:12:20
|
|
Vulkan: Merge warmed up compute cache into renderer
It was done for graphics, but was accidentally missing for compute.
Bug: angleproject:5881
Bug: angleproject:7629
Change-Id: I28a4c2e38b07b08e1636b443f2c0963130965ebb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956496
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
09a1aec4
|
2022-10-14T08:59:07
|
|
Expand suppression for async timer tests.
Flaking on SwiftShader as well.
Bug: angleproject:7548
Change-Id: I419c602184c03141c75b21bf3a0b66d8b2a34303
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956494
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.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>
|
|
0b7f3f5e
|
2022-10-12T17:47:06
|
|
More robustness tests
Similar test to what was introduced in
https://chromium-review.googlesource.com/c/angle/angle/+/3943534, but
for vertex and compute shaders.
Bug: angleproject:7629
Change-Id: I743233136125358edb6a15760b1ece63c36d3f85
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949915
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
c22f091d
|
2022-09-29T18:58:33
|
|
Replace Hard-Coded egl image attribs
This change is adapted from https://crrev.com/c/3838866
Added two hash maps to track below information:
EGLImage* --> EGLint* attrib
TextureID --> EGLImage*
During the CaptureShareGroupMidExecutionSetup,
when we iterate through all the textures the app created,
if the texture is bound to External target,
we will refer to the hash map TextureID --> EGLImage*
to find the EGLImage* pointer, and then use the result
as the key to refer to the other hash map
EGLImage* --> EGLint* attrib to find the attributes used
to create that EGLImage object. We can then use the
attributes to populate eglCreateImage or eglCreateImageKHR
calls in the trace calls.
Bug: angleproject:7570
Change-Id: I729de4ddea59242ccbe6243e036451f290545185
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3928212
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
135022e4
|
2022-10-11T00:03:11
|
|
Vulkan: Create robust pipelines based on context state
Previously, pipelines were made robust based on whether any context in
the share group has so far been made robust. This means that pipelines
created on non-robust contexts would still be compiled as robust.
Inefficiency aside, this was buggy because robustness was not part of
the pipeline cache key, so if a pipeline was created as non-robust
first, then recreated in a robust context, it would reuse the non-robust
variant.
With VK_EXT_pipeline_protected_access, a similar situation arises for
context protected-ness. However, it is incorrect in that case to create
pipelines as protected unnecessarily.
This change makes pipeline robustness a part of the pipeline cache key,
in preparation for protectedness to be added similarly. Compute
programs may now generate multiple pipelines as a result too.
Bug: angleproject:7629
Change-Id: Ie95f10eff878f8c8b221c1018da44385c7aad15e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3943534
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
9b5fff82
|
2022-10-05T21:56:00
|
|
Vulkan: Emulate shader stencil export for MSRTT
The MSRTT emulation code had one corner case issue that could lead to
performance and memory inefficiencies. That is when stencil needs to be
unresolved and VK_EXT_shader_stencil_export is not supported.
This change adds a path to emulate VK_EXT_shader_stencil_export and
removes this inefficiency.
This should help Chromium on older Android devices that lack both this
and the recent VK_EXT_multisampled_render_to_single_sampled extensions.
Chromium frequently breaks the render pass (crbug.com/1336981), which
easily leads to this situation.
Bug: angleproject:4836
Change-Id: Ifceec43f7f3807b7e32f4b379edcd4351ae76414
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935892
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
76f377c5
|
2022-06-17T16:05:16
|
|
Vulkan: Break renderpass when switch from query to non-query
getQueryResult will wait for query result to be available, which means a
potential CPU bubble if the result is not yet available. On tiler GPUs
it will at least wait for renderpass to complete. Usually query enabled
draws are very tiny (usually just draw a point to see if it is occluded
or not), and query disabled draws are expensive. Some apps do issue a
glFlush when switch from query draw to non-query draw, but app like
dead_by_daylight does not issue such flush. In order to reduce the
bubble, this CL ends renderpass and issue a flush when we switch from
query enabled draws to non-query enabled draw so that the result will be
available much earlier, this reduce the CPU bubble. This result in
dead_by_daylight frame time improves from 5.45ms to 3.5ms (35%
improvement).
Bug: b/250706693
Change-Id: Ia3a32a9fb336e6f256809b3cad83f61a45415fb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3931739
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
a217dd56
|
2022-10-06T11:25:31
|
|
Tests: Add The Witcher: Monster Slayer trace.
Test: angle_perftests --gtest_filter="*the_witcher_monster_slayer*"
Bug: angleproject:7747
Change-Id: I1851fc00cb665485b6111b4e01b0075d2440e62a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3942649
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
6eff905c
|
2022-10-11T10:08:12
|
|
Make Android gold tests populate os and os_version correctly.
os = Android
os_version = {ro.build.fingerprint}
These show up in Skia gold. Currently set to Linux info.
Bug: None
Change-Id: If2ffe5e8a6620fde9bd0a983f9c0d11ffe6a75c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3946179
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d0a024f9
|
2022-10-09T16:47:33
|
|
Lower perf tests resource usage further.
This reduces the warmup trials from 2->1 and the trial time
from 5s -> 4s.
Old: (2 warmup + 3 trials) * 5s / trial ~= 25s per sample
New: (1 warmup + 3 trials) * 4s / trial ~= 16s per sample
The tests should run in about 2/3 the time as it took prior.
A future change will likely have to split up the tests so we
can run shorter shards in sequential groupings between tests.
Bug: angleproject:7738
Change-Id: Ic6c744be838174b61f4eb832189ccad14f89103d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939917
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
85631d24
|
2022-10-06T10:13:31
|
|
Tests: Add 3D Pool Ball trace.
Test: angle_perftests --gtest_filter="*3d_pool_ball*"
Bug: angleproject:7742
Change-Id: I92870b928ee66af3eae903d91512b6943b893599
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3932171
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
1b5cf9f0
|
2022-10-07T19:02:16
|
|
run_perf_tests: Reduce warmup trials from 3 to 2.
This is an attempt to reduce utilization on the bots, which
are now taking too long and causing errors.
Bug: angleproject:7738
Change-Id: I1c576b2d0989240482d332712f7d93841e933902
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937051
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f8d393da
|
2022-10-05T10:09:34
|
|
Capture/Replay: Make retrace restore touch output files.
This should force a recompile of modified files.
Bug: angleproject:7731
Change-Id: I52c607fdda97c09e557a9ac3144fa67de3a17ee7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937048
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b6cc672c
|
2022-10-06T11:10:42
|
|
Perf Tests: Divide test samples between shards.
Instead of a single test shard running all samples for a test,
we run a single sample on different shards to produce a
combined measurement that can account for variance between
test machines.
Bug: angleproject:7671
Change-Id: I04bbd51de257f2f299783ce3bd65da3d9348c8dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937044
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
496b3532
|
2022-10-07T15:49:08
|
|
fix typo
Bug: None
Change-Id: Ieca7fcd5b8172ad16cc73f453f6e2e2f29ae6016
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939221
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
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>
|
|
4ebdac79
|
2022-08-29T16:25:46
|
|
Vulkan: Ensure we sync the draw FB before beingQuery.
Bug: chromium:1354271
Change-Id: I5fe3649d9d39de37d0a59c80a4f31a17d1a72838
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863145
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2d31fe98
|
2022-09-22T21:04:22
|
|
Implement PLS on Apple Silicon
Implements a subset of EXT_shader_framebuffer_fetch in the Metal
translator that is sufficient to support pixel local storage. Metal's
"programmable blending" feature is available on all Apple family GPUs
beginning with version 2.
Support for non-Apple GPUs will come later via readWrite textures,
which can also be coherent by annotating them with
[[raster_order_goup(0)]].
Bug: angleproject:7279
Change-Id: Ic74f6c0d21e87eb919e1f487163388d08d126857
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3916794
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Gregg Tavares <gman@chromium.org>
|
|
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>
|
|
13195f8a
|
2022-10-05T11:17:35
|
|
Vulkan: Fix missing input attachment usage on MSRTT
When combined with advanced blend (or framebuffer fetch for that
matter), MSRTT attachments could be used as input attachments. This
change fixes the missing usage bit.
Bug: angleproject:7739
Change-Id: I2190e4a6e534e120357dd68189fb9de07b6c54fa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936444
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
b5514bb2
|
2022-09-21T20:47:00
|
|
Support pixel local storage on ES 3.0
Now that the application-facing API is implemented, we don't have to
rely on ES 3.1 anymore. Expose and test the extension on ES 3.0.
Bug: angleproject:7279
Change-Id: I5635620b9088201c20bafd283813092a329225d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3915327
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
c09d1475
|
2022-10-05T14:52:40
|
|
restricted_trace_perf: Switch to --warmup-trials
Restore functionality after updates in:
https://chromium-review.googlesource.com/c/angle/angle/+/3906144
Test: restricted_trace_perf.py
Bug: angleproject:6970
Change-Id: I0632907b6dab0c0ad91536d42cac8eaf433f4da7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936966
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
e577353d
|
2022-09-29T17:20:22
|
|
restricted_trace_perf: Sleep between tests option
In order to get the most "real world" numbers possible, we're going
to start running with clocks unlocks on Pixel devices. To avoid
thermal throttling, allow for a pause between each test.
Test: restricted_trace_perf.py
Bug: angleproject:6970
Change-Id: If3f813cf1eadab6ea56122a3945f694eed79ed9a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936965
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a3b3d948
|
2022-10-05T14:15:32
|
|
Revert "Suppress DrawBuffersTest.MidRenderPassClearWithGapsRGB"
This reverts commit 668184941e8d107d585743c91359963f3410d434.
Reason for revert: VVL bug fixed
Original change's description:
> Suppress DrawBuffersTest.MidRenderPassClearWithGapsRGB
>
> To get vulkan-deps Autoroller working again
>
> Bug: angleproject:7736
> Change-Id: Iff6bb5bfc04fb22cb2cd7126d5ecbd932a5e9af5
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3934478
> Commit-Queue: Ian Elliott <ianelliott@google.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Auto-Submit: Ian Elliott <ianelliott@google.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bug: angleproject:7736
Change-Id: I2727447907f2e25cf9b854ffcc9ccfc04db2fb95
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936442
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
503b250a
|
2022-08-31T20:06:57
|
|
restricted_trace_perf: Use Android platform loader
With persistent shader caching enabled, we now need to run the trace
tests exclusively in "native" mode, with ANGLE as the driver. The
cache is provided via the EGL_ANDROID_blob_cache extension, and it
is only enabled using Android's EGL loader.
Test: restricted_trace_perf.py
Bug: angleproject:6970
Change-Id: If791bfe199217dcc80105b55d8769fe43ffd9739
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3868310
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
d8489db5
|
2022-10-05T12:57:06
|
|
Perf Tests: Reduce resource usage.
This halves the amount of time spent running the tests on
desktop platforms. It also reduces the number of shards used
on desktop platforms, to reduce resource utilization. It also
bumps up the test timeout to keep from getting infra errors.
Bug: angleproject:7738
Change-Id: Ie487c06452a39bb9ad1fe29b0d682e9c1bf297d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936448
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@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>
|
|
66818494
|
2022-10-04T12:21:02
|
|
Suppress DrawBuffersTest.MidRenderPassClearWithGapsRGB
To get vulkan-deps Autoroller working again
Bug: angleproject:7736
Change-Id: Iff6bb5bfc04fb22cb2cd7126d5ecbd932a5e9af5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3934478
Commit-Queue: Ian Elliott <ianelliott@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Ian Elliott <ianelliott@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.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>
|
|
be8aa9e9
|
2022-10-01T21:53:14
|
|
Test: Add The Gardens Between trace
Test: angle_perftests --gtest_filter="*the_gardens_between*"
Bug: angleproject:7725
Change-Id: I3160155018d843f57ec6e2cd6455fd2f6e1af580
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3931398
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
5d7c4eca
|
2022-10-02T02:27:27
|
|
Vulkan: Don't flush depth/stencil on color blit
When syncing the read framebuffer for blit, deferred clears are picked
up for the attachments that are not being synced. They are then
redeferred so a future command would pick them hopefully as loadOp.
This change improves the frame time of Pretty Derby on Pixel 6 by ~23%.
Bug: angleproject:7727
Change-Id: Ie7d84c58315cd09204e5229f1ec73605d5a7f639
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3931973
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1d73bad5
|
2022-10-01T22:50:48
|
|
Vulkan: Fix reclear of rendered-to depth/stencil
An optimization drops re-clears of images to the same value. When a
render pass does:
- clear
- render
- store
the "cleared" status of the image was removed because at the end of the
render pass, the image no longer has the cleared value. However, this
was mistakenly only done for color, but should have been done for depth
and stencil as well.
Bug: b/239430388
Change-Id: Ib99e0df460eaa82ce87b593276abd9b07f0a8375
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3931972
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a7dc51f2
|
2022-10-01T08:49:11
|
|
Add a framebuffer fetch implementation of PLS
The framebuffer fetch implementation works by attaching PLS backing
textures to the framebuffer, and then rewriting PLS uniforms as "inout"
fragment variables. The compiler's existing machinery takes it from
there and makes it work on GL and Vulkan, and soon Metal.
EXT_shader_framebuffer_fetch is now the preferred backend for pixel
local storage, but we also use EXT_shader_framebuffer_fetch_non_coherent
if shader images can't be coherent. This is especially interesting for
Vulkan, since noncoherent framebuffer fetch is possible without any
extensions.
Bug: angleproject:7279
Bug: angleproject:7683
Bug: angleproject:7684
Bug: angleproject:7724
Change-Id: I33f3b2c6df9a5709969d9165c448ea71b096c9e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3900142
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
9905dabe
|
2022-09-30T00:47:17
|
|
Tests: Add Darkness Rises trace
Test: angle_perftests --gtest_filter="*darkness_rises*"
Bug: angleproject:7719
Change-Id: I0b99678003662c5e0bb89a5b78490276224a8eaa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3929333
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
836cc5e2
|
2022-09-09T22:06:22
|
|
Vulkan: add etc to bc compute transcoding.
use compute shader to transcode etc format to bc format.
Bug: b/243398683
Change-Id: Idbd0820a2df8d92fe690055dae2933bc559e9bfd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888501
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Hailin Zhang <hailinzhang@google.com>
|
|
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>
|
|
a81679bc
|
2022-09-26T23:56:34
|
|
Support EXT_shader_framebuffer_fetch on GLES
All the frontend functionality for EXT_shader_framebuffer_fetch is
already present, but only supported on Vulkan. This change wires it up
for the native GLES backend as well.
Bug: angleproject:7279
Bug: angleproject:7703
Change-Id: Ie1fce79e08a78662c8af65d33f3d8417c96cf58e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3920577
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
583fd03e
|
2022-09-29T16:28:05
|
|
Translator: Fix ClampIndirectIndices vs. unsized arrays
A deepCopy() was missing from this code path, which led to an AST
validation error. However, clamping indices for unsized arrays is not
strictly correct. For example, an out of bounds write with robustness
is expected to be dropped, not overwrite the last element.
Since robustness already covers storage blocks, this clamping is no
longer done.
Bug: angleproject:7712
Change-Id: I96dd18ef47cd453f19391bdccbd4372c24854ade
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3924863
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@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>
|
|
943d71e1
|
2022-08-11T10:17:06
|
|
gl_test: add a test to capture/replay MEC with EGL images
Bug: angleproject:7564
Change-Id: I1cb84c5bccd20b5614ddd400797f112138f8c200
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826162
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
ff7aa214
|
2022-09-29T19:56:28
|
|
GL_PALETTE* sampling
Implement GL_PALETTE* formats by decoding them into
a R8G8B8A8_UNORM image at load time.
Test: angle_end2end_tests --gtest_filter="PalettedTextureTest.*"
Bug: angleproject:7599
Bug: angleproject:7688
Bug: angleproject:7710
Change-Id: I94d51e2c480fcdd39f1a0ad241b311d3b4de1579
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863251
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Constantine Shablya <constantine.shablya@collabora.com>
|
|
053c6a06
|
2022-09-20T15:17:28
|
|
Vulkan: Add more tests for attachmentless framebuffer
This CL adds below test scenarios for attachmentless framebuffer:
1. Create first attachmentless framebuffer with larger size,
and create second attachmentless framebuffer with smaller size.
2. Create an attachmentless framebuffer with smaller size,
and grow its default width and height.
3. Create an attachmentless framebuffer with larger size,
and shrink its default width and height.
4. Create an attachmentless framebuffer with larger size,
given it an attachment with a medium size,
and shrink its default width and height.
This CL also splits the test failure bugs on different
vendor and renderer to different bug tickets.
This CL addresses a bug on vulkan backend:
only skip onFramebufferChange()
if the framebuffer has at least one attachment,
and mCurrentFramebufferDesc equals to priorFramebufferDesc.
Otherwise in test scenario 2 and 3 above,
we will use the wrong scissor size,
because the FramebufferDesc remains the same before and after
changing the default width and height,
and we will wrongly skip onFramebufferChange() where we update scissor
area to match with the new default width and height.
Bug: angleproject:7666
Bug: angleproject:7697
Bug: angleproject:7699
Bug: angleproject:7700
Bug: angleproject:7705
Change-Id: Ieb143b27f8c1a229dab8f43d0a16e3e871185941
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3908332
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
055d4c2f
|
2022-09-28T17:31:37
|
|
Tests: Add Star Wars: Galaxy of Heroes trace
Test: angle_perftests --gtest_filter="*star_wars_galaxy_of_heroes*"
Bug: angleproject:7709
Change-Id: I00937ea7e637d618999ec57af6e1b5efed56ebe3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3927947
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6f037273
|
2022-09-28T18:46:13
|
|
Make last lines of batch stdout more visible in logs.
So that it looks like this:
https://gist.github.com/romanl-g/dd0d2f7e0eddf16fd802bed97789024c
Bug: angleproject:7708
Change-Id: Ic92a9de6cba24637119ae9041e9126364d414948
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3923459
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
b681e939
|
2022-09-19T13:20:23
|
|
Turn on trace data hash checking automatically.
This should save time uploading trace data already present on the
device.
Bug: angleproject:7671
Change-Id: Ie655cba284b6b3aec2e264cd4d64e4d18ebff8a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3905902
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
65d3d0f6
|
2022-09-19T10:42:43
|
|
run_perf_tests: Add option to find test binary in out dir.
This allows us to run the perf test runner script from any
directory and use that as a basis to find the most recently
modified test suite binary. This saves us from chdir()ing into
test directory every time we want to run a test suite.
Ideally this should move into the test utils folder to be used
by the gold tests script as well.
Bug: angleproject:7671
Change-Id: Iead98670bb5f7627ae32f7ac41b4ebcee2726841
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3904427
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c1dc9de5
|
2022-09-27T12:49:21
|
|
GLES1: Enable SpotExpDir
Likely fixed by the lighting fixes.
Bug: angleproject:6201
Change-Id: Idc74d4e169dd3c1b2176b6db0a2559c25197ebd7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3922777
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
74c2f2d3
|
2022-09-27T11:40:51
|
|
GLES1: Enable UserClip tests
Passing now.
Bug: angleproject:3408
Change-Id: I4306f5eb8ae85d52dca8956cc22eac49ce957a14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3922775
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
380ae37b
|
2022-09-26T21:34:22
|
|
Tests: Add Sky Force Reloaded trace
Test: angle_perftests --gtest_filter="*sky_force_reloaded*"
Bug: angleproject:7701
Change-Id: I6d86c760d007807a14cc88e869e8fc3c5e8f6a2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3920575
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
7d0c5cc0
|
2022-09-26T20:47:48
|
|
Tests: Add Gacha Club trace
Test: angle_perftests --gtest_filter="*gacha_club*"
Bug: angleproject:7698
Change-Id: I84d055115235fb5506b8d14b5777b3070ed2728a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3920574
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
97bdac9b
|
2022-09-13T11:09:51
|
|
Tests: Add Zenonia 4 trace.
Test: angle_perftests --gtest_filter="*zenonia_4*"
Bug: angleproject:7652
Change-Id: I7a3ff361085ba64f389be8ed487af635400fa2e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3913504
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
dd0fc335
|
2022-09-26T22:56:29
|
|
GLES1: Make CTS verbose
The `machine` parameters were uninitialized (set to 0 as globals). As a
result, the test failure messages were not emitted, making it harder to
understand what is failing.
Bug: angleproject:3408
Change-Id: Ib8351755af24e01736314d1832160edf10a8e767
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3920894
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
163e56e4
|
2022-09-20T00:40:55
|
|
Allow feature overrides to end in * (wildcard)
Makes it easier to apply overrides to features with long names. Also
works around Android's limit of 92 characters for debug properties.
Bug: b/238024366
Change-Id: I8f417287f92b2439de1a7b7d6abbaf9e61b405e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3906222
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
|
|
1fc6c49c
|
2022-09-23T16:39:26
|
|
Log additional info when "failed to record some samples"
Check each sample instead of total in the end to make it more clear.
Bug: angleproject:7117
Change-Id: I7d6137c535266e4cf47e772b816cfb8bfa4575d3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3916516
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
f4389797
|
2022-09-23T15:36:13
|
|
GLES1/Vulkan: Enable GL_EXT_multisample_compatibility
... with a non-conformant implementation. This unblocks some tests that
unnecessary call glDisable(GL_MULTISAMPLE) and trip up on it generating
validation error.
Bug: angleproject:7676
Bug: angleproject:7657
Bug: angleproject:3863
Bug: angleproject:3864
Change-Id: Iaebbea66da81fc9a30bf7a87deed7cf88ff38476
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891546
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bc447ca4
|
2022-09-20T22:38:16
|
|
GLES1: Move lighting to vertex shader
In the spec, lighting is done as part of vertex processing, and results
in a new vertex color. Texturing is applied later. ANGLE however did
lighting in the fragment shader.
With this change, lighting is moved to the vertex shader. This fixes
rendering of lit objects, as interpolation is done linearly or flat
between the vertices per spec, instead of done precisely per fragment.
While typically this is inferior to per-fragment lighting, it's what the
spec mandates.
On the dr_driving trace, this reduces the render pass time by ~20% on
Pixel 6.
Bug: angleproject:6201
Bug: angleproject:6644
Change-Id: I10e37df8c56c22d520a738af8f8630bc6a01ca7f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3906394
Reviewed-by: Constantine Shablya <constantine.shablya@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d2a58f00
|
2022-09-08T14:19:21
|
|
EGL: Implement eglCopyMetalSharedEventANGLE
Add eglCopyMetalSharedEventANGLE function to the
ANGLE_metal_shared_event_sync extension. This brings the extension on
par with the EGL_ANDROID_native_fence_sync extension.
eglCopyMetalSharedEventANGLE allows for copying the Metal event object
from EGLSync objects implemented by the ANGLE Metal renderer. This
function follows Objective-C convention for "copy" methods and increases
the retain count of the Metal event object. The EGL API user is thus
responsible for ensuring to release the returned object to avoid memory
leaks.
Test: angle_end2end_tests --gtest_filter=EGLSyncTestMetalSharedEvent.*
Bug: angleproject:7561
Change-Id: I8c35b559014b85cb8c6a0e76ac2ab7891eed5da0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3881423
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Quyen Le <lehoangquyen@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>
|
|
2debd07d
|
2022-09-21T11:40:18
|
|
Automatically query status of features for tests
Now tests can skip based on what features exist, compared to what
features are explicitly asked for. For example, a test suite may
override-enable a (normally disabled) feature that depends on a hardware
capability. With this change, it can be skipped if said hardware
capability doesn't exist.
As a bonus, tests now correctly skip if the feature is overriden through
an environment variable. This change also cleans up
VulkanPerformanceCounterTest tests which did the same for a number of
specific features.
Bug: b/243398683
Change-Id: I84f026e3394eab56fd123e02bee72720c7ed94c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3909789
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
7d712c47
|
2022-09-08T09:42:10
|
|
Metal: ProvokingVertexHelper stop using a separate cmdbuffer
This simplifies the code. Without this you always need to be
aware that the provoking vertex helper's command buffer might
have commands in it that need to be committed before starting
other operations.
Bug: angleproject:7643
Change-Id: I1c73d451c12c268ecbdb6a1cd63a77c291949ef9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3884275
Commit-Queue: Gregg Tavares <gman@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kyle Piddington <kpiddington@apple.com>
|
|
094b49db
|
2022-09-19T10:13:28
|
|
Android Test Runner: Skip APK install if hash matches.
Bug: angleproject:7670
Change-Id: I984fe9377728e5a575fd04be2f5cb3ed1cdbafb5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3904425
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: 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>
|
|
8b2aff28
|
2022-09-12T10:27:28
|
|
Implement the ANGLE_shader_pixel_local_storage API
Implements the OpenGL ES API for ANGLE_shader_pixel_local_storage and
adds thorough validation and testing as outlined in the spec. This
feature is still implemented entirely in the frontend, but the extension
now works end-to-end with a passing test suite, and can be used
externally. Over time we can start gradually moving the implementation
into backends as appropriate.
Bug: angleproject:7279
Bug: angleproject:7647
Change-Id: I1c861a0fca96423be02e17bbe1fb7f57b99ea63f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3886462
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
d78f7d20
|
2022-09-14T16:25:52
|
|
GLES1: Enable PointAntiAlias and RescaleNormal tests
These tests are passing.
Bug: angleproject:3408
Change-Id: I9cc680235a31b93e455499e83d128b8122328726
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3896213
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
2f1f9500
|
2022-09-14T15:52:11
|
|
GLES1: Fix behavior with incomplete mipmap textures
GLES1 requires texturing to be disabled when a mipmap-enabled texture is
incomplete.
Bug: angleproject:3408
Change-Id: I2c3b0206282a71f9a54d77ecdf2c7e42c7175fe5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3896212
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@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>
|
|
69714184
|
2022-09-16T00:38:03
|
|
GLES1: Implement logic op through framebuffer fetch
Bug: angleproject:7654
Change-Id: Id5ee7aee8d38eb295b2fd9ff484f4755962c279a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3900513
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
9393fd54
|
2022-09-13T20:06:57
|
|
FrameCapture: Ignore GetActiveAttrib
Similar to how we skip glGetActiveUniform, we also need to skip
glGetActiveAttrib. Attribute active status varies based on the
underlying shader compiler. More aggresive stacks can find ways to
eliminate them. If the application asks about attributes above
GL_ACTIVE_ATTRIBUTES, a GL error is thrown, causing a trace to be
non-portable.
Tested with Eve Echoes and Monster Hunter Stories.
Also added an end2end test that showcases a way apps ask about
attributes, verified we can capture and replay it across multiple
vendors now.
Test: VertexAttributeTestES3.UnusedAttribsMEC
Bug: angleproject:7215
Bug: angleproject:7557
Bug: angleproject:7402
Change-Id: I3c655bcead0ddb1677f8e1d49cb7d3f3c6b4feba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3866041
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8581e5fa
|
2022-08-05T14:52:22
|
|
FrameCapture: Improve renderbuffer reset
Add support for recording calls to regenerate renderbuffers, and
track when renderbuffers are deleted.
Test: Monster Hunter Stories MEC
Bug: angleproject:7557
Bug: angleproject:4599
Change-Id: Ib32abaaf4b5f4767c5c9ede312a29e7f108bd93d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3815224
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
79c30913
|
2022-09-08T03:34:25
|
|
Add GLES 1.x lighting tests
These tests check pixel values produced by fixed
function lighting.
Test: angle_end2end_tests --gtest_filter="LightsTest.*"
Bug: angleproject:6201
Change-Id: I54ff5fd34089f71e7438167607de6f150aeb56bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3881463
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Constantine Shablya <constantine.shablya@collabora.com>
|
|
a89f678f
|
2022-06-16T13:59:16
|
|
EGL: Implement ANGLE_metal_shared_event_sync on metal
Implement creation of fence sync object taking an external
MTLSharedEvent and optional value to use when signaling completion of
prior commands.
Extended end2end test suite with metal shared event test cases.
Test: angle_end2end_tests --gtest_filter=EGLSyncTestMetalSharedEvent.*
Bug: angleproject:7561
Change-Id: I0e72b5417275a20a24e535670ceb995ecc87abcb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3865060
Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
f6a171d5
|
2022-09-20T16:05:20
|
|
GLES1: Fix Fog rendering
The spec requires that:
- The fog factor is clamped to [0, 1]
- The fog only affects RGB, and not alpha
Bug: angleproject:7598
Change-Id: Iaea2933b5ccfa79b7db0a3e74193b1c5c10f11e6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3907881
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
2796cbfd
|
2022-09-15T16:18:47
|
|
GLES1: Implement logic op through ANGLE_logic_op
Bug: angleproject:7654
Change-Id: I88c784d87c1cb7cb7e5ccf8f020203553513bbb3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899381
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c51ca1b7
|
2022-09-15T14:00:21
|
|
Infra: Run GLES1 conformance tests on Pixel 4 bots
Bug: angleproject:3408
Bug: angleproject:7676
Change-Id: I46ebfbef69a4eb300e6cdc964f1b3716a56df320
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899379
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
ba3b4515
|
2022-09-15T01:06:51
|
|
Vulkan: Implement GL_ANGLE_logic_op
Enabled if the logicOp device feature is available. According to
gpuinfo, it's pretty much universal except for ARM.
Bug: angleproject:7654
Change-Id: I4808b519fdd6273b2f8c1bb17f59517eb65bfe8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3898317
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|