- 07 Dec, 2016 2 commits
-
-
Marek Olšák authored
Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 18 Oct, 2016 2 commits
-
-
Marek Olšák authored
Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 05 Oct, 2016 1 commit
-
-
Samuel Pitoiset authored
shaderdb runner fails at parsing shader_test files when the first line inside the require block is not 'GLSL >= x.y'. This just skips the GL version requirement which is actually unused and allows to compile +164 shaders from piglit.
-
- 13 Sep, 2016 1 commit
-
-
Samuel Pitoiset authored
When multiple GPUs are plugged in the same box, we might want to use /dev/dri/renderD129 without updating/compiling the code. This doesn't change the existing behaviour. Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 18 Aug, 2016 1 commit
-
-
Marek Olšák authored
the text string was not zero-terminated. Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
- 15 Aug, 2016 1 commit
-
-
Kenneth Graunke authored
We'd fill out shader_test[32767], increment shader_test_length to 32768, then compare 32768 < 32768 and not bother to realloc. This resulted in an invalid memory write. We'd realloc one entry later. Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
- 27 Jul, 2016 2 commits
-
-
Kenneth Graunke authored
There are a couple cases where a single shader might happen: - compute shaders (only one stage, no inputs and outputs; separable shouldn't matter) - vertex shaders with transform feedback (we want to retain outputs, but transform feedback varyings are specified via the API, not the shader - setting SSO fixes this) - old shader_test files captured before we started adding "SSO ENABLED". In any case, it seems harmless or beneficial to enable SSO for all .shader_test files containing a single shader. Based on a patch by Marek. v2: Ignore VP/FP shaders. Acked-by:
Ilia Mirkin <imirkin@alum.mit.edu> Acked-by:
Timothy Arceri <timothy.arceri@collabora.com>
-
Kenneth Graunke authored
With this patch, if a .shader_test file contains [require] ... SSO ENABLED then we'll use glCreateShaderProgramv to create each shader, so that they're compiled as separate shader objects. This prevents the linker from removing unused inputs and outputs. Drivers may also choose to lay out interfaces of SSO programs differently, resulting in different code. v2: - Actually initialize use_separate_shader_objects - Fix memcmp length parameter (thanks to Matt) v3: - Search for "SSO ENABLED" instead of "GL_ARB_separate_shader_objects", to match what Timothy did in shader_runner. - Use GL_PROGRAM_SEPARABLE (suggested by Tapani). This allows multi-stage SSO programs to optimize internal interfaces, while still making the end-stages separable. v4: - Go back to glCreateShaderProgramv. Timothy pointed out that Piglit's shader_runner compiles each shader separately, and wouldn't optimize interfaces between programs. I want to preserve the same semantics between both .shader_test file processors. Today, it looks like multi-stage SSO programs are pretty uncommon (typically every stage is separable), so we'll punt on solving that until later. Acked-by:
Ilia Mirkin <imirkin@alum.mit.edu> Acked-by:
Timothy Arceri <timothy.arceri@collabora.com>
-
- 25 Jul, 2016 1 commit
-
-
Matt Turner authored
Ken imported more shaders, and we crossed the 32k boundary where we need to realloc, uncovering this bug.
-
- 22 Jul, 2016 4 commits
-
-
Marek Olšák authored
We can remove the old reporting if people are OK with that. The old reporting has a bug that it reports 0->N changes as 0 % in several places. (should be inf %) The new reporting shows: - VGPR spilling shaders and apps (from the second file only) - the same for SGPRs - worst regressions (from the comparison of both files) - percentage deltas at the end .. and colors!!! Example: WORST VGPR SPILLS (not deltas) VGPRs SpillVGPR ScratchVGPR shaders/private/f1-2015/18.shader_test [0] 32 0 516 shaders/private/bioshock-infinite/256.shader_test [0] 64 176 180 shaders/private/ue4_lightroom_interior_day/42.shader_test [0] 28 0 76 shaders/private/dirt-showdown/676.shader_test [0] 68 49 72 shaders/private/f1-2015/1102.shader_test [0] 52 0 72 shaders/private/bioshock-infinite/814.shader_test [0] 64 57 60 shaders/private/ue4_lightroom_interior_day/33.shader_test [0] 24 0 52 shaders/private/ue4_lightroom_interior_day/37.shader_test [0] 24 0 52 shaders/private/bioshock-infinite/698.shader_test [0] 16 0 36 shaders/private/dirt-showdown/406.shader_test [0] 64 33 36 VGPR SPILLING APPS Shaders SpillVGPR ScratchVGPR alien_isolation 2938 12 16 bioshock-infinite 1769 233 720 dirt-showdown 541 82 108 f1-2015 774 0 624 tesseract 430 2 4 ue4_lightroom_inter.. 74 0 180 WORST SGPR SPILLS (not deltas) SGPRs SpillSGPR shaders/private/talos_principle/1942.shader_test [1] 80 168 shaders/private/ue4_effects_cave/289.shader_test [0] 80 168 shaders/private/talos_principle/2052.shader_test [1] 80 161 shaders/private/serious_sam_3_bfe/1081.shader_test [1] 80 148 shaders/private/borderlands2/5330.shader_test [0] 80 137 shaders/private/talos_principle/2040.shader_test [1] 80 133 shaders/private/talos_principle/2041.shader_test [1] 80 133 shaders/private/talos_principle/2036.shader_test [1] 80 133 shaders/private/talos_principle/2035.shader_test [1] 80 133 shaders/private/borderlands2/5548.shader_test [0] 80 131 SGPR SPILLING APPS Shaders SpillSGPR AvgPerSh alien_isolation 2938 23198 7.9 batman_arkham_origins 589 30 0.1 bioshock-infinite 1769 84 0.0 borderlands2 3968 6449 1.6 brutal-legend 338 647 1.9 civilization_beyond.. 116 213 1.8 counter_strike_glob.. 1142 4338 3.8 dirt-showdown 541 1071 2.0 dolphin 22 62 2.8 dota2 1747 338 0.2 europa_universalis_4 76 44 0.6 f1-2015 774 6245 8.1 left_4_dead_2 1762 13778 7.8 metro_2033_redux 2670 547 0.2 nexuiz 80 111 1.4 portal 474 2211 4.7 serious_sam_3_bfe 392 6626 16.9 talos_principle 324 4539 14.0 team_fortress_2 808 4823 6.0 thea 172 41 0.2 ue4_effects_cave 299 494 1.7 ue4_elemental 586 355 0.6 ue4_lightroom_inter.. 74 29 0.4 ue4_realistic_rende.. 92 60 0.7 unigine_heaven 322 174 0.5 unigine_sanctuary 264 400 1.5 unigine_tropics 210 328 1.6 unigine_valley 278 427 1.5 unity 72 45 0.6 warsow 176 13 0.1 witcher2 1040 2 0.0 WORST REGRESSIONS - VGPRS Before After Delta Percentage shaders/private/metro_2033_redux/1082.shader_test [0] 136 180 44 32.35 % shaders/private/witcher2/20.shader_test [0] 48 64 16 33.33 % shaders/private/witcher2/1097.shader_test [0] 60 76 16 26.67 % shaders/private/unigine_valley/298.shader_test [0] 44 56 12 27.27 % shaders/private/witcher2/158.shader_test [0] 52 64 12 23.08 % shaders/private/witcher2/138.shader_test [0] 60 72 12 20.00 % shaders/private/witcher2/136.shader_test [0] 60 72 12 20.00 % shaders/private/witcher2/187.shader_test [0] 56 68 12 21.43 % shaders/private/left_4_dead_2/1567.shader_test [0] 32 40 8 25.00 % shaders/private/team_fortress_2/4662.shader_test [0] 20 28 8 40.00 % WORST REGRESSIONS - Spilled SGPRs Before After Delta Percentage shaders/private/serious_sam_3_bfe/883.shader_test [0] 14 49 35 250.00 % shaders/private/talos_principle/1942.shader_test [0] 14 49 35 250.00 % shaders/private/serious_sam_3_bfe/1081.shader_test [0] 14 49 35 250.00 % shaders/private/talos_principle/1941.shader_test [0] 14 49 35 250.00 % shaders/private/talos_principle/2052.shader_test [0] 9 42 33 366.67 % shaders/private/serious_sam_3_bfe/869.shader_test [0] 35 67 32 91.43 % shaders/private/talos_principle/1986.shader_test [0] 45 76 31 68.89 % shaders/private/left_4_dead_2/3764.shader_test [0] 15 46 31 206.67 % shaders/private/talos_principle/2008.shader_test [0] 45 76 31 68.89 % shaders/private/talos_principle/2035.shader_test [0] 45 76 31 68.89 % WORST REGRESSIONS - Spilled VGPRs Before After Delta Percentage shaders/tesseract/506.shader_test [0] 0 2 2 inf % WORST REGRESSIONS - Scratch VGPRs Before After Delta Percentage shaders/tesseract/506.shader_test [0] 0 4 4 inf % WORST REGRESSIONS - Code Size Before After Delta Percentage shaders/private/talos_principle/1942.shader_test [0] 3116 3808 692 22.21 % shaders/private/talos_principle/1941.shader_test [0] 3116 3808 692 22.21 % shaders/private/serious_sam_3_bfe/883.shader_test [0] 3108 3792 684 22.01 % shaders/private/serious_sam_3_bfe/1081.shader_test [0] 3108 3792 684 22.01 % shaders/private/serious_sam_3_bfe/869.shader_test [0] 4124 4744 620 15.03 % shaders/private/talos_principle/2052.shader_test [0] 2904 3512 608 20.94 % shaders/private/left_4_dead_2/3764.shader_test [0] 3344 3928 584 17.46 % shaders/private/left_4_dead_2/1260.shader_test [0] 3344 3928 584 17.46 % shaders/private/talos_principle/2061.shader_test [0] 5312 5892 580 10.92 % shaders/private/talos_principle/1994.shader_test [0] 5312 5892 580 10.92 % PERCENTAGE DELTAS Shaders SGPRs VGPRs SpillSGPR SpillVGPR Scratch CodeSize MaxWaves Waits (unknown) 4 . . . . . -0.02 % . . 0ad 6 . . . . . . . . alien_isolation 2938 . -5.35 % -0.77 % . . 0.21 % 3.79 % . anholt 10 . . . . . . . . batman_arkham_origins 589 . -4.77 % -96.56 % . . -1.59 % 4.48 % . bioshock-infinite 1769 . -1.41 % -86.60 % . . -0.59 % 0.94 % . borderlands2 3968 . -2.20 % -36.23 % . . -1.07 % 1.15 % . brutal-legend 338 . -0.90 % -6.50 % . . -0.10 % 0.43 % . civilization_beyond.. 116 . -0.97 % 0.47 % . . 0.04 % 0.46 % . counter_strike_glob.. 1142 . -2.00 % -7.58 % . . -0.43 % 0.06 % . dirt-showdown 541 . -1.37 % -22.95 % . -3.57 % -0.79 % 1.03 % . dolphin 22 . . . . . 0.23 % . . dota2 1747 . -0.07 % . . . 0.03 % 0.04 % . europa_universalis_4 76 . -0.46 % . . . 0.09 % . . f1-2015 774 . -2.11 % -1.51 % . . -0.02 % 1.05 % . furmark-0.7.0 4 . . . . . 0.16 % . . gimark-0.7.0 10 . . . . . 0.18 % . . glamor 16 . . . . . -0.91 % . . humus-celshading 4 . . . . . 0.42 % . . humus-domino 6 . . . . . . . . humus-dynamicbranching 24 . -0.70 % . . . 0.42 % 0.45 % . humus-hdr 10 . . . . . . . . humus-portals 2 . . . . . . . . humus-volumetricfog.. 6 . . . . . . . . left_4_dead_2 1762 . -0.62 % 10.13 % . . 0.72 % -0.14 % . metro_2033_redux 2670 . -4.73 % -12.20 % . . 0.20 % 1.52 % . nexuiz 80 . . . . . . . . pixmark-julia-fp32 2 . . . . . . . . pixmark-julia-fp64 2 . . . . . . . . pixmark-piano-0.7.0 2 . . . . . -0.85 % . . pixmark-volplosion-.. 2 . . . . . . . . plot3d-0.7.0 8 . . . . . . . . portal 474 . -2.05 % 206.23 % . . 1.69 % 0.58 % . sauerbraten 7 . . . . . 0.62 % . . serious_sam_3_bfe 392 . -8.64 % 0.93 % . . -1.79 % 4.05 % . supertuxkart 4 . . . . . . . . talos_principle 324 . -7.67 % -10.07 % . . -1.39 % 2.92 % . team_fortress_2 808 . -2.62 % 276.21 % . . 2.26 % 1.24 % . tesseract 430 . -1.31 % -100.00 % inf % inf % -0.12 % 0.75 % . tessmark-0.7.0 6 . . . . . 0.09 % . . thea 172 . -1.98 % . . . 0.34 % 0.91 % . ue4_effects_cave 299 . -1.87 % -8.52 % . . -0.18 % 1.87 % . ue4_elemental 586 . -4.67 % -42.56 % . . -1.17 % 4.57 % . ue4_lightroom_inter.. 74 . -1.57 % -12.12 % . . 0.12 % 1.00 % . ue4_realistic_rende.. 92 . -0.27 % . . . 0.11 % . . unigine_heaven 322 . -0.87 % -36.73 % . . -0.46 % 0.69 % . unigine_sanctuary 264 . -1.57 % -7.41 % . . 0.01 % 0.96 % . unigine_tropics 210 . -1.22 % -10.87 % . . -0.18 % 0.88 % . unigine_valley 278 . -2.11 % -27.87 % . . -0.46 % 1.39 % . unity 72 . -1.74 % -15.09 % . . -0.54 % 0.93 % . warsow 176 . -0.10 % . . . . 0.06 % . warzone2100 4 . -4.35 % . . . 0.67 % 2.63 % . witcher2 1040 . -5.93 % -93.55 % . . -0.59 % 2.54 % . xcom_enemy_within 1236 . -4.81 % -100.00 % . . -0.03 % 3.22 % . yofrankie 82 . -0.41 % . . . 0.80 % 0.14 % . ------------------------------------------------------------------------------------------------------------ All affected 7287 . -8.94 % -5.18 % 0.61 % . -0.36 % 6.21 % . ------------------------------------------------------------------------------------------------------------ Total 26002 . -3.09 % -1.82 % 0.61 % . -0.16 % 1.55 % . Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
not all places are fixed Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Scratch VGPRs = spilled VGPRs + private memory per thread + an incorrectly-counted multiple of spilled SGPRs Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 11 Jul, 2016 3 commits
-
-
Marek Olšák authored
Acked-by:
Kenneth Graunke <kenneth@whitecape.org> Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Use MESA_SHADER_CAPTURE_PATH instead. v2: update README Acked-by: Kenneth Graunke <kenneth@whitecape.org> (v1) Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> (v1)
-
Marek Olšák authored
$ fdupes -rdN . [+] ./yofrankie/129.shader_test [-] ./yofrankie/126.shader_test [+] ./yofrankie/123.shader_test [-] ./yofrankie/132.shader_test [+] ./humus-volumetricfogging2/9.shader_test [-] ./humus-celshading/9.shader_test [+] ./nexuiz/6.shader_test [-] ./humus-volumetricfogging2/12.shader_test [-] ./humus-domino/12.shader_test [-] ./yofrankie/6.shader_test [-] ./humus-celshading/12.shader_test Acked-by:
Kenneth Graunke <kenneth@whitecape.org> Acked-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 02 Jul, 2016 1 commit
-
-
Marek Olšák authored
This can be overriden by setting R600_DEBUG manually, which is merged with the settings from run.c. Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 30 Jun, 2016 1 commit
-
-
Marek Olšák authored
Reviewed-by:
Ilia Mirkin <imirkin@alum.mit.edu>
-
- 29 Apr, 2016 1 commit
-
-
Matt Turner authored
-
- 25 Apr, 2016 1 commit
-
-
Kenneth Graunke authored
Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
- 04 Mar, 2016 1 commit
-
-
Matt Turner authored
-
- 26 Jan, 2016 3 commits
-
-
Marek Olšák authored
Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
Marek Olšák authored
Reviewed-by:
Nicolai Hähnle <nicolai.haehnle@amd.com>
-
- 09 Jan, 2016 2 commits
-
-
Kenneth Graunke authored
Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
Kenneth Graunke authored
Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
- 06 Jan, 2016 4 commits
-
-
Kenneth Graunke authored
Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
Kenneth Graunke authored
VS/GS/FS match the regex '.S' but TCS/TES do not. Just match \S+. Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
Kenneth Graunke authored
This will prevent more python2isms from creeping in. Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
Kenneth Graunke authored
I ported this to Python 3 back in 2012. It's not supposed to be run with Python 2. Reviewed-by:
Matt Turner <mattst88@gmail.com>
-
- 05 Jan, 2016 4 commits
-
-
Nicolai Hähnle authored
Acked-by:
Tom Stellard <thomas.stellard@amd.com>
-
Nicolai Hähnle authored
Acked-by:
Tom Stellard <thomas.stellard@amd.com>
-
Nicolai Hähnle authored
No need to report details of those errors, but complain when errors are encountered so they aren't ignored. Acked-by:
Tom Stellard <thomas.stellard@amd.com>
-
Nicolai Hähnle authored
Benefit from recent changes to Mesa master which allows correct reporting in multi-threaded runs, and generally more robust reporting when comparing different runs, e.g. that differ in the set of tests that were run. Parsing also becomes much faster because we (a) do not recompile regexes in the inner iterations, (b) have fewer lines to parse in total, and (c) are more selective about when we try to match which regular expression. While we're at it, parse out S_NOP instructions from the disassembly and report wait states. Acked-by:
Tom Stellard <thomas.stellard@amd.com>
-
- 02 Dec, 2015 4 commits
-
-
Rob Clark authored
Simplify the instructions a bit by setting all the potentially needed environment variables in run.c itself. Made very trivially more complex by the fact that all of the gallium drivers are using u_debug stuff, so one env var contains potentially multiple flags. We don't want to clobber any other flags that are set so we simply append. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org>
-
Ilia Mirkin authored
-
Matt Turner authored
-
Connor Abbott authored
Now that we have three separate things we want to measure (instructions, cycles, and loops), it's impractical to keep adding special code for changes in each thing. Instead, for each program in before and after we store a table of measurement -> value, and when reporting we loop over each measurement and report helped/hurt before reporting the gained/lost programs. v2: - Swap loop count and cycle count to be compatible with older shader-db. - Fix indentation. - Report summary information (hurt/helped) last to make it easier to find. - Squash in second commit to avoid duplicating the list of measurements due to the above. Acked-by:
Matt Turner <mattst88@gmail.com> Signed-off-by:
Connor Abbott <cwabbott0@gmail.com>
-