GLMARK2(1)

πŸ’– GLMARK2 πŸ’–

okay bestie, so glmark2 is the manual page for the OpenGL (ES) 2.0 benchmark suite β€” like, the group-chat entry for the whole program. Let's get into it ✨


✨ SYNOPSIS ✨

glmark2 [options]

that's it. that's the whole vibe. options go in, numbers come out πŸ’…


🌸 DESCRIPTION 🌸

glmark2 is a benchmark for OpenGL (ES) 2.0. and the way it does that is honestly so restrained of it β€” it only uses the subset of the OpenGL 2.0 API that is compatible with OpenGL ES 2.0. nothing extra, nothing messy, no cap. πŸŽ€


πŸ‘‘ OPTIONS πŸ‘‘

  • -b, --benchmark BENCH β€” a benchmark to run, formatted like 'scene(:opt1=val1)*' πŸ¦‹ (you can use this option multiple times, and yes that's allowed, it's fine, breathe)
  • -f, --benchmark-file FILE β€” load benchmarks to run from a file that has a list of benchmark descriptions, one per line πŸ“ (also usable multiple times, iconic)
  • --validate β€” run a quick output validation test instead of running the benchmarks, like a lil vibe check for your setup
  • --data-path PATH β€” path to glmark2 models, shaders and textures 🌈
  • --frame-end METHOD β€” how to end a frame. options: [default,none,swap,finish,readpixels]
  • --swap-mode MODE β€” how to swap a frame. all modes are supported only in the DRM flavor, and 'fifo' is available in all flavors to force vsync. options: [default,immediate,mailbox,fifo] ⭐
  • --off-screen β€” render to an off-screen surface, main character energy but off-screen literally
  • --visual-config β€” the visual configuration to use for the rendering target: Β΄id=ID:red=R:green=G:blue=B:alpha=A:buffer=BUF:stencil=STENCIL:samples=SAMPLES'. the parameters may be defined in any order, and any omitted parameters assume a default value of '0' (id, samples), -1 (stencil) or '1' (red, green, blue, alpha, buffer). if 'id' is set to a non-zero value, all other parameters are ignored πŸ’€
  • --good-config β€” require a config that meets all the requested component requirements (see --visual-config), no shortcuts bestie
  • --reuse-context β€” use a single context for all scenes (by default, each scene gets its own context)
  • -s, --size WxH β€” size of the output window (default: 800x600) πŸŽ€
  • --fullscreen β€” run in fullscreen mode, which is equivalent to --size -1x-1
  • --results RESULTS β€” the types of results to report for each benchmark, as a ':' separated list. options: [fps,cpu,shader]
  • --results-file RESULTS-FILE β€” the file to save the results to, in the format determined by the file extension. options: [csv,xml]
  • --winsys-options OPTS β€” a list of 'opt=value' pairs for window system specific options, separated by ':'
  • -l, --list-scenes β€” display information about the available scenes and their options πŸ”₯
  • --show-all-options β€” show all scene option values used for benchmarks (by default only explicitly set options are shown)
  • --run-forever β€” run indefinitely, looping from the last benchmark back to the first πŸŒ€
  • --annotate β€” annotate the benchmarks with on-screen information, same as -b :show-fps=true:title=#info#
  • -d, --debug β€” display debug messages πŸ›
  • --version β€” display program version
  • -h, --help β€” display help 🫢

πŸ¦‹ BENCHMARKS πŸ¦‹

glmark2 offers a suite of scenes that can be used to measure many aspects of OpenGL (ES) 2.0 performance. the way each scene is rendered is configurable through a set of options. to get the available scenes and their acceptable options you can use the -l, --list-scenes command line option ✨

in glmark2, a benchmark is defined as a scene plus a set of option values. you can specify the list and order of the benchmarks to run by using the -b, --benchmark command line option (possibly multiple times). if no benchmarks are specified, a default set of benchmarks is used. and if a benchmark option is not specified, it assumes its default value (listed with -l, --list-scenes) πŸ’…

as a special case, a benchmark description string is allowed to not contain a scene name (i.e. to start with ':'). in that case, any specified option values are used as the default values for benchmarks following this description string. sneaky but legal πŸŽ€


🌈 EXAMPLES 🌈

to run the default benchmarks:

glmark2

to run a benchmark using scene 'shading' with a 'duration' of '5.0' seconds and 'shading' of type 'phong':

glmark2 -b shading:duration=5.0:shading=phong

to run a series of benchmarks, use the -b, --benchmark command line option multiple times:

glmark2 -b shading:duration=5.0 -b build:use-vbo=false -b texture

to set default option values for benchmarks:

glmark2 -b :duration=2.0 -b shading -b build -b :duration=5.0 -b texture

πŸ’œ AUTHOR πŸ’œ

glmark2 was written by Alexandros Frantzis and Jesse Barker, based on the original glmark by Ben Smith. kings, honestly πŸ‘‘


and that's the whole page, bestie β€” glmark2 version 2023.01, dated January 2023. go run some benchmarks, slay, and remember: --run-forever is a lifestyle choice, not a suggestion πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from