GLMARK2-GBM(1)

πŸ“¦
version 2023.01^20250221gitcebbb63 Β· 2 versions
, in fedora 43, fedora 44

πŸ’– GLMARK2-GBM πŸ’–

okay bestie, sit down, hydrate, because we're reading the glmark2-gbm page from the General Commands Manual and honestly? it's giving benchmark royalty πŸ‘‘


🌸 NAME 🌸

glmark2-gbm β€” the OpenGL (ES) 2.0 benchmark suite ✨

πŸŽ€ SYNOPSIS πŸŽ€

glmark2-gbm [options]

πŸ¦‹ DESCRIPTION πŸ¦‹

so glmark2-gbm is a benchmark for OpenGL (ES) 2.0. the way it works is that it only uses the subset of the OpenGL 2.0 API that's compatible with OpenGL ES 2.0 β€” like, that's the whole vibe, no extra API energy, no cap 🫢


πŸ’… OPTIONS πŸ’…

here's the full menu, and no I did not skip a single one, every flag is here, periodt:

  • -b, --benchmark BENCH β€” a benchmark to run, written like 'scene(:opt1=val1)*'. yes you can use this option multiple times, stack 'em up πŸ’…
  • -f, --benchmark-file FILE β€” loads the benchmarks to run from a file, and that file contains a list of benchmark descriptions, one per line. also usable multiple times ✨
  • --validate β€” runs a quick output validation test instead of running the benchmarks. vibe check the output, not the whole benchmark 🧚
  • --data-path PATH β€” the path to the glmark2 models, shaders and textures 🌸
  • --frame-end METHOD β€” how to end a frame. choices are [default,none,swap,finish,readpixels] πŸ”₯
  • --swap-mode MODE β€” how to swap a frame. heads up bestie: all the modes are only supported in the DRM flavor, and 'fifo' is available in all flavors to force vsync. choices: [default,immediate,mailbox,fifo] πŸ’€
  • --off-screen β€” render to an off-screen surface πŸ™ˆ
  • --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 can be defined in any order, and any omitted parameters assume a default value of '0' (that's id, samples), -1 (stencil), or '1' (red, green, blue, alpha, buffer). and if 'id' is set to a non-zero value, all the other parameters are ignored πŸ‘€
  • --good-config β€” require a config that meets all the requested component requirements (peep --visual-config) πŸ‘‘
  • --reuse-context β€” use a single context for all the scenes. by default, each scene gets its own context, which is lowkey extra but that's the default 🀷
  • -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. choices: [fps,cpu,shader] πŸ“Š
  • --results-file RESULTS-FILE β€” the file to save the results to, in the format determined by the file extension. choices: [csv,xml] πŸ“
  • --winsys-options OPTS β€” a list of 'opt=value' pairs for window system specific options, separated by ':' πŸ’…
  • -l, --list-scenes β€” displays information about the available scenes and their options πŸ”
  • --show-all-options β€” show all the scene option values used for benchmarks. by default, only the explicitly set options are shown πŸ‘€
  • --run-forever β€” run indefinitely, looping from the last benchmark back to the first. main character energy, she never stops πŸ”
  • --annotate β€” annotate the benchmarks with on-screen information. this is the same as -b :show-fps=true:title=#info# πŸŽ€
  • -d, --debug β€” display debug messages πŸ›
  • --version β€” display program version ⭐
  • -h, --help β€” display help 🫢

πŸ‘‘ BENCHMARKS πŸ‘‘

glmark2-gbm offers a whole suite of scenes you can use to measure literally so many aspects of OpenGL (ES) 2.0 performance πŸ’― the way each scene is rendered is configurable through a set of options. and to get the available scenes plus their acceptable options, you just use the -l, --list-scenes command line option. easy ✨

in glmark2-gbm, 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 (and yes, possibly multiple times πŸ’…). if no benchmarks are specified, a default set of benchmarks is used. if a benchmark option isn't specified, it just assumes its default value (which you can see listed with -l, --list-scenes).

and here's the special case bestie, pay attention 🫢: a benchmark description string is allowed to not contain a scene name β€” meaning it's allowed to start with ':'. in that case, any specified option values are used as the default values for the benchmarks following that description string. iconic behavior honestly πŸ‘‘


🌈 EXAMPLES 🌈

to run the default benchmarks:

glmark2-gbm

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

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

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

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

to set default option values for benchmarks:

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

πŸ’œ AUTHOR πŸ’œ

glmark2-gbm was written by Alexandros Frantzis and Jesse Barker, based on the original glmark by Ben Smith. legends only 🫢


and that's the whole page bestie, you ate it πŸ’… this was glmark2-gbm version 2023.01, dated January 2023 β€” now go run some benchmarks and slay βœ¨πŸŒˆπŸ’–

πŸ“¦ where this page comes from