mirror of
https://github.com/lucannez64/darling-lol.git
synced 2026-10-27 19:54:38 +00:00
Game process (ARAM Hexgate: 84 -> 127 FPS average, slowest stretches ~110): - Local pthread mutexes, condition variables and Mach semaphores are on by default in the game process only, with /tmp/rclol-no-local-* opt-outs. The main thread's darlingserver waits fell from 1.36 to 0.10 ms per frame. - Local semaphores: the count and the slot generation change in one compare-exchange, a destroy leaves a negative marker, the table is reset after fork, and names the table did not create go to the server. - Metal: drop identical re-binds (keyed on the Indium object, depth-stencil retained), pass blit resources by reference, and stop resetting vertex descriptors twice. - Core isolation of the main thread is opt-in (/tmp/rclol-core-isolation); it lowered FPS in its only match. - Optimized libc/libc++/Foundation overlays, AVX2 string primitives, real CPU topology and their installers and offline checks. Tools and docs: - tools/riot-match-capture: passive /proc sampler, user-space IP profiler and reports, plus a comparison against the game's netstats. - tools/riot-lsem-model and tools/riot-metal-bind-model: host models that extract the shipped code and check it. - tools/install-riot-metal-pair.sh installs Metal and Indium together. - Status, setup, testing and troubleshooting docs updated with the measured matches and the switch table; manifest file counts match the patches. Co-Authored-By: Claude Opus 5.5 <[email protected]>
16 lines
694 B
Bash
Executable File
16 lines
694 B
Bash
Executable File
#!/bin/sh
|
|
# Build every overlay of the optimized library batch, in order.
|
|
#
|
|
# Each builder recompiles the component's own objects at -O2 with the flags
|
|
# the configured build gives them and relinks with the configured link line;
|
|
# none of them runs a full cmake build. The builders stop while a League game
|
|
# process is running, because a compile job would skew the FPS the user is
|
|
# measuring. Install the artifacts with
|
|
# python3 build/runtime/tools/install-riot-libs-runtime.py.
|
|
set -eu
|
|
project_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
|
|
cd "$project_dir"
|
|
python3 tools/build-riot-libc-runtime.py
|
|
python3 tools/build-riot-cxx-runtime.py
|
|
python3 tools/build-riot-platform-strings.py
|