scripts/perf_test_runner.py


Log

Author Commit Date CI Message
Jamie Madill cc1dc5ee 2018-08-07T15:27:49 Add a perf test for draw calls with texture changes. This perf test highlights the performance hotspots with State::syncProgramTextures. Also includes a fix to the perf test runner script. Bug: angleproject:2763 Change-Id: I69ffa0cc0d5e023944495b7a1c844770a54f7ddc Reviewed-on: https://chromium-review.googlesource.com/1166041 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Frank Henigman dda048cd 2018-01-11T20:09:09 Make scripts executable by python2. Add #!/usr/bin/python2 and the executable permission bit to all scripts where missing. BUG=angleproject:2209 Change-Id: Ib33017c17e579c371b89bbfbdb7136b870027dc5 Reviewed-on: https://chromium-review.googlesource.com/862987 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Jeff Gilbert 1b605ee3 2017-10-30T18:41:46 Use "python2" instead of undifferentiated "python". BUG=angleproject:2209 Change-Id: I5a7a667d90160fe68a9dcf7bff5fc2dc62795270 Reviewed-on: https://chromium-review.googlesource.com/745861 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill fa08cae7 2017-08-31T14:39:13 Make perf_test_runner Python 2.7 and 3 compatible. BUG=None Change-Id: I915c99f21dc879a8e63955cd6a3dd892d05bbf5f Reviewed-on: https://chromium-review.googlesource.com/646590 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 41013bdd 2017-08-24T14:07:33 Perf script runner Python 3 compatibility. No code changes in ANGLE, just a perf test runner fix. BUG=angleproject:1155 Change-Id: If49c58da26f9224e09f292689b2d74f7e129a844 Reviewed-on: https://chromium-review.googlesource.com/633786 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shao 29e9035d 2017-05-05T16:41:29 Add Linux and MacOS support to perf_test_runner.py This patch enables perf_test_runner.py to run on Linux and MacOS. BUG=angleproject:2029 Change-Id: Ia7176a3f5fed0245ab72d5def1199623c4fb4fe2 Reviewed-on: https://chromium-review.googlesource.com/497648 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Olli Etuaho 1bf91116 2017-02-06T13:46:30 Add alternative MSVS build path to perf_test_runner If src/tests/tests.sln is built instead of gyp/ANGLE.sln, the test executable is placed under src/tests/Release*. TEST=perf_test_runner on Windows Change-Id: I72ce55e2caa8270bef089c073840d5e2d6caa14d Reviewed-on: https://chromium-review.googlesource.com/438348 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1079bb2e 2016-11-17T10:00:39 Fix up perf test runner script. The missing check was a bit buggy, and the paths were not updated to the new 'gyp' folder instead of 'build'. BUG=angleproject:1569 Change-Id: I10408252851e90b79e306c8aea175ebe6a931b61 Reviewed-on: https://chromium-review.googlesource.com/412320 Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill e4857c7d 2016-04-21T14:13:53 Buffer11: Use adaptive threshold for releasing system memory. The hard-coded threshold of five uses before a release was regressing the Oort online benchmark, which seems to use an index buffer many times, then change to a different range of indices, which would need to check the system memory for index range validation. Also add a performance regression test, and an update to the perf runner script which checks for the most recent binary among the search directories. BUG=594066 Change-Id: Id09cc32fd00bff1c72cbe9b6fb7c210fd047a551 Reviewed-on: https://chromium-review.googlesource.com/339271 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1fbc59fe 2016-02-24T15:25:51 D3D11: Enable dirty bits for Framebuffer11. This patch works using a notification scheme - whenever a Texture or Renderbuffer changes in such a way as to recreate its RenderTarget, we pass a signal to the Framebuffer to invalidate some internal state. Everything is entirely tracked in the Renderer11 layer, and the GL layer is left untouched. A RenderTarget11 now tracks points to which it is bound, and the Framebuffer11 is mostly responsible for managing those links. The three locations where we notify a Framebuffer when its bound RenderTargets might be dirty are: 1) RenderTarget11::~RenderTarget 2) EGLImageD3D::copyToLocalRendertarget 3) TextureStorage11_2D::useLevelZeroWorkaroundTexture This patch gives about a 10% score increase in the D3D11 draw call benchmark on my system. BUG=angleproject:1260 Change-Id: Ide38aeadff4a2681bf5bd685e8ca3c9e2612a380 Reviewed-on: https://chromium-review.googlesource.com/327255 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Olli Etuaho 967cb3b2 2015-12-17T18:37:16 Fix perf_test_runner printing wrong test name The previous version of the script would always print the default test name even if user specified a different one. BUG=angleproject:596 Change-Id: I43a07e81b49f69c7c372b46bd9494d6fe440b968 Reviewed-on: https://chromium-review.googlesource.com/319091 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho d39f8930 2015-12-17T17:10:02 Improve perf_test_runner script 1) Make it possible to run the script from any working directory 2) Abort the run if angle_perftests is executing multiple test cases 3) Print some information on which exe and test is running 4) Print the test runner output in case there was an error BUG=angleproject:596 Change-Id: If30c2455dc39b0a776df03e6c1dda2ced90d73ba Reviewed-on: https://chromium-review.googlesource.com/319090 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Jamie Madill d6dfe67d 2015-11-20T12:18:12 Add python perftests test runner. This test runner can run the tests in an infinite loop, giving much lower variance. It also automatically parses the output from several runs and prints out the mean and standard deviation of the population. BUG=None Change-Id: Ic9f6f7d3158e93949a8e17c99ea1e3856eb34076 Reviewed-on: https://chromium-review.googlesource.com/312262 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>