Repository navigation
Colibri Benchmarking and Optimization Report #2455
mkaouri
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
1. Overview & Goal
This report chronicles a successful end-to-end deployment, automated calibration, and physical disk-bound optimization of the Qwen3.6-35B-A3B Mixture-of-Experts architecture using Colibri. The objective was to run this massive model locally on a standard, pure-CPU Ubuntu server without discrete GPU hardware, and maximize the decoding speed solely through software tuning and environment adjustments.
2. Environment & System Topology
Before starting the optimization loops, we audited the physical layer of the host system:
(base)active environment).0-11).NUMA node(s): 1(Unifiednode0mapping CPU cores0-11). This confirms that cross-socket memory access latency does not impact this machine; hence, interleaved allocations viaCOLI_NUMA=1have a neutral effect.Qwen3.6-35B-A3B(23 GB footprint on disk; 256 total structural experts, routing 8 active experts per layer via a 30-layer DeltaNet linear attention architecture).3. Installation & Out-of-the-Box Baseline
The runtime engine was built from source inside the root profile:
The automated script compiled the optimized C binary for our CPU architecture and downloaded the model weights directly to the default catalog path:
/root/colibri-models/qwen36-35b.Initial Baseline Test
We initiated an interactive CLI chat session against unoptimized file-system buffering structures:
4. Hardware Profiling & Tuning Sweeps
To extract better thread efficiency, we executed Colibri's internal automated parameter sweeper:
Telemetry Logs & Analysis:
omp-3) and shifting sliding expert caches (cache-75,cache-50):T(1) 231.9 msdown toT(1) 251.0 msacross cache variations.T(1) 111.3 msto127.3 ms.✓ baseline retained: no candidate cleared the 3.0% gain and safety gates. It permanently locked the hardware profile signature at/root/.config/colibri/tuning/76677b91b02463e62dca.json.5. Bypassing Page Cache with Direct I/O
Because Mixture-of-Experts models rely on streaming matrix shards continuously from storage layers, system page cache buffering creates an inherent bottleneck on CPU setups. We injected the
DIRECT=1runtime flag to enforceO_DIRECT, forcing the binary to read weights straight from the disk controllers:The Optimization Matrix
c/coli chat --model [...]COLI_NUMA=1 c/coli chat [...]c/coli tune --model [...]DIRECT=1 c/coli chat [...]O_DIRECT)6. Engineering Conclusions
By adjusting runtime flags and using Direct I/O (
DIRECT=1), generation speeds increased from 0.91 tok/s to 1.00 tok/s.On pure CPU architectures, once software bottlenecks are eliminated, performance scales strictly with physical hardware bandwidth. Since MoE layers demand heavy disk I/O on every sequential token pass, achieving higher token velocities (e.g., matching the 6.0 tok/s to 9.9 tok/s thresholds seen in project benchmarks) requires migrating the underlying storage blocks to high-performance PCIe NVMe M.2 Solid State Drives.
Big thanks to the contributors and maintainers of Colibri for keeping this engine dependency-free and making local inference on budget hardware highly accessible!
All reactions