All games

OpenRCT2

Untested nobody has played it on Walnut yet

An open source re-implementation of RollerCoaster Tycoon 2: build a theme park, its rides and coasters, and keep the guests happy.

needs your own data made for keyboard and mouse keyboard and mouse simulation, strategy management tycoon theme park single player

Played sessions

Nobody has played it on Walnut yet: no session, no medal.

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: OpenRCT2 0.5.6 (our big-endian build, gamedb/games/openrct2/packages/openrct2/: openrct2 0.5.6+ds-1+ps3.N, plus openrct2-data and openrct2-music, both arch all; Debian's is little-endian only) with the user's RollerCoaster Tycoon 2 data (roller-coaster-tycoon2-data in /usr/share/games/roller-coaster-tycoon2, or the old rct2-data in /usr/share/games/rct2): smoke test, not benchmarked. The software renderer (the OpenGL engine needs GL 3.3): the game draws an 8-bit frame on the CPU and SDL's renderer (opengl on nouveau) scales and presents it. Base: borderless fullscreen 1920x1080 with window_scale 2, so the game renders 960x540 and SDL doubles it (the setting to ship: the PPE paints a quarter of the pixels). Variant full: window_scale 1 (renders 1920x1080). The park loads straight from the command line, no input needed: Electric Fields (small map, rides and guests from the start); variant big: Six Flags Magic Mountain (the largest RCT2 park; 2782 guests after 10000 ticks in our oracle run). Variant title: no park, the title sequence. Variants nosound (sound, ride music and title music off) and lean (nosound plus multithreading off and MALLOC_ARENA_MAX=1: the RAM knobs measured on the PC), sdlsw (SDL's software renderer and no GL framebuffer: no Mesa in the process at all). The simulation runs at its fixed 40 ticks per second; FPS counter on (top middle of the screen; the frame rate is capped at 40 too, uncap_fps off). The park's date at the bottom right should advance. Settings: a private user directory, $HOME/.config/OpenRCT2-ps3bench (--user-data-path; the player's own ~/.config/OpenRCT2 stays untouched) with config.ini written by setup() (BACKUP restores it; the game rewrites it at exit). infer_display_dpi=false (else the first start replaces window_scale with the display's DPI ratio), last_run_version set (no changelog window), autosave never (no disk writes during the run), game_path=the data folder (the game also finds either itself). First start only: the game indexes its objects (2533 from objects 1.8.0 plus RCT2's ObjData), scenarios and tracks into the user directory: on the PC 0.1 s, on the PPE expect seconds to a minute. Risks: RAM. Measured on the PC (amd64 build of the same source, Xvfb 1920x1080, SDL software renderer without GL in the process; RSS median over 120 s after a 60 s warm-up, build/tmp/openrct2 ram.sh): Six Flags Magic Mountain (2782 guests): 309 MB at 1920x1080, 300 MB at 960x540 x2, 260 MB lean (anon 228); Electric Fields: 264 / 253 / 232 MB. Of that, 70 MB is the game state: the entity table is sized for 65535 entities (512 bytes each, 57.7 MB for the registry; RCT2 parks hold at most 10000), zero-filled at start. With SDL's opengl renderer the GL driver comes on top (llvmpipe on the PC: +140 MB; nv30 is less, and the 960x540 texture is VRAM). Expect swap: watch MemAvailable, swap-ins and stalls. Speed: the PPE paints the viewport every frame (dirty rectangles only when nothing moves), unknown; the sim alone under qemu runs ~10x slower than the PC.

7 variants of the recipe
basethe recipe as it is, without a variant
full-
big-
title-
nosound-
lean-
sdlsw-

Conditions: what a variant adds to the recipe (its environment switches) and what ran alongside (the stall recorder, a profiler). Length: "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. Rows marked invalid or not comparable say why.

batch ssdroot8 OpenRCT2 first baseline: Electric Fields base, lean, sdlsw and Six Flags big x2 (SSD root .472 Mesa ps3.545~dev, openrct2 0.5.6 ps3.574)

2026-10-19 · batch 2026-10-19-ssdroot8-openrct2 · 8 runs in the batch (all games)

VariantConditionsBuildResolutionLength fps
whole run
Steady fps
in the window
1% low
fps
Stalls
frames over 100 ms
cpu
seconds
underruns
underruns
ram_free
MiB
vram
MiB
longest_ms
ms
stall_disk_s
seconds
stall_swap_s
seconds
stall_reclaim_s
seconds
stall_gpu_s
seconds
stall_cpu_s
seconds
stall_play_s
seconds
longest_play_ms
ms
base stall recorder at 10 ms Kernel ps3.472, Mesa ps3.545~dev the game's warm-up + 120 s 19.023.511.013.5 399.2303.09.925.78617.00.93.52.50.04.713.48617.0
big stall recorder at 10 ms Kernel ps3.472, Mesa ps3.545~dev the game's warm-up + 120 s 10.010.03.4283.5 357.0413.09.225.77800.51.35.62.90.032.852.27800.5
lean MALLOC_ARENA_MAX=1
stall recorder at 10 ms
Kernel ps3.472, Mesa ps3.545~dev the game's warm-up + 120 s 17.022.010.914.5 327.4252.014.925.68122.50.63.02.10.05.112.08122.5
sdlsw SDL_RENDER_DRIVER=software
SDL_FRAMEBUFFER_ACCELERATION=0
stall recorder at 10 ms
Kernel ps3.472, Mesa ps3.545~dev the game's whole run ---- 289.5281.515.1---------

Observations: same boot (2026-10-19 22:09-22:52Z), 8 runs of 300 s rotated base, lean, big, sdlsw x2, STALLS=1 MEM=1, none interfered; webcam picture right in all 16 photos (60 s and 150 s): the park with the scenario's objective window still open (nobody confirms it), Electric Fields (22 guests at 60 s, 36-52 at 150 s) or Six Flags Magic Mountain (2,7xx guests), sound=RUNNING. HUD steady fps (HUD = the GL swap rate, the game itself is capped at 40): base 23.5 (23, 24), lean 22 (23, 21), big 10 (10, 10); 1% low 11.0, 10.9, 3.4; CPU 399 s base, 328 lean, 357 big, 289 sdlsw. sdlsw has no GL, so no HUD: no fps number, only CPU (-28% against base) and the photos (36 guests at 150 s in the first run against 48 and 52 in base); another source (the game's FPS counter is not visible in the photos) is not wired up. Stalls: the window has 11-16 frames over 100 ms in base and lean (12-14 s), 280-287 in big (52 s, a 10 fps simulation, every frame over 100 ms). The 7.5-9.2 s longest frame is the same event in all six GL runs of base, lean and big: it starts 19-26 s after the client's start, 7-12 s after the first HUD frame (the load_end), with vswap, reclaim and CPU in it (vswap 1.8-3.2 s, reclaim 1.4-2.3 s, majflt 2300-3600, pswpin 5000-9300): the park's load and first drawing under swap, not gameplay; a second 1.3-4.0 s frame follows at 23-34 s. RAM: lowest MemAvailable 7.5 and 12.3 MiB (base), 14.5 and 15.4 (lean), 9.1 and 9.3 (big), 14.5 and 15.7 (sdlsw); peak RSS 129-137 MB with 100-138 MB in swap (smaps: the 70 MB entity table alone is 45-58 MB resident at the start and 25 MB in swap at the end); VRAM peak 25.7 MiB, GART 19.0 (sdlsw 0 and 15.0). ALSA underruns 289-317 (base), 238-266 (lean: sound is off, still counted), 410-416 (big), 264-299 (sdlsw); oal_wedge 0 in all 8