summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-10-02report.py: add an option for which measurements to reporti965-schedConnor Abbott1-1/+6
2015-10-02report.py: rework and update for cycle infoConnor Abbott1-73/+67
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.
2015-10-01run.py: Look for shader_runner, not glslparsertest.HEADmasterMatt Turner1-1/+1
2015-10-01report.py: Report loop changes separately.Matt Turner1-11/+32
Previously, if the number of loops changed (and the instruction count changed wildly) we'd happily consider those differences in the totals, even though they're not meaningful. Based on code by Abdiel Janulgue <abdiel.janulgue@linux.intel.com>.
2015-07-30si-report: Fix algorithm for determing difference in shader statsTom Stellard1-1/+7
2015-05-26run.py: Set PIGLIT_PLATFORM=gbm.Matt Turner1-0/+1
Lets me use run.py without extra arguments without X.
2015-05-26run.c: Pass appropriate program type to glBindProgramARB.Matt Turner1-1/+1
2015-05-19run.c: Fix some whitespace mistakes.Matt Turner1-4/+3
2015-04-13README: Add instructions for radeonsiTom Stellard1-1/+16
2015-04-13Add si-report.py for parsing dumps from radeonsiTom Stellard1-0/+324
2015-04-13run.c: Add -1 option for disabling multi-threadingTom Stellard1-4/+10
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-13run.c: Use getopt for argument parsingTom Stellard1-21/+39
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-04-13run.c: Use computed value of max_threadsTom Stellard1-1/+1
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-03-28check_dependencies.pl: Return proper exit code.Matt Turner1-1/+7
2015-03-28run.py: Make it work with vec4 VS again.Matt Turner1-1/+1
2015-03-28run.c: Make message read better.Matt Turner1-1/+1
2015-03-28run.c: Use EGL_MESA_platform_gbm to avoid warnings.Matt Turner1-3/+15
2015-03-28run.c: Silence unused result warnings about write().Matt Turner1-0/+3
If write() fails in a signal handler, really, what are you going to do?
2015-03-28Update README.Matt Turner1-8/+24
2015-03-27glamor: Update shaders from upstream commit 0669babf.Matt Turner2-12/+14
commit 0669babf2b5b50cbc185b0f714671b2c2b368778 Author: Matt Turner <mattst88@gmail.com> Date: Wed Mar 4 13:42:48 2015 -0800 glamor: Perform texture2D() separately from swizzle.
2015-03-18Fix the build. Sorry...Jason Ekstrand1-2/+2
2015-03-18run.c: Add an option to fake a particular platformJason Ekstrand1-1/+40
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-01-23Import shaders from Glamor.Kenneth Graunke8-0/+765
2015-01-23Add "run" binary to .gitignore.Kenneth Graunke1-0/+1
2015-01-20run: Print which shaders were being processed when crashing.Kenneth Graunke1-0/+31
If the driver hits an assertion failure and aborts, the runner will die, which can be hard to debug. This patch makes the runner catch SIGABRT and SIGSEGV and and print out a list of shaders each thread was processing before it terminates. => CRASHED <= while processing these shaders: shaders/foo/1936.shader_test shaders/foo/9991.shader_test shaders/foo/1832.shader_test v2: Handle SIGSEGV too, since SIGABRT doesn't catch real crashes (such as null pointer dereferences). Call _exit() to avoid continuing. Use write() in the signal handler since fputs() is not signal safe. According to an Austin Group bug tracker entry, strlen() is signal safe, so using it should be fine.
2015-01-20report.py: Print counts of helped/hurt programs.Kenneth Graunke1-4/+8
2015-01-16run.c: Fix extension_string enlargingPetri Latvala1-1/+4
If the buffer for the full extension string needs to be grown, continue writing from the correct position. Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-01-13report.py: Use the format printed by Matt's new C runner.Kenneth Graunke1-1/+1
This means you can't use run.py anymore, but "run" is so much faster that you really don't want to be using it.
2015-01-05Import Unity 5.0 built-in shaders.Kenneth Graunke37-0/+6567
The Unity 3D engine ships with a number of built-in shaders, which will likely be used by many games. These were originally written in HLSL, but translated via a bunch of software. Thanks to Aras Pranckevičius <aras@unity3d.com> for giving us a copy of these shaders under the MIT license.
2014-12-09Add a new runner, written in C.Matt Turner2-0/+584
Whereas run.py runs piglit's shader_runner binary to compile each shader individually and parses the output of INTEL_DEBUG=fs,vs,gs to find the number of instructions and loops, this runner compiles all of the shaders from a single process and uses output from GL_KHR_debug to get the information we want. It uses EGL and GBM (and render nodes) to create a GL display and uses libepoxy for GL function pointer management. It creates one thread per-CPU using OpenMP, each of which compiles shaders in parallel. It creates two OpenGL contexts, one core context and one compatibility context and switches between them as needed. run.py is able to compile all of the GLSL shaders in shader-db (including the closed portion) in about 300 seconds on my quad-core Haswell. This program can do the same in 90 seconds. Profiling shows that it's largely limited by malloc performance, and preloading jemalloc (LD_PRELOAD=/usr/lib64/libjemalloc.so.1) reduces the execution time to about 80 seconds.
2014-11-26Add a script to check shader_test's dependencies.Matt Turner1-0/+101
2014-11-26Specify GLSL version actually required by the shaders.Matt Turner377-377/+377
2014-11-26Remove [vertex data] and [test] sections from orbital explorer.Matt Turner1-17/+0
2014-11-12Sort the list of helped programsJason Ekstrand1-5/+7
2014-11-11Don't overwrite the INTEL_DEBUG environment variableJason Ekstrand1-1/+5
Print a warning and append shader-db's arguments instead
2014-11-11Direcly set environment variables instead of using update()Jason Ekstrand1-6/+3
2014-10-01Update .gitignore files.Kenneth Graunke2-0/+2
The intention behind ignoring shaders/closed is that you can drop additional shaders there that you don't have permission to publish.
2014-09-29Delete what look like Meta shaders.Kenneth Graunke4-68/+0
We don't need a ton of copies of gl_FragColor = color. These are most likely the driver-generated clear shaders anyway.
2014-08-18run.py: Use INTEL_DEBUG=fs, not wm.Kenneth Graunke1-1/+1
INTEL_DEBUG=wm will probably go away at some point.
2014-08-18Delete weston shaders.Kenneth Graunke12-119/+0
We don't support .vert and .frag files anymore.
2014-08-18Add missing #extension directive in dolphin/smg.1.shader_test.Kenneth Graunke1-1/+1
Fixes compilation.
2014-08-18run.py: Set allow_glsl_extension_directive_midshader=true.Kenneth Graunke1-0/+1
Fixes problems with warsow/25.shader_test, and would help Unigine shaders as well.
2014-08-15run.py: Stop setting force_glsl_extensions_warn.Kenneth Graunke1-1/+0
This was only needed for compiling the outdated Unigine shaders, which I don't care about - the newer Unigine code doesn't need this. It apparently also breaks things these days, since it enables GL_ARB_gpu_shader5, which treats 'sample' as a reserved word. Reported-by: Matt Turner <mattst88@gmail.com>
2014-08-04split-to-files.py: Fix it to actually run again.Kenneth Graunke1-2/+2
2014-07-16report.py: call get_result method on file argumentsDylan Baker1-2/+2
This fixes a bug introduced by 8ca864, which accidentally removed the use of get_result() Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
2014-07-13run.py: Handle ARB programs as well.Kenneth Graunke1-1/+1
2014-07-13split-to-files.py: Also parse ARB program outputKenneth Graunke1-8/+43
v2: Rebase on Dylan's cleanups.
2014-07-13split-to-files.py: Complain about duplicates instead of aborting.Kenneth Graunke1-2/+2
Duplicates happen. They really shouldn't, but printing a "bad things are happening" message is better than aborting and refusing to do anything.
2014-07-13Import "Tesseract" shaders.Kenneth Graunke215-0/+28487
This came from a MESA_GLSL=dump report from: https://bugs.freedesktop.org/show_bug.cgi?id=78691 So I don't know much about the details. Better than nothing.
2014-07-13run.py: don't support .frag or .vert filesDylan Baker1-13/+2
v2 (Ken): Keep the code to skip .out files. Acked-by: Kenneth Graunke <kenneth@whitecape.org>