| Flag |
Description |
Packages |
| autofdo |
Enable Clang AutoFDO (Automatic Feedback-Directed Optimization) support for profile-guided optimization |
2 |
| bbr3 |
Enable TCP BBR3 (Bottleneck Bandwidth and RTT) congestion control algorithm as default |
2 |
| bmq |
Project C BMQ (BitMap Queue) scheduler, alternative CPU scheduler with different performance characteristics |
2 |
| bore |
CachyOS Scheduler (BORE - Burst-Oriented Response Enhancer), optimized for desktop responsiveness |
3 |
| debug |
Enable debug-friendly optimizations and disable various debug features |
3 |
| deckify |
Enable patches for handheld devices like Steam Deck (includes WiFi, ACPI, and handheld-specific patches) |
3 |
| eevdf |
Default Linux EEVDF (Earliest Eligible Virtual Deadline First) scheduler |
3 |
| hugepage_always |
Always enable Transparent Huge Pages for better memory performance |
2 |
| hugepage_madvise |
Enable Transparent Huge Pages only when requested via madvise |
2 |
| hz_ticks_100 |
Set kernel timer frequency to 100 Hz (server/battery optimized) |
2 |
| hz_ticks_1000 |
Set kernel timer frequency to 1000 Hz (desktop optimized, default) |
2 |
| hz_ticks_250 |
Set kernel timer frequency to 250 Hz (balanced) |
2 |
| hz_ticks_300 |
Set kernel timer frequency to 300 Hz |
2 |
| hz_ticks_500 |
Set kernel timer frequency to 500 Hz |
2 |
| hz_ticks_600 |
Set kernel timer frequency to 600 Hz |
2 |
| hz_ticks_750 |
Set kernel timer frequency to 750 Hz |
2 |
| kcfi |
Enable kCFI (Kernel Control Flow Integrity) for additional security protection (requires clang) |
2 |
| kernel-builtin-zfs |
Build ZFS module directly into the kernel (not recommended, use sys-fs/zfs-kmod instead) |
2 |
| llvm-lto-full |
Enable LLVM full LTO - single threaded, slower compilation, more memory usage, potentially highest performance |
2 |
| llvm-lto-none |
|
2 |
| llvm-lto-thin |
Enable LLVM thin LTO (Link Time Optimization) - uses multiple threads, faster compilation, less memory usage |
2 |
| llvm-lto-thin-dist |
Enable LLVM thin LTO with distributed model rather than in-process linking |
2 |
| mgeneric |
Use generic x86-64 optimizations (default kernel optimizations, portable across machines) |
2 |
| mgeneric_v1 |
Use x86-64-v1 generic optimizations (baseline x86-64) |
2 |
| mgeneric_v2 |
Use x86-64-v2 generic optimizations (requires CMPXCHG16B, LAHF-SAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3) |
2 |
| mgeneric_v3 |
Use x86-64-v3 generic optimizations (requires AVX, AVX2, BMI1, BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE) |
2 |
| mgeneric_v4 |
Use x86-64-v4 generic optimizations (requires AVX512F, AVX512BW, AVX512CD, AVX512DQ, AVX512VL) |
2 |
| mnative |
Use compiler native CPU autodetection optimizations (recommended for local builds, not portable) |
2 |
| mzen4 |
Use AMD Zen 4 specific optimizations (znver4) for AMD Ryzen 7000 series and newer |
2 |
| o3 |
Enable KBUILD_CFLAGS -O3 optimization for maximum performance |
2 |
| os |
Optimize for size (-Os) instead of performance |
2 |
| per-gov |
Set CPU frequency performance governor as default instead of schedutil |
2 |
| preempt_full |
Full preemption model for lowest latency (PREEMPT) |
2 |
| preempt_lazy |
Lazy preemption model (PREEMPT_LAZY) |
2 |
| preempt_voluntary |
Voluntary preemption model for server workloads (PREEMPT_VOLUNTARY) |
2 |
| propeller |
Enable Clang Propeller optimization (basic block reordering) for better performance |
2 |
| rt |
EEVDF scheduler with realtime patches for low-latency applications |
2 |
| rt-bore |
BORE scheduler with realtime patches for low-latency applications |
3 |
| tickrate_full |
Use full tickless mode (NO_HZ_FULL) - can provide higher performance but lower consistency depending on hardware |
2 |
| tickrate_idle |
Use idle tickless mode (NO_HZ_IDLE) |
2 |
| tickrate_periodic |
Use periodic ticks (traditional approach) |
2 |