Environment Variables
+Environment Variables
-Mesa supports the following environment variables: +Normally, no environment variables need to be set. Most of the environment +variables used by Mesa/Gallium are for debugging purposes, but they can +sometimes be useful for debugging end-user issues.
+ + +LibGL environment variables
+ +-
+
LIBGL_DEBUG
+- If defined debug information will be printed to stderr.
+ If set to
verbose
additional information will be + printed.
+ LIBGL_DRIVERS_PATH
+- colon-separated list of paths to search for DRI drivers +
LIBGL_ALWAYS_INDIRECT
+- if set to
true
, forces an indirect rendering + context/connection.
+ LIBGL_ALWAYS_SOFTWARE
+- if set to
true
, always use software rendering
+ LIBGL_NO_DRAWARRAYS
+- if set to
true
, do not use DrawArrays GLX protocol + (for debugging)
+ LIBGL_SHOW_FPS
+- print framerate to stdout based on the number of
+
glXSwapBuffers
calls per second.
+ LIBGL_DRI3_DISABLE
+- disable DRI3 if set to
true
.
+
Core Mesa environment variables
+ +-
+
MESA_NO_ASM
+- if set, disables all assembly language optimizations +
MESA_NO_MMX
+- if set, disables Intel MMX optimizations +
MESA_NO_3DNOW
+- if set, disables AMD 3DNow! optimizations +
MESA_NO_SSE
+- if set, disables Intel SSE optimizations +
MESA_NO_ERROR
+- if set to 1, error checking is disabled as per
KHR_no_error
. + This will result in undefined behaviour for invalid use of the api, but + can reduce CPU use for apps that are known to be error free.
+ MESA_DEBUG
+- if set, error messages are printed to stderr. For example,
+ if the application generates a
GL_INVALID_ENUM
error, a + corresponding error message indicating where the error occurred, and + possibly why, will be printed to stderr. For release builds, +MESA_DEBUG
defaults to off (no debug output). +MESA_DEBUG
accepts the following comma-separated list of + named flags, which adds extra behaviour to just set +MESA_DEBUG=1
: +-
+
silent
+ - turn off debug messages. Only useful for debug builds. +
flush
+ - flush after each drawing command +
incomplete_tex
+ - extra debug messages when a texture is incomplete +
incomplete_fbo
+ - extra debug messages when a fbo is incomplete +
context
+ - create a debug context (see
GLX_CONTEXT_DEBUG_BIT_ARB
) + and print error and performance messages to stderr (or +MESA_LOG_FILE
).
+
+ MESA_LOG_FILE
+- specifies a file name for logging all errors, warnings, + etc., rather than stderr +
MESA_TEX_PROG
+- if set, implement conventional texture env modes with + fragment programs (intended for developers only) +
MESA_TNL_PROG
+- if set, implement conventional vertex transformation operations with
+ vertex programs (intended for developers only). Setting this variable
+ automatically sets the
MESA_TEX_PROG
variable as well.
+ MESA_EXTENSION_OVERRIDE
+- can be used to enable/disable extensions. A value such as
+
GL_EXT_foo -GL_EXT_bar
will enable the +GL_EXT_foo
extension and disable the +GL_EXT_bar
extension.
+ MESA_EXTENSION_MAX_YEAR
+- The
GL_EXTENSIONS
string returned by Mesa is sorted by + extension year. If this variable is set to year X, only extensions + defined on or before year X will be reported. This is to work-around a + bug in some games where the extension string is copied into a fixed-size + buffer without truncating. If the extension string is too long, the + buffer overrun can cause the game to crash. This is a work-around for + that.
+ MESA_GL_VERSION_OVERRIDE
+- changes the value returned by
+
glGetString(GL_VERSION)
and possibly the GL API type.-
-
- MESA_NO_ASM - if set, disables all assembly language optimizations -
- MESA_NO_MMX - if set, disables Intel MMX optimizations -
- MESA_NO_3DNOW - if set, disables AMD 3DNow! optimizations -
- MESA_NO_SSE - if set, disables Intel SSE optimizations -
- MESA_DEBUG - if set, error messages are printed to stderr. -If the value of MESA_DEBUG is "FP" floating point arithmetic errors will -generate exceptions. -
- MESA_NO_DITHER - if set, disables dithering, overriding glEnable(GL_DITHER) -
- MESA_TEX_PROG - if set, implement conventional texture env modes with -fragment programs (intended for developers only) -
- MESA_TNL_PROG - if set, implement conventional vertex transformation -operations with vertex programs (intended for developers only). -Setting this variable automatically sets the MESA_TEX_PROG variable as well. -
- MESA_EXTENSION_OVERRIDE - can be used to enable/disable extensions. -A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension -and disable the GL_EXT_bar extension. -
- MESA_GLSL - shading language options +
- The format should be
MAJOR.MINOR[FC|COMPAT]
+ FC
is an optional suffix that indicates a forward + compatible context. This is only valid for versions >= 3.0. +COMPAT
is an optional suffix that indicates a + compatibility context orGL_ARB_compatibility
support. + This is only valid for versions >= 3.1. +- GL versions <= 3.0 are set to a compatibility (non-Core) + profile +
- GL versions = 3.1, depending on the driver, it may or may not
+ have the
ARB_compatibility
extension enabled. + - GL versions >= 3.2 are set to a Core profile +
- Examples:
+
-
+
2.1
+ - select a compatibility (non-Core) profile with GL version 2.1. +
3.0
+ - select a compatibility (non-Core) profile with GL version 3.0. +
3.0FC
+ - select a Core+Forward Compatible profile with GL version 3.0. +
3.1
+ - select GL version 3.1 with
GL_ARB_compatibility
+ enabled per the driver default.
+ 3.1FC
+ - select GL version 3.1 with forward compatibility and
+
GL_ARB_compatibility
disabled.
+ 3.1COMPAT
+ - select GL version 3.1 with
GL_ARB_compatibility
+ enabled.
+ X.Y
+ - override GL version to X.Y without changing the profile. +
X.YFC
+ - select a Core+Forward Compatible profile with GL version X.Y. +
X.YCOMPAT
+ - select a Compatibility profile with GL version X.Y. +
- Mesa may not really implement all the features of the given + version. (for developers only)
-The following are only applicable to the Xlib software driver. -See the Xlib software driver page for details. -
+
+ MESA_GLES_VERSION_OVERRIDE
+- changes the value returned by
glGetString(GL_VERSION)
+ for OpenGL ES.-
-
- MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode -
- MESA_CI_VISUAL - specifies the X visual and depth for CI mode -
- MESA_BACK_BUFFER - specifies how to implement the back color buffer, - either "pixmap" or "ximage" -
- MESA_GAMMA - gamma correction coefficients for red, green, blue channels -
- MESA_XSYNC - enable synchronous X behavior (for debugging only) -
- MESA_GLX_FORCE_CI - if set, force GLX to treat 8bpp visuals as CI visuals -
- MESA_GLX_FX - set to either "fullscreen" for full-screen rendering, - "window" to render into a window, or "disable" to disable the Glide driver. -
- MESA_GLX_FORCE_ALPHA - if set, forces RGB windows to have an alpha channel. -
- MESA_GLX_DEPTH_BITS - specifies default number of bits for depth buffer. -
- MESA_GLX_ALPHA_BITS - specifies default number of bits for alpha channel. +
- The format should be
MAJOR.MINOR
+ - Examples:
2.0
,3.0
,3.1
+ - Mesa may not really implement all the features of the given version. +(for developers only)
+ MESA_GLSL_VERSION_OVERRIDE
+- changes the value returned by
+
glGetString(GL_SHADING_LANGUAGE_VERSION)
. + Valid values are integers, such as130
. Mesa will not + really implement all the features of the given language version if + it's higher than what's normally reported. (for developers only) +
+ MESA_GLSL_CACHE_DISABLE
+- if set to
true
, disables the GLSL shader cache
+ MESA_GLSL_CACHE_MAX_SIZE
+- if set, determines the maximum size of the on-disk cache of compiled GLSL
+ programs. Should be set to a number optionally followed by
K
, +M
, orG
to specify a size in kilobytes, + megabytes, or gigabytes. By default, gigabytes will be assumed. And if + unset, a maximum size of 1GB will be used. Note: A separate cache might + be created for each architecture that Mesa is installed for on your + system. For example under the default settings you may end up with a 1GB + cache for x86_64 and another 1GB cache for i386.
+ MESA_GLSL_CACHE_DIR
+- if set, determines the directory to be used for the on-disk cache of
+ compiled GLSL programs. If this variable is not set, then the cache will
+ be stored in
$XDG_CACHE_HOME/mesa_shader_cache
(if that + variable is set), or else within.cache/mesa_shader_cache
+ within the user's home directory. +
+ MESA_GLSL
+- shading language compiler options +
MESA_NO_MINMAX_CACHE
+- when set, the minmax index cache is globally disabled. +
MESA_SHADER_CAPTURE_PATH
+- see Capturing Shaders +
MESA_SHADER_DUMP_PATH
andMESA_SHADER_READ_PATH
+- see Experimenting with Shader Replacements +
MESA_VK_VERSION_OVERRIDE
+- changes the Vulkan physical device version
+ as returned in
VkPhysicalDeviceProperties::apiVersion
. +-
+
- The format should be
MAJOR.MINOR[.PATCH]
+ - This will not let you force a version higher than the driver's
+ instance version as advertised by
+
vkEnumerateInstanceVersion
+ - This can be very useful for debugging but some features may not be + implemented correctly. (For developers only) +
+ - The format should be
NIR passes enviroment variables
-These environment variables are for the Intel i945/i965 drivers: +The following are only applicable for drivers that uses NIR, as they +modify the behaviour for the common NIR_PASS and NIR_PASS_V macros, +that wrap calls to NIR lowering/optimizations.
--
-
- INTEL_STRICT_CONFORMANCE - if set to 1, enable sw fallbacks to improve - OpenGL conformance. If set to 2, always use software rendering. -
- INTEL_NO_BLIT - if set, disable hardware-accelerated glBitmap, - glCopyPixels, glDrawPixels. -
-
+
NIR_PRINT
+ - If defined, the resulting NIR shader will be printed out at each succesful NIR lowering/optimization call. +
NIR_TEST_CLONE
+ - If defined, cloning a NIR shader would be tested at each succesful NIR lowering/optimization call. +
NIR_TEST_SERIALIZE
+ - If defined, serialize and deserialize a NIR shader would be tested at each succesful NIR lowering/optimization call. +
Mesa Xlib driver environment variables
-These environment variables are for the Radeon R300 driver: +The following are only applicable to the Mesa Xlib software driver. +See the Xlib software driver page for details.
--
-
- R300_NO_TCL - if set, disable hardware-accelerated Transform/Clip/Lighting. -
-
+
MESA_RGB_VISUAL
+- specifies the X visual and depth for RGB mode +
MESA_CI_VISUAL
+- specifies the X visual and depth for CI mode +
MESA_BACK_BUFFER
+- specifies how to implement the back color buffer, either
+
pixmap
orximage
+ MESA_GAMMA
+- gamma correction coefficients for red, green, blue channels +
MESA_XSYNC
+- enable synchronous X behavior (for debugging only) +
MESA_GLX_FORCE_CI
+- if set, force GLX to treat 8bpp visuals as CI visuals +
MESA_GLX_FORCE_ALPHA
+- if set, forces RGB windows to have an alpha channel. +
MESA_GLX_DEPTH_BITS
+- specifies default number of bits for depth buffer. +
MESA_GLX_ALPHA_BITS
+- specifies default number of bits for alpha channel. +
i945/i965 driver environment variables (non-Gallium)
+ +-
+
INTEL_NO_HW
+- if set to 1, prevents batches from being submitted to the hardware. + This is useful for debugging hangs, etc. +
INTEL_DEBUG
+- a comma-separated list of named flags, which do various things:
+
-
+
ann
+ - annotate IR in assembly dumps +
aub
+ - dump batches into an AUB trace for use with simulation tools +
bat
+ - emit batch information +
blit
+ - emit messages about blit operations +
blorp
+ - emit messages about the blorp operations (blits & clears) +
buf
+ - emit messages about buffer objects +
clip
+ - emit messages about the clip unit (for old gens, includes the CLIP program) +
color
+ - use color in output +
cs
+ - dump shader assembly for compute shaders +
do32
+ - generate compute shader SIMD32 programs even if workgroup size doesn't exceed the SIMD16 limit +
dri
+ - emit messages about the DRI interface +
fbo
+ - emit messages about framebuffers +
fs
+ - dump shader assembly for fragment shaders +
gs
+ - dump shader assembly for geometry shaders +
hex
+ - print instruction hex dump with the disassembly +
l3
+ - emit messages about the new L3 state during transitions +
miptree
+ - emit messages about miptrees +
no8
+ - don't generate SIMD8 fragment shader +
no16
+ - suppress generation of 16-wide fragment shaders. useful for debugging broken shaders +
nocompact
+ - disable instruction compaction +
nodualobj
+ - suppress generation of dual-object geometry shader code +
nofc
+ - disable fast clears +
norbc
+ - disable single sampled render buffer compression +
optimizer
+ - dump shader assembly to files at each optimization pass and iteration that make progress +
perf
+ - emit messages about performance issues +
perfmon
+ - emit messages about
AMD_performance_monitor
+ pix
+ - emit messages about pixel operations +
prim
+ - emit messages about drawing primitives +
reemit
+ - mark all state dirty on each draw call +
sf
+ - emit messages about the strips & fans unit (for old gens, includes the SF program) +
shader_time
+ - record how much GPU time is spent in each shader +
spill_fs
+ - force spilling of all registers in the scalar backend (useful to debug spilling code) +
spill_vec4
+ - force spilling of all registers in the vec4 backend (useful to debug spilling code) +
state
+ - emit messages about state flag tracking +
submit
+ - emit batchbuffer usage statistics +
sync
+ - after sending each batch, emit a message and wait for that batch to finish rendering +
tcs
+ - dump shader assembly for tessellation control shaders +
tes
+ - dump shader assembly for tessellation evaluation shaders +
tex
+ - emit messages about textures. +
urb
+ - emit messages about URB setup +
vert
+ - emit messages about vertex assembly +
vs
+ - dump shader assembly for vertex shaders +
+ INTEL_SCALAR_VS
(orTCS
,TES
, +GS
)
+- force scalar/vec4 mode for a shader stage (Gen8-9 only) +
INTEL_PRECISE_TRIG
+- if set to 1, true or yes, then the driver prefers accuracy over + performance in trig functions. +
Radeon driver environment variables (radeon, r200, and r300g)
+ +-
+
RADEON_NO_TCL
+- if set, disable hardware-accelerated Transform/Clip/Lighting. +
EGL environment variables
Mesa EGL supports different sets of environment variables. See the Mesa EGL page for the details.
- - + +Gallium environment variables
+ +-
+
GALLIUM_HUD
+- draws various information on the screen, like framerate,
+ cpu load, driver statistics, performance counters, etc.
+ Set
GALLIUM_HUD=help
and run e.g. +glxgears
for more info.
+ GALLIUM_HUD_PERIOD
+- sets the hud update rate in seconds (float). Use zero + to update every frame. The default period is 1/2 second. +
GALLIUM_HUD_VISIBLE
+- control default visibility, defaults to true. +
GALLIUM_HUD_TOGGLE_SIGNAL
+- toggle visibility via user specified signal.
+ Especially useful to toggle hud at specific points of application and
+ disable for unencumbered viewing the rest of the time. For example, set
+
GALLIUM_HUD_VISIBLE
tofalse
and +GALLIUM_HUD_TOGGLE_SIGNAL
to10
+ (SIGUSR1
). + Usekill -10 <pid>
to toggle the hud as desired.
+ GALLIUM_HUD_SCALE
+- Scale hud by an integer factor, for high DPI displays. Default is 1. +
GALLIUM_HUD_DUMP_DIR
+- specifies a directory for writing the displayed hud values into files. +
GALLIUM_DRIVER
+- useful in combination with
LIBGL_ALWAYS_SOFTWARE=true
for + choosing one of the software rendererssoftpipe
, +llvmpipe
orswr
.
+ GALLIUM_LOG_FILE
+- specifies a file for logging all errors, warnings, etc. + rather than stderr. +
GALLIUM_PRINT_OPTIONS
+- if non-zero, print all the Gallium environment variables which are + used, and their current values. +
GALLIUM_DUMP_CPU
+- if non-zero, print information about the CPU on start-up +
TGSI_PRINT_SANITY
+- if set, do extra sanity checking on TGSI shaders and + print any errors to stderr. +
DRAW_FSE
+- ??? +
DRAW_NO_FSE
+- ??? +
DRAW_USE_LLVM
+- if set to zero, the draw module will not use LLVM to execute + shaders, vertex fetch, etc. +
ST_DEBUG
+- controls debug output from the Mesa/Gallium state tracker.
+ Setting to
tgsi
, for example, will print all the TGSI + shaders. Seesrc/mesa/state_tracker/st_debug.c
for other + options.
+
Clover state tracker environment variables
+ +-
+
CLOVER_EXTRA_BUILD_OPTIONS
+- allows specifying additional compiler and linker
+ options. Specified options are appended after the options set by the OpenCL
+ program in
clBuildProgram
.
+ CLOVER_EXTRA_COMPILE_OPTIONS
+- allows specifying additional compiler
+ options. Specified options are appended after the options set by the OpenCL
+ program in
clCompileProgram
.
+ CLOVER_EXTRA_LINK_OPTIONS
+- allows specifying additional linker
+ options. Specified options are appended after the options set by the OpenCL
+ program in
clLinkProgram
.
+
Softpipe driver environment variables
+-
+
SOFTPIPE_DUMP_FS
+- if set, the softpipe driver will print fragment shaders to stderr +
SOFTPIPE_DUMP_GS
+- if set, the softpipe driver will print geometry shaders to stderr +
SOFTPIPE_NO_RAST
+- if set, rasterization is no-op'd. For profiling purposes. +
SOFTPIPE_USE_LLVM
+- if set, the softpipe driver will try to use LLVM JIT for + vertex shading processing. +
LLVMpipe driver environment variables
+-
+
LP_NO_RAST
+- if set LLVMpipe will no-op rasterization +
LP_DEBUG
+- a comma-separated list of debug options is accepted. See the + source code for details. +
LP_PERF
+- a comma-separated list of options to selectively no-op various + parts of the driver. See the source code for details. +
LP_NUM_THREADS
+- an integer indicating how many threads to use for rendering. + Zero turns off threading completely. The default value is the number of CPU + cores present. +
VMware SVGA driver environment variables
+-
+
SVGA_FORCE_SWTNL
+- force use of software vertex transformation +
SVGA_NO_SWTNL
+- don't allow software vertex transformation fallbacks (will often result + in incorrect rendering). +
SVGA_DEBUG
+- for dumping shaders, constant buffers, etc. See the code for + details. +
SVGA_EXTRA_LOGGING
+- if set, enables extra logging to the
vmware.log
file, + such as the OpenGL program's name and command line arguments.
+ SVGA_NO_LOGGING
+- if set, disables logging to the
vmware.log
file. This is + useful when using Valgrind because it otherwise crashes when + initializing the host log feature.
+
See the driver code for other, lesser-used variables.
+ +WGL environment variables
+-
+
WGL_SWAP_INTERVAL
+- to set a swap interval, equivalent to calling
+
wglSwapIntervalEXT()
in an application. If this + environment variable is set, application calls to +wglSwapIntervalEXT()
will have no effect.
+
VA-API state tracker environment variables
+-
+
VAAPI_MPEG4_ENABLED
+- enable MPEG4 for VA-API, disabled by default. +
VC4 driver environment variables
+-
+
VC4_DEBUG
+- a comma-separated list of named flags, which do various things:
+
-
+
cl
+ - dump command list during creation +
qpu
+ - dump generated QPU instructions +
qir
+ - dump QPU IR during program compile +
nir
+ - dump NIR during program compile +
tgsi
+ - dump TGSI during program compile +
shaderdb
+ - dump program compile information for shader-db analysis +
perf
+ - print during performance-related events +
norast
+ - skip actual hardware execution of commands +
always_flush
+ - flush after each draw call +
always_sync
+ - wait for finish after each flush +
dump
+ - write a GPU command stream trace file (VC4 simulator only) +
+
RADV driver environment variables
+-
+
RADV_DEBUG
+- a comma-separated list of named flags, which do various things:
+
-
+
allbos
+ - force all allocated buffers to be referenced in submissions +
allentrypoints
+ - enable all device/instance entrypoints +
checkir
+ - validate the LLVM IR before LLVM compiles the shader +
errors
+ - display more info about errors +
info
+ - show GPU-related information +
metashaders
+ - dump internal meta shaders +
nobinning
+ - disable primitive binning +
nocache
+ - disable shaders cache +
nocompute
+ - disable compute queue +
nodcc
+ - disable Delta Color Compression (DCC) on images +
nodynamicbounds
+ - do not check OOB access for dynamic descriptors +
nofastclears
+ - disable fast color/depthstencil clears +
nohiz
+ - disable HIZ for depthstencil images +
noibs
+ - disable directly recording command buffers in GPU-visible memory +
noloadstoreopt
+ - disable LLVM SILoadStoreOptimizer pass +
nomemorycache
+ - disable memory shaders cache +
nongg
+ - disable NGG for GFX10+ +
nooutoforder
+ - disable out-of-order rasterization +
noshaderballot
+ - disable shader ballot +
nothreadllvm
+ - disable LLVM threaded compilation +
preoptir
+ - dump LLVM IR before any optimizations +
shaders
+ - dump shaders +
shaderstats
+ - dump shader statistics +
spirv
+ - dump SPIR-V +
startup
+ - display info at startup +
syncshaders
+ - synchronize shaders after all draws/dispatches +
vmfaults
+ - check for VM memory faults via dmesg +
zerovram
+ - initialize all memory allocated in VRAM as zero +
+ RADV_FORCE_FAMILY
+- create a null device to compile shaders without a AMD GPU (eg. gfx900) +
RADV_PERFTEST
+- a comma-separated list of named flags, which do various things:
+
-
+
aco
+ - enable ACO experimental compiler +
bolist
+ - enable the global BO list +
cswave32
+ - enable wave32 for compute shaders (GFX10+) +
dccmsaa
+ - enable DCC for MSAA images +
dfsm
+ - enable dfsm +
gewave32
+ - enable wave32 for vertex/tess/geometry shaders (GFX10+) +
localbos
+ - enable local BOs +
pswave32
+ - enable wave32 for pixel shaders (GFX10+) +
shader_ballot
+ - enable shader ballot +
tccompatcmask
+ - enable TC-compat cmask for MSAA images +
+ RADV_SECURE_COMPILE_THREADS
+- maximum number of secure compile threads (up to 32) +
RADV_TEX_ANISO
+- force anisotropy filter (up to 16) +
RADV_TRACE_FILE
+- generate cmdbuffer tracefiles when a GPU hang is detected +
ACO_DEBUG
+- a comma-separated list of named flags, which do various things:
+
-
+
validateir
+ - validate the ACO IR at various points of compilation (enabled by default for debug/debugoptimized builds) +
validatera
+ - validate register assignment of ACO IR and catches many RA bugs +
perfwarn
+ - abort on some suboptimal code generation +
+
radeonsi driver environment variables
+-
+
AMD_DEBUG
+- a comma-separated list of named flags, which do various things: +
nodma
+ - Disable SDMA +
nodmaclear
+ - Disable SDMA clears +
nodmacopyimage
+ - Disable SDMA image copies +
zerovram
+ - Clear VRAM allocations. +
nodcc
+ - Disable DCC. +
nodccclear
+ - Disable DCC fast clear. +
nodccfb
+ - Disable separate DCC on the main framebuffer +
nodccmsaa
+ - Disable DCC for MSAA +
nodpbb
+ - Disable DPBB. +
nodfsm
+ - Disable DFSM. +
notiling
+ - Disable tiling +
nofmask
+ - Disable MSAA compression +
nohyperz
+ - Disable Hyper-Z +
norbplus
+ - Disable RB+. +
no2d
+ - Disable 2D tiling +
info
+ - Print driver information +
tex
+ - Print texture info +
compute
+ - Print compute info +
vm
+ - Print virtual addresses when creating resources +
vs
+ - Print vertex shaders +
ps
+ - Print pixel shaders +
gs
+ - Print geometry shaders +
tcs
+ - Print tessellation control shaders +
tes
+ - Print tessellation evaluation shaders +
cs
+ - Print compute shaders +
noir
+ - Don't print the LLVM IR +
nonir
+ - Don't print NIR when printing shaders +
noasm
+ - Don't print disassembled shaders +
preoptir
+ - Print the LLVM IR before initial optimizations +
gisel
+ - Enable LLVM global instruction selector. +
w32ge
+ - Use Wave32 for vertex, tessellation, and geometry shaders. +
w32ps
+ - Use Wave32 for pixel shaders. +
w32cs
+ - Use Wave32 for computes shaders. +
w64ge
+ - Use Wave64 for vertex, tessellation, and geometry shaders. +
w64ps
+ - Use Wave64 for pixel shaders. +
w64cs
+ - Use Wave64 for computes shaders. +
checkir
+ - Enable additional sanity checks on shader IR +
mono
+ - Use old-style monolithic shaders compiled on demand +
nooptvariant
+ - Disable compiling optimized shader variants. +
forcedma
+ - Use SDMA for all operations when possible. +
nowc
+ - Disable GTT write combining +
check_vm
+ - Check VM faults and dump debug info. +
reserve_vmid
+ - Force VMID reservation per context. +
nogfx
+ - Disable graphics. Only multimedia compute paths can be used. +
nongg
+ - Disable NGG and use the legacy pipeline. +
nggc
+ - Always use NGG culling even when it can hurt. +
nonggc
+ - Disable NGG culling. +
alwayspd
+ - Always enable the primitive discard compute shader. +
pd
+ - Enable the primitive discard compute shader for large draw calls. +
nopd
+ - Disable the primitive discard compute shader. +
switch_on_eop
+ - Program WD/IA to switch on end-of-packet. +
nooutoforder
+ - Disable out-of-order rasterization +
dpbb
+ - Enable DPBB. +
dfsm
+ - Enable DFSM. +
-
+
+
Disable features / workaround flags (useful to diagnose an issue):
+Info flags:
+Print shaders flags:
+Shader compilation tuning flags:
+Advanced usage flags:
++Other Gallium drivers have their own environment variables. These may change +frequently so the source code should be consulted for details. +
+ +