- 16 Nov, 2018 3 commits
-
-
Jamie Madill authored
Bug: angleproject:2923 Change-Id: I2e961e18373cc1c317700f2f6b64a0b9bf32e4a2 Reviewed-on: https://chromium-review.googlesource.com/c/1340200Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This reverts commit d9ee8bf9. Reason for revert: Slightly regresses tests that have dirty objects. See https://chromeperf.appspot.com/report?sid=abdb797da7149beffa29dc8a0869c15d96794749eff50bcb36c07d85fe509096 Original change's description: > Minor inlining optimization to Context draw calls. > > Reduces draw call overhead by up to 3%. > > Bug: angleproject:2966 > Change-Id: Ie7ddb61b905fefe59a06a1528f0a3fde4accaf74 > Reviewed-on: https://chromium-review.googlesource.com/c/1333608 > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,geofflang@chromium.org,jmadill@chromium.org Change-Id: I6fdd34880a711ecc89d407ae90f3991584f65272 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:2966 Reviewed-on: https://chromium-review.googlesource.com/c/1340199Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Shahbaz Youssefi authored
PipelineDesc describes a Vertex-Fragment pipeline and PipelineCache (not to be confused with vk::PipelineCache) implements a cache of such pipeline objects. In preparation for Compute support, these data structures are prefixed with Graphics. Bug: angleproject:2959 Change-Id: I9181586fb946b787216ca0b2ad6340f90c3ab55f Reviewed-on: https://chromium-review.googlesource.com/c/1333971Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
- 15 Nov, 2018 7 commits
-
-
Jamie Madill authored
Reduces draw call overhead by up to 3%. Bug: angleproject:2966 Change-Id: Ie7ddb61b905fefe59a06a1528f0a3fde4accaf74 Reviewed-on: https://chromium-review.googlesource.com/c/1333608Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
Because the default framebuffer isn't tied to a specific context, its drawbuffer state vector was only of size 1. It is still valid to query up to GL_MAX_DRAW_BUFFERS through so a special case is added when the drawbuffer is larger than the state vector. BUG=angleproject:2965 Change-Id: Ib49570df67e59e93932a7e916fe72f2e71c29939 Reviewed-on: https://chromium-review.googlesource.com/c/1337453Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
This allows ANGLE's GL backend's renderer string to be parseable. BUG=882580 Change-Id: I834dc236b1b72edcbc5285bcca4a1962f95f490d Reviewed-on: https://chromium-review.googlesource.com/c/1337463Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Brandon Jones authored
Introduces a script to generate Blit11's BlitShaderType enum and shader mapping functions. Bug: angleproject:2870 Change-Id: I5b704f55bdde1706614a519ecb0ee3756f7799e0 Reviewed-on: https://chromium-review.googlesource.com/c/1273725Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
Refactors the gl::Texture class and a few related methods. Also reduces binary size by up to 4k. Bug: angleproject:2491 Change-Id: Ib9a69d7f507b0dce35abb17b90532f812bf43214 Reviewed-on: https://chromium-review.googlesource.com/c/1291845 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Jamie Madill authored
This change does a few things involving the way we run the perf tests: - Perf test runner can capture different metrics Useful for capturing the new "nanoSecPerIteration" metric. - Removes the "score" metric We'll move to the new time-based metrics. These new metrics are scaled correctly with iteration counts. - Runs three trials per perf test This gives more measurements per test. Each trial is approximately one second. First the perf tests set a fixed number of iterations after calibrating the number of steps that we can run in one second. After that the three trials are run. This should give more stable results. - Apply more CPU stabilization on Windows Use SetPriorityClass to apply more CPU priority. Also upgrade SetThreadPriority to the highest level. - Always build the Vulkan command buffer test This catches build regressions more easily. We still skip the test on non-Android platforms. Bug: angleproject:2923 Change-Id: I7da234c5af07775ba4a232bb8d65e0138ee7073f Reviewed-on: https://chromium-review.googlesource.com/c/1330262 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Frank Henigman authored
Replace a lot of code with one function that can do all the tests and do them with any divisor and number of instances. BUG=angleproject:2672 Change-Id: I4f7f59d17dad234c524e485d9baa3117fcbb57bd Reviewed-on: https://chromium-review.googlesource.com/c/1330309 Commit-Queue: Frank Henigman <fjhenigman@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
- 14 Nov, 2018 5 commits
-
-
Geoff Lang authored
GL_MAX_SERVER_WAIT_TIMEOUT is only allowed to be positive, ensure that with a std::max. BUG=angleproject:2961 Change-Id: I8dd66df24d35c8ae81038d6d9cd0bad0d51f1a80 Reviewed-on: https://chromium-review.googlesource.com/c/1335889Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Shahbaz Youssefi authored
Bug: angleproject:2901 Change-Id: If05b4a5270ac1c0bebc3fc854b2aff710e554ce1 Reviewed-on: https://chromium-review.googlesource.com/c/1325730 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Shahbaz Youssefi authored
This partially reverts commit 905ee082 due to regression caused on startup time. Instead of calling finish before destroying the context, the objects in the Vulkan backend are `release()`ed instead of `destroy()`ed, so they will be kept alive for the duration of current work. Bug: 904846 Change-Id: Ia774470666c4c0d4c1ddc348f685d621243de204 Reviewed-on: https://chromium-review.googlesource.com/c/1333969Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
Shahbaz Youssefi authored
This makes ES3_VULKAN() pass the instantiability test, allowing it to be specified in end2end tests. Bug: angleproject:2950 Change-Id: Ife70a22fb8193f9eebe64bec491a24b47bc76939 Reviewed-on: https://chromium-review.googlesource.com/c/1325729Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
Jamie Madill authored
These were missing a few suppressions for prior bugs. Going to run this config on the CQ. Bug: chromium:822310 Change-Id: I758d8823ff8b1ab347212426d73c6dad1bb6de39 Reviewed-on: https://chromium-review.googlesource.com/c/1334431 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 13 Nov, 2018 4 commits
-
-
Geoff Lang authored
SurfaceD3D always instantiates a NativeWindow object even for pbuffers. A null window pointer now creates a CompositorNativeWindow11 instead of a NativeWindow11Win32 which instantiates an RoHelper in the constructor. This is expensive for some use cases that create a pbuffer surface every frame. BUG=angleproject:2956 Change-Id: If43930d4960c2510b6b96291aab971e3f3abf665 Reviewed-on: https://chromium-review.googlesource.com/c/1333967Reviewed-by:
James Clarke <james.clarke@microsoft.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Yuly Novikov authored
Methods receive VkDevice instead of Context and return VkResult instead of angle::Result now. Bug: angleproject:2657 Change-Id: I3eca8692ad0b3b6e96e31fd433ed14e04384990e Reviewed-on: https://chromium-review.googlesource.com/c/1330105Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
Shahbaz Youssefi authored
Used a script to find test files that have more ES2_OPENGL() invocations than ES2_VULKAN(), and added ES2_VULKAN() to those. There may be false negatives. Bug: angleproject:1578 Change-Id: I938eb3571c909879e9276b355a9f1d324880f99a Reviewed-on: https://chromium-review.googlesource.com/c/1324350Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
jchen10 authored
This option is used to initialize shared variables to zero at the beginning of shader execution to avoid compute shaders being able to read undefined values that could be coming from another webpage or application. It's implemented by declaring variables with initial value for HLSL. For GLSL, it's not allowed to use declaraction initializer for shared variables, so we need to explicitly assign them to zero at the beginning of main(). This implementation is only for HLSL. Bug: chromium:898030 Change-Id: Ic5906500bf4a35cd9a071923f82f32c5e2991be3 Reviewed-on: https://chromium-review.googlesource.com/c/1330310 Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 12 Nov, 2018 7 commits
-
-
Tim Van Patten authored
dEQP-EGL.functional.query_surface.simple.pbuffer#rgb888_depth_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb888_depth_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb888_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb888_no_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb565_depth_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb565_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgb565_no_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgba8888_no_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgba8888_depth_no_stencil dEQP-EGL.functional.query_surface.simple.pbuffer#rgba8888_depth_stencil dEQP-EGL.functional.negative_api#choose_config dEQP-EGL.functional.negative_api#swap_interval Bug: angleproject:2546 Change-Id: Ie80e3ee3c65f330d2030b4d7da59cb964e4ea0a5 Reviewed-on: https://chromium-review.googlesource.com/c/1313233 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Pick up the correct config after refs.cfg was added. Bug: 833848 Change-Id: I472f2ca56598ef2ddf030b28ef87f3f52829b610 Reviewed-on: https://chromium-review.googlesource.com/c/1332530Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This is necessary for CQ/Luci operation. Bug: 833848 Change-Id: Ib42216d3a2ee58e819f42fc9535fa91797f55200 Reviewed-on: https://chromium-review.googlesource.com/c/1332529Reviewed-by:
Andrii Shyshkalov <tandrii@chromium.org>
-
Jamie Madill authored
This should trigger luci-config. Also updates OWNERS which were missed from the last commit. Tbr: tandrii@chromium.org Bug: chromium:833848 Change-Id: I23e1583d760acd4addd10f8b224518c702d8745f Reviewed-on: https://chromium-review.googlesource.com/c/1332528Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Also adds some documentation and updates OWNERS. Bug: 833848 Change-Id: I1e9adf9b84a776efceb5a529a73310f515e50c70 Reviewed-on: https://chromium-review.googlesource.com/c/1330681Reviewed-by:
Andrii Shyshkalov <tandrii@chromium.org>
-
Jamie Madill authored
This switches from using resource barriers for buffers to using global barriers. This matches the general advised best practice. It also allows us to combine multiple barriers into one. On a draw we might combine all the vertex and index barriers into a single barrier call. We implement this using a bit of extra state tracking in BufferHelper. Bug: angleproject:2828 Change-Id: I196b368804ff50e60d085687a643e5566ba1c5b6 Reviewed-on: https://chromium-review.googlesource.com/c/1309977 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org>
-
Qin Jiajia authored
This patch implements read/write vector data in matrix or matrix data directly in a shader storage block with row_major qualifier. Bug: angleproject:1951 Change-Id: Id7847e2245b09414709361412a95c4dd84b9ee97 Reviewed-on: https://chromium-review.googlesource.com/c/1304019Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
-
- 09 Nov, 2018 3 commits
-
-
Shahbaz Youssefi authored
These tests make sure that a depth- or stencil-only format that is emulated with a depth/stencil one does not affect clear/draw in such a way that it would expose the hidden aspect. By nature of the emulation, it's not trivial to read back the hidden aspect. This test simply makes sure the hidden aspect doesn't affect rendering, but is not a definitive test of correctness. Bug: angleproject:2815 Change-Id: I158937faa019487f6fa08154406c152753a1934b Reviewed-on: https://chromium-review.googlesource.com/c/1314188 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org>
-
Qin Jiajia authored
Bug: angleproject:1951 Change-Id: I5e92b75a59a3ab24a34b827ae6f968961b8bea49 Reviewed-on: https://chromium-review.googlesource.com/c/1317376Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
-
Yizhou Jiang authored
Update maxIntegerSamples, maxDepthTextureSamples and maxColorTextureSamples if the extension is enabled on ES 3.0. TEST=TextureMultisampleTest.* TEST=NegativeTextureMultisampleTest.Negtive* BUG=angleproject:2275 Change-Id: I8c215f990ff5d93611b1bc89de9a43f3d392e8d4 Reviewed-on: https://chromium-review.googlesource.com/c/1319251Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jiajia Qin <jiajia.qin@intel.com> Commit-Queue: Yizhou Jiang <yizhou.jiang@intel.com>
-
- 08 Nov, 2018 3 commits
-
-
Shahbaz Youssefi authored
S8_UINT and D24_UNORM_X8_UINT are the only formats currently that are single-aspect and are possibly emulated with a packed depth-stencil format if it's not supported. A flag to FeaturesVk has been added as a way to force this behavior for the sake of testing. This test is added to ensure the correct clear algorithm is used for this case. Additionally, this case is detected and the other aspect is forcefully cleared to 0 whenever the original aspect is cleared. Bug: angleproject:2815 Change-Id: Ief3039d66bbf46468213b9e3224f7cc7541c3a2e Reviewed-on: https://chromium-review.googlesource.com/c/1312453 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Qin Jiajia authored
Bug: angleproject:1951 Change-Id: I6353e6ed10a8b441bfbebc10fa6a07cde1cae7d8 Reviewed-on: https://chromium-review.googlesource.com/c/1317377Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
-
Shahbaz Youssefi authored
In Context::onDestroy(), e7b3fe21 had moved surface deletion first which down the line caused RendererVk::finish() to be called. bf7b95db however made surface deletion unnecessary, which means finish was never called. This commit adds an explicit finish in Context::onDestroy(). In truth, the wait is only necessary until all command buffers submitted for this particular context have finished. This optimization is deferred to a possible future work. Bug: angleproject:2811 Change-Id: I56e6c88d3b4a6ec73f70d80d7775a0c85be651ea Reviewed-on: https://chromium-review.googlesource.com/c/1302838 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
- 07 Nov, 2018 1 commit
-
-
Jamie Madill authored
We were not respecting the terms of the license that this piece of code requests for redistribution. I noticed this when investigating adding a new third_party library and wanted to display its license in about:credits. This change adds a special file that the licnese check in Chrome uses and fixes the naming of the README for this script. Bug: None Change-Id: Ib33e9fe4a4e5b2968780bb6d8d6b39119b0361a7 Reviewed-on: https://chromium-review.googlesource.com/c/1323855Reviewed-by:
Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 06 Nov, 2018 3 commits
-
-
Austin Eng authored
This patch adds entrypoints glMultiDrawArraysANGLE, glMultiDrawElementsANGLE, glMultiDrawArraysInstancedANGLE, annd glMultiDrawElementsInstancedANGLE Bug: chromium:890539 Change-Id: Ic9c374c53892460f44ca6e73a253b78473ac2dff Reviewed-on: https://chromium-review.googlesource.com/c/1282268Reviewed-by:
Kai Ninomiya <kainino@chromium.org> Commit-Queue: Austin Eng <enga@chromium.org>
-
Jamie Madill authored
This reduces the size of the pipeline cache descriptor under 256 bytes. Further improves the speed of cache query. Has the minor cost of needing more state application during a new command buffer or render pass. Bug: angleproject:2522 Change-Id: I3d71e457a36084ac4748d04fe3c9bab4caad503c Reviewed-on: https://chromium-review.googlesource.com/c/1316888 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org>
-
Jamie Madill authored
This packs the desc into 288 bytes. Down from over 400. The hashing and memcmp functions are sped up considerably. Improves performance in the VulkanPipelineCachePerf test by 50% and also improves performance in the state changing draw call test by 20%. Bug: angleproject:2522 Change-Id: I72ed191a93721b875684f647f806c09be4e66821 Reviewed-on: https://chromium-review.googlesource.com/c/1308460Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 05 Nov, 2018 1 commit
-
-
Shahbaz Youssefi authored
The test for whether 0-width or 0-height is not given was doing width != 0 || height != 0 which mistakenly used || instead of &&. Bug: angleproject:2910 Change-Id: Iaa41edffcfe1f8553e8fbefb9bc3b12a7f33a5a6 Reviewed-on: https://chromium-review.googlesource.com/c/1316028Reviewed-by:Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
-
- 02 Nov, 2018 3 commits
-
-
Yuly Novikov authored
Since it's flaky Bug: angleproject:2945 Change-Id: Iac7b465ae1ebefbde3b23267c6974209de664362 Reviewed-on: https://chromium-review.googlesource.com/c/1315836Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
Geoff Lang authored
Change the data type of buffer memory sizes to 64 bit integers. BUG=892288 Change-Id: I10e07b86f2ccc0cb61c8d7ee0d439e00d5eb8d3a Reviewed-on: https://chromium-review.googlesource.com/c/1312244Reviewed-by:
Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Shahbaz Youssefi authored
Bug: angleproject:2923 Change-Id: I35fee6303f07c7b3a931f876a8d9d4ba54c91630 Reviewed-on: https://chromium-review.googlesource.com/c/1315607 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-