Performance
CPU mitigations
Section titled “CPU mitigations”| Option | Type | Default | Description |
|---|---|---|---|
marchyo.performance.disableMitigations |
bool |
true |
Disable CPU vulnerability mitigations for maximum performance |
marchyo.performance.disableMitigations = true;To keep mitigations enabled:
marchyo.performance.disableMitigations = false;Kernel selection
Section titled “Kernel selection”| Option | Type | Default | Description |
|---|---|---|---|
marchyo.performance.kernel |
enum |
"default" |
Kernel variant: default (nixpkgs LTS default), latest, zen, xanmod, lts |
marchyo.performance.kernel = "zen";Set via lib.mkDefault, so hosts can still override boot.kernelPackages
directly. "default" leaves the option unmanaged.
Kernel & I/O tuning
Section titled “Kernel & I/O tuning”Opt-in kernel/sysctl/IO tuning for throughput-oriented workloads. Disabled by
default. Enabling marchyo.performance.tuning.enable turns on the broadly-safe
sub-toggles (network, nvme, memory); the aggressive toggles (hugePages,
compute) stay off and must be opted into explicitly.
| Option | Type | Default | Description |
|---|---|---|---|
marchyo.performance.tuning.enable |
bool |
false |
Master switch; enables the safe sub-toggles below |
marchyo.performance.tuning.network.enable |
bool |
follows enable |
BBR congestion control, TCP Fast Open, MTU probing, larger socket buffers |
marchyo.performance.tuning.nvme.enable |
bool |
follows enable |
NVMe udev tuning: no-op scheduler, larger read-ahead and max request size |
marchyo.performance.tuning.memory.enable |
bool |
follows enable |
Lower swappiness, keep FS metadata cached, byte-based dirty-page thresholds |
marchyo.performance.tuning.memory.dirtyBytes |
positive int |
268435456 |
vm.dirty_bytes (256 MiB) — synchronous writeback threshold |
marchyo.performance.tuning.memory.dirtyBackgroundBytes |
positive int |
67108864 |
vm.dirty_background_bytes (64 MiB) — background writeback threshold |
marchyo.performance.tuning.hugePages.enable |
bool |
false |
2 MiB transparent huge pages always |
marchyo.performance.tuning.compute.enable |
bool |
false |
Relaxed PAM limits (memlock/rtprio/nofile/nproc) for trusted compute hosts |
# Safe defaults (network + nvme + memory):marchyo.performance.tuning.enable = true;
# Compute/CUDA workstation — opt into the aggressive toggles too:marchyo.performance.tuning = { enable = true; hugePages.enable = true; compute.enable = true;};