raylib performance — backend comparison

rlgl  vs  rlvk  |  GPU AMD Radeon RX 7900 XTX (RADV NAVI31) (24560 MB)  |  Driver radv Mesa 26.1.6-arch1.1  |  OS Arch Linux (kernel 7.1.5-arch1-2)  |  3 runs × 10000 ms full speed

Green = best backend for that example/metric, red = worst. Frame time & FPS are the representative run; software (rlsw) has no GPU so its VRAM is ~0. Shader-heavy examples may not execute custom shaders on the software backend.

speedup = rlvk relative to rlgl, per metric direction (>1x favors rlvk); ° on a ratio means at least one side sits at its floor. Column injected into this archived report; regenerating on the capture machine rebuilds it from the rini data.

Frames per second (higher is better)

Sustained FPS at full speed (uncapped).
Examplerlglrlvkrlvk speedup
shapes_basic_shapes9549109771.15x
textures_tiled_drawing9519109511.15x
textures_particles_blending9423108641.15x
shapes_starfield_effect9445109521.16x
models_loading9465109061.15x
models_heightmap_rendering9480110011.16x
models_skybox_rendering540650690.94x
models_waving_cubes50112032.40x
models_first_person_maze542050710.94x
core_3d_camera_free539850530.94x
shaders_basic_lighting8946108481.21x
shaders_basic_pbr8453107361.27x
shaders_mandelbrot_set505846210.91x
shaders_raymarching_rendering238625001.05x
performance_stress_test721622.25x
performance_stress_test_direct42441.05x
bench_idle9509109501.15x
bench_drawcalls18415198.26x
bench_instanced703696911.38x

Median frame time, ms (lower is better)

Median per-frame CPU wall time.
Examplerlglrlvkrlvk speedup
shapes_basic_shapes0.0950.0571.67x
textures_tiled_drawing0.0920.0541.70x
textures_particles_blending0.0940.0571.65x
shapes_starfield_effect0.0940.0551.71x
models_loading0.0960.0541.78x
models_heightmap_rendering0.0940.0571.65x
models_skybox_rendering0.1790.1910.94x
models_waving_cubes1.9690.8262.38x
models_first_person_maze0.1790.1910.94x
core_3d_camera_free0.1800.1910.94x
shaders_basic_lighting0.1060.0681.56x
shaders_basic_pbr0.1110.0711.56x
shaders_mandelbrot_set0.1970.2150.92x
shaders_raymarching_rendering0.3970.4000.99x
performance_stress_test13.7816.1772.23x
performance_stress_test_direct23.51922.6591.04x
bench_idle0.0750.0591.27x
bench_drawcalls5.4330.6508.36x
bench_instanced0.1360.0931.46x

Average frame time, ms (lower is better)

Mean per-frame wall time.
Examplerlglrlvkrlvk speedup
shapes_basic_shapes0.1050.0911.15x
textures_tiled_drawing0.1050.0911.15x
textures_particles_blending0.1060.0921.15x
shapes_starfield_effect0.1060.0911.16x
models_loading0.1060.0921.15x
models_heightmap_rendering0.1050.0911.15x
models_skybox_rendering0.1850.1970.94x
models_waving_cubes1.9950.8312.40x
models_first_person_maze0.1840.1970.93x
core_3d_camera_free0.1850.1980.93x
shaders_basic_lighting0.1120.0921.22x
shaders_basic_pbr0.1180.0931.27x
shaders_mandelbrot_set0.1980.2160.92x
shaders_raymarching_rendering0.4190.4001.05x
performance_stress_test13.8506.1722.24x
performance_stress_test_direct23.55322.7541.04x
bench_idle0.1050.0911.15x
bench_drawcalls5.4490.6588.28x
bench_instanced0.1420.1031.38x

CPU utilization, %

Average process CPU as percent of the whole machine.
Examplerlglrlvkrlvk speedup
shapes_basic_shapes4.04.40.91x
textures_tiled_drawing3.44.20.81x
textures_particles_blending3.84.30.88x
shapes_starfield_effect3.74.30.86x
models_loading3.94.10.95x
models_heightmap_rendering3.44.00.85x
models_skybox_rendering2.32.50.92x
models_waving_cubes6.26.30.98x
models_first_person_maze2.12.50.84x
core_3d_camera_free2.62.61.00x
shaders_basic_lighting5.95.21.13x
shaders_basic_pbr6.05.31.13x
shaders_mandelbrot_set2.42.11.14x
shaders_raymarching_rendering1.01.20.83x
performance_stress_test7.46.21.19x
performance_stress_test_direct0.10.11.00x
bench_idle2.73.80.71x
bench_drawcalls9.96.31.57x
bench_instanced5.76.10.93x

RAM, MB

Average working-set memory.
Examplerlglrlvkrlvk speedup
shapes_basic_shapes163.7114.61.43x
textures_tiled_drawing161.4114.41.41x
textures_particles_blending163.7114.81.43x
shapes_starfield_effect161.3114.61.41x
models_loading170.3115.71.47x
models_heightmap_rendering164.7117.91.40x
models_skybox_rendering172.6159.91.08x
models_waving_cubes161.1114.21.41x
models_first_person_maze162.4114.91.41x
core_3d_camera_free163.4114.31.43x
shaders_basic_lighting162.2150.71.08x
shaders_basic_pbr174.2151.01.15x
shaders_mandelbrot_set161.2150.81.07x
shaders_raymarching_rendering162.1153.41.06x
performance_stress_test162.9151.31.08x
performance_stress_test_direct166.1150.61.10x
bench_idle161.3114.71.41x
bench_drawcalls163.8114.61.43x
bench_instanced163.4150.91.08x

GPU VRAM, MB

Average per-process video memory.
Examplerlglrlvkrlvk speedup
shapes_basic_shapes40.723.21.75x
textures_tiled_drawing40.723.41.74x
textures_particles_blending40.723.21.75x
shapes_starfield_effect40.723.21.75x
models_loading46.727.91.67x
models_heightmap_rendering48.926.21.87x
models_skybox_rendering42.829.21.47x
models_waving_cubes36.723.21.58x
models_first_person_maze44.723.71.89x
core_3d_camera_free36.723.21.58x
shaders_basic_lighting58.547.71.23x
shaders_basic_pbr89.673.41.22x
shaders_mandelbrot_set42.326.81.58x
shaders_raymarching_rendering38.723.21.67x
performance_stress_test103.7114.50.91x
performance_stress_test_direct46.736.51.28x
bench_idle44.736.51.22x
bench_drawcalls46.736.51.28x
bench_instanced50.736.51.39x