Played sessions
Testing is done with Walnut's rating tool (walnut-rate, on the console): how ratings are made and submitted.
Builds:
Walnut 0.1,
extremetuxracer 0.8.4-2+ps3.803
The platform builds under it (3)
| Linux kernel | 6.12.111+ps3.747 Walnut's build |
|---|---|
| Mesa | 26.2.4-1+ps3.721 Walnut's build |
| ps3rsx | 0.735+k6.12.111+ps3.747 Walnut's build |
| Date | Launcher | Rules | Play | Ended | Picture | |
|---|---|---|---|---|---|---|
| 2026-10-24 | Extreme Tux Racer | 1.0 | 12 min | quit | ok | Details |
Download all sessions as CSV (one row per session, the aspects as columns)
Rating history
The rating on each version it was tested on, newest first: each row is rated from that version's sessions alone, under the newest rules those sessions have the data for.
| Version | Tested | Medal | Rules | Frame rate | Smoothness | Sound | Picture | Stability | Display | Load | Play |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Walnut 0.1 extremetuxracer 0.8.4-2 |
2026-10-24 | Gold · 80 | 1.0 | 70 | 68 | 77 | 100 | 91 | - | 96 | 0.2 h 1 test |
Scripted benchmarks
Not rated: tests of driver and game changes. A script plays the same scene on the PS3 again and again (the desktop stopped, vsync off) to compare two builds of the game or of the graphics driver. The numbers say which build is faster; they never feed the medal.
How the script plays it: Extreme Tux Racer 0.8.4: no demo mode, so a race played once by a person is recorded as keyboard events and replayed into a virtual keyboard.
The recipe's full description
Extreme Tux Racer 0.8.4: no demo mode, so a race played once by a person is recorded as keyboard events (evemu-record) and replayed into a virtual keyboard (evemu-device + evemu-play). The same events at the same times from when ETR's window appears: ETR's physics follow the frame time, so at another frame rate Tux's line can drift a little (the game's technical.md). A marker event written into the keyboard when the window appears makes the recording start there. variant record: you play (menus too, then quit from the menu); the events land in the run directory as etr-race.evemu, to copy to assets/etr-race.evemu, cut after the last input that matters (assets/etr-race.evemu: Practice, one course, 69 s) base: the recorded race, replayed; fps from the Gallium HUD Steady state: the HUD window (60 s from the first frame, then 120 s; WINDOW_STOP=1 ends the run). The recording is ~69 s (menus to 24.7 s, the race after), so the race is raced again: after the replay, Enter on the game-over screen (back to the race selection, the course still chosen), then the recording from ETR_LOOP_FROM (24.7 s: the Enter that starts the race) once more, up to ETR_LOOPS times; during.log stamps each. Caveats: ETR's physics take the frame time as their step, and the inputs replay at wall-clock times, so at another frame rate (or a faster second load) Tux's line can drift from the recorded one, more in the later races; the window also holds the game-over and selection screens and the reload between races. A fixed time step in our etr (states.cpp: g_game.time_step from an environment variable) would make the steering repeatable per frame, but then the wall-clock inputs drift whenever the frame rate does.
13 variants of the recipe
base stands for the game | the recipe as it is, without a variant |
|---|---|
record | - |
gloff | Our extremetuxracer (gamedb/games/etr/packages/etr/): fewer, larger GL submissions, each with an environment variable (src/glfast.h in the package). base has them all on, gloff is ETR_GL=0 (the game as Debian draws it), a no* variant is base with one change off. |
noterrain | - |
notux | - |
noshadow | - |
notracks | - |
notrees | - |
treesorder | - |
noparticles | - |
nosnow | - |
nohud | - |
nobind | - |
One table, a header row per batch (what it tested and what came out). Conditions: what a variant adds to the recipe (its environment switches) and what ran alongside (the stall recorder, a profiler); a column appears only when this game has a value in it. Rows marked invalid or not comparable say why.
What the run length means
"warm-up + 120 s" is a steady-state run, which leaves out a 60 s warm-up and measures 120 s or more; "whole run" counted everything from the start, the way runs before 2026-10-17 did.
| Variant | Conditions | Steady fps in the window |
1% low fps |
Stalls frames over 100 ms |
fps whole run |
Build | Run length | ram free MiB | vram MiB | stall play s seconds | longest play ms ms | sound faults per min faults a minute | cpu seconds | underruns underruns | longest ms ms |
Note |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Suite summary
2026-10-20 · suite-summary-2026-10
Tested: Not a test run: the suite's 13 benchmarked games (15 rows, with OpenArena's two renderers and OpenTTD's two blitters) gathered with their known numbers as of October 2026, each value naming the batch or document it came from. Result: It is the calibration of the rating formula (rules 1): the scale was tried on these numbers before any game was rated, and the GameDB calibration table is generated from it. Benchmarks never give a medal; medals come from played sessions only. | ||||||||||||||||
| Extreme Tux Racer | the recipe as it is | 59.0 | 27.3 | - | - | - | warm-up + 120 s | 29 | 58 | 2.9 | 483 | 0 | - | - | - | right, right |
Real-time audio as shipped: ps3-desktop 0.1013 (limits.d rtprio 10 + ps3-rt-audio, RTAUDIO=1) against none (RTPRIO=0) on dsda-doom software (owncfg), Extreme Tux Racer, X-Moto and Neverball (kernel .874)
2026-10-28 · 2026-10-28-rt-audio-shipped
Tested: Real-time audio as shipped in ps3-desktop 0.1013 (a priority limit plus ps3-rt-audio, which game mode uses to put the game's audio thread on SCHED_RR), against none, on dsda-doom, Extreme Tux Racer, X-Moto and Neverball. Result: Shipped. Audible dropouts a run fell from 29 to 2 in dsda-doom, 26 to 2 in Extreme Tux Racer and 3 to 0 in Neverball, with steady fps unchanged within 0.4%. The 1% lows came out a little lower in the light games, with the ranges touching. What we saw25 runs in three rounds, games interleaved, arm order alternating. Two Neverball runs with it were interfered by the agent's own SSH checks and left out, so Neverball has 2 runs with it. Every run fullscreen at 1920x1080 and in gameplay at its 40 s screenshot.
| ||||||||||||||||
base |
rtaudio | 59 | 29.2 | 1 | 59 | - | warm-up + 120 s | 53.8 | 58.0 | 0.4 | 339.6 | - | 128.5 | 0 | 339.6 | |
base |
real-time priority 0 | 56 | 19.8 | 0 | 59 | - | warm-up + 120 s | 53.3 | 58.1 | 0.0 | 96.2 | - | 148.9 | 0 | 96.2 | |
RT audio thread: SCHED_RR 1 from outside (RTPRIO=10+RTTHREAD) and nice -20 (NICELIM=40) against none on dsda-doom software (owncfg), Extreme Tux Racer and OpenTTD (kernel .874)
2026-10-28 · 2026-10-28-rt-audio-thread
Tested: Whether putting the game's own audio thread on real-time priority (SCHED_RR 1, set from outside) or running the game at nice -20 stops the audible dropouts in dsda-doom (software renderer), Extreme Tux Racer and OpenTTD. Result: SCHED_RR clearly helps: median dropouts a run fell from 19 to 2 in dsda-doom and from 24 to 3.5 in Extreme Tux Racer, at no frame-rate cost. nice -20 helped less and cost dsda-doom 2%. A per-game opt-in was recommended; not shipped in this form. What we saw38 runs in four rounds, order rotated. 14 were interfered by another agent's SSH logins and left out. Every counted run was fullscreen at 1920x1080 and in gameplay at its 40 s screenshot.
| ||||||||||||||||
base |
real-time priority 0 | 59 | 29.9 | 1 | 59 | - | warm-up + 120 s | 47.1 | 58.1 | 0.1 | 114.2 | - | 127.6 | 0 | 114.2 | |
base |
real-time priority 10 switch rtthread |
59.0 | 28.6 | 1.5 | 59.0 | - | warm-up + 120 s | 45.8 | 58.0 | 0.2 | 172.4 | - | 126.8 | 0.0 | 172.4 | |
batch 17: ETR uncapped, start-up profiles x5, shader cache cold/warm, OpenArena gl2 memory variants, Mesa sysmem switches, Sauerbraten shortnormals
2026-10-18 · 2026-10-18-batch17
Tested: A mixed batch: ioquake3 462's new colour path and memory variants for OpenArena's OpenGL 2 renderer, Mesa's system-memory copy switches, BananaBread's short normals, a warm shader cache, Extreme Tux Racer without a frame cap, and start-up profiles. Result: ioquake3 462 cuts OpenArena's stalls from 9-11 s to 0.7-2.6 s at 57-60 fps, Mesa's system-memory switches fix the old colour path's stalls, and BananaBread's short normals give +17%. The shader cache gives no faster loads and Extreme Tux Racer's 59 fps is not a vsync cap. What we saw
| ||||||||||||||||
base |
the recipe as it is | 59 | 27.3 | 11 | 59 | - | warm-up + 120 s | 29.1 | 58.0 | 2.9 | 483.3 | - | 132.8 | 0 | 483.3 | |
xmoto ps3.323 + etr ps3.324 (game-side batching) + Mesa ps3.299
2026-10-17 · 2026-10-17-xmoto-etr-batching
Tested: Our X-Moto and Extreme Tux Racer packages with the game's drawing batched into far fewer OpenGL calls and draws per frame. Result: A large win: X-Moto went from 44.5 to 166.5 fps with the same picture, and Extreme Tux Racer from 52 to 59 fps. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 59.0 | Mesa ps3.299 | whole run | 53.5 | 58.0 | - | - | - | 53.0 | 0.0 | - | |
gloff |
ETR_GL=0 | - | - | - | 52.0 | Mesa ps3.299 | whole run | 48.0 | 52.5 | - | - | - | 83.6 | 0.0 | - | |
Mesa ps3.262 + ps3rsx 0.249
2026-10-17 · 2026-10-17-mesa-262
Tested: Mesa ps3.262 (patches 0019 to 0025: fewer words sent to the GPU per draw) across the suite, against ps3.246. Result: Big gains in several games: OpenArena +23%, Yamagi +24%, X-Moto +21%, Extreme Tux Racer and dsda-doom +15%. Armagetron fell from 60 to 51 fps, which the next batches traced. Single runs; BananaBread's drop is a memory stall, not a driver number. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 53 | Mesa ps3.262, ps3rsx 0.249 | whole run | 52.6 | 52.5 | - | - | - | 84.7 | 0 | - | |
Mesa ps3.246 + ps3rsx 0.249
2026-10-17 · 2026-10-17-mesa-246-ps3rsx-249
Tested: The first full suite round after the reboot into ps3rsx 0.249, one run per game, as a baseline. Result: Every game ran with the right picture. The sound was right except in dsda-doom (MIDI music), BananaBread and OpenTTD. Single runs, so differences of a few fps are noise. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 46 | Mesa ps3.246, ps3rsx 0.249 | whole run | 63.7 | 52.5 | - | - | - | 84.0 | 0 | - | |
Extreme Tux Racer replay cut at 69 s (Mesa ps3.225)
2026-10-16 · 2026-10-16-etr-replay-cut
Tested: The Extreme Tux Racer replay cut after the last steering input (69 s), so that only the race counts. Result: 45 fps on the driver's frame counter in a single run. The input replays the same each time, but the game's physics follow the frame time, so Tux's line can drift at another frame rate. No decision recorded. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 45 | Mesa ps3.225 | whole run | 61.5 | 52.5 | - | - | - | 85.3 | - | - | |
Extreme Tux Racer race recorded and replayed uncut (Mesa ps3.225)
2026-10-16 · 2026-10-16-etr-replay-uncut
Tested: A benchmark for Extreme Tux Racer: the user raced while the keyboard was recorded, then the recording was replayed into a virtual keyboard. Result: The replay works, but the uncut recording runs past the race into the results and menu screens, which show as stretches of about 20 fps at the end. The next batch cut that tail; these numbers are not comparable with the cut replay. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 22 | Mesa ps3.225 | whole run | 62.7 | 52.6 | - | - | - | 140.8 | - | - | |
record |
the recipe as it is | - | - | - | 21 | Mesa ps3.225 | whole run | 68.9 | 52.6 | - | - | - | 139.2 | - | - | |
Mesa ps3.223 + ps3rsx 0.219
2026-10-16 · 2026-10-16-mesa-223
Tested: Where the CPU time goes in five games on Mesa ps3.223, each profiled for 15 s. Result: The driver stack, not the games, takes most of the CPU: Mesa 28 to 56%, ps3rsx 6 to 16%. That started the per-draw work in Mesa ps3.246 and ps3.262 and ps3rsx 0.249. The profiler slowed the runs, so the fps are not for comparison. What we saw
not comparable every game was profiled with perf during the run, which slows it. | ||||||||||||||||
basenot comparable |
the recipe as it is | - | - | - | 40 | Mesa ps3.223, ps3rsx 0.219 | whole run | 19.1 | 52.7 | - | - | - | 44.6 | - | - | |
Group 1 smokes ETR and Armagetron on Mesa ps3.223
2026-10-16 · 2026-10-16-etr-armagetron-smokes
Tested: First runs of Extreme Tux Racer and Armagetron on Mesa ps3.223. Result: Both start and draw. Extreme Tux Racer ran with the right picture and no kernel errors; Armagetron's first launch failed on a wrong option in our recipe, and the rerun only showed its first-run screen. No benchmark numbers. What we saw
| ||||||||||||||||
base |
the recipe as it is | - | - | - | 42 | Mesa ps3.223 | whole run | 67.4 | 52.5 | - | - | - | 46.0 | - | - | |