TESTSHADE_DSO(1)

πŸ“¦
version 1.15.4.0 Β· 4 versions
, in fedora 44

🌸 NAME 🌸

testshade_dso β€” Test Open Shading Language ✨

ok so quick vibe check: this is page TESTSHADE_DSO(1), it lives in the User Commands section of the manual, and it's about a program you actually call as testshade. bestie it is SO good. 🫢


πŸŽ€ SYNOPSIS πŸŽ€

testshade [options] shader...

like, you hand it some shaders, you hand it options, it does its thing. iconic behavior honestly. πŸ’…


πŸ’– DESCRIPTION πŸ’–

testshade β€” Test Open Shading Language. Copyright Contributors to the Open Shading Language project. that's the official line and I'm keeping it, because credit where credit is due, no cap. 🫑

it's the test harness for Open Shading Language β€” you poke it, it shades stuff, and it tells you whether everything is slaying or not. and the flags?? so many flags. we love a configurable queen. let's go one by one, bestie, I got you:

  • --help β€” print the help message. first thing you type, always. πŸ™ˆ
  • -v β€” verbose messages, so it actually tells you what's going on instead of being mysterious.
  • -t NTHREADS β€” set the thread count. default = 0, which means auto-detect #cores β€” it counts your cores for you, main character energy fr fr.
  • --optix β€” use OptiX if it's available. if it's not available, well. it's not available.
  • --debug β€” lots of debugging info.
  • --debug2 β€” even MORE debugging info. yes, more than "lots". we escalated. πŸ”₯
  • --llvm_debug β€” turn on LLVM debugging info.
  • --runstats β€” print run statistics. numbers!! ✨
  • --batched β€” submit batches to ShadingSystem.
  • --vary_pdxdy β€” populate Dx(P) & Dy(P) with varying values (vs. uniform).
  • --vary_udxdy β€” populate Dx(u) & Dy(u) with varying values (vs. uniform).
  • --vary_vdxdy β€” populate Dx(v) & Dy(v) with varying values (vs. uniform).
  • --profile β€” print profile information.
  • --saveptx β€” save the generated PTX (OptiX mode only).
  • --warmup β€” perform a warmup launch. stretch first, bestie. 🀸
  • --res XRES YRES β€” set resolution.
  • --options LIST β€” set extra OSL options.
  • --texoptions LIST β€” set extra TextureSystem options.
  • --colorspace NAME β€” set ShadingSysem colorspace.
  • -o VARIABLE FILENAME β€” specify an output (filename='null' means don't save).
  • -d NAME β€” set the output data format to one of: uint8, half, float.
  • --print β€” print values of all -o outputs to console instead of saving images. console girlies rise. πŸ’…
  • --groupname %s β€” set shader group name.
  • --layer NAME β€” set next layer name.
  • --param NAME VALUE β€” add a parameter (options: type=%s, interpolated=%d).
  • --shader SHADER LAYERNAME β€” declare a shader node.
  • --connect FROMLAYER FROMOUTPUT TOLAYER TOINPUT β€” connect two shader layers. matchmaking but for shaders. πŸ₯°
  • --reparam LAYERNAME PARAMNAME VALUE β€” change a parameter (options: type=%s).
  • --group CMD β€” specify a full group command.
  • --archivegroup FILENAME β€” archive the group to a given filename.
  • --raytype %s β€” set the raytype.
  • --raytype_opt β€” specify ray type mask for optimization.
  • --iters ITERS β€” number of iterations.
  • -O0 β€” do no runtime shader optimization.
  • -O1 β€” do a little runtime shader optimization.
  • -O2 β€” do lots of runtime shader optimization.
  • --llvm_opt LEVEL β€” LLVM JIT optimization level.
  • --optix_no_inline β€” disable function inlining when compiling for OptiX.
  • --optix_no_inline_layer_funcs β€” disable inlining the group layer functions when compiling for OptiX.
  • --optix_no_merge_layer_funcs β€” disable merging group layer functions with only one caller when compiling for OptiX.
  • --optix_no_inline_rend_lib β€” disable inlining the rend_lib functions when compiling for OptiX.
  • --optix_no_rend_lib_bitcode β€” don't pass LLVM bitcode for the rend_lib functions to the ShadingSystem.
  • --optix_no_inline_thresh THRESH β€” don't inline functions larger than the threshold when compiling for OptiX.
  • --optix_force_inline_thresh THRESH β€” force inline functions smaller than the threshold when compiling for OptiX.
  • --optix_register_inline_funcs β€” register functions that should or should not be inlined during LLVM optimization.
  • --entry LAYERNAME β€” add layer to the list of entry points.
  • --entryoutput NAME β€” add output symbol to the list of entry points.
  • --center β€” shade at output pixel 'centers' rather than corners.
  • --debugnan β€” turn on 'debug_nan' mode.
  • --debuguninit β€” turn on 'debug_uninit' mode.
  • --groupoutputs β€” specify group outputs, not global outputs.
  • --oslquery β€” test OSLQuery at runtime.
  • --print-groupdata β€” print groupdata size to stdout.
  • --inbuffer β€” compile osl source from and to jbuffer.
  • --no-output-placement β€” turn off use of output placement, rely only on get_symbol.
  • --shadeimage β€” use shade_image utility.
  • --noshadeimage β€” don't use shade_image utility.
  • --expr EXPR β€” specify an OSL expression to evaluate.
  • --offsetuv UOFFSET VOFFSET β€” offset s & t texture coordinates (default: 0 0).
  • --scaleuv USCALE VSCALE β€” scale s & t texture lookups (default: 1, 1).
  • --userdata NAME VALUE β€” add userdata (options: type=%s).
  • --userdata_isconnected β€” consider interpolated=1 to be isconnected().
  • --locale NAME β€” set a different locale.
  • --use_rs_bitcode β€” use free function bitcode Renderer services.
  • --jbufferMB JBUFFER β€” journal jbuffer size in MB.
that's the whole list, bestie. all of it. nothing skipped, because I would never do that to you. 🫢

and that's the page!! testshade_dso 1.15.4.0, dated May 2026 β€” love that for us. go forth and shade, you gorgeous genius. πŸ¦‹βœ¨πŸ’–

πŸ“¦ where this page comes from