Recently, I decided to read up on the Arch Wiki because I was bored, and I decided to read on the Improving performance pages. I found some cool topics and settings, this post is simply an overview of the ones I use and have configured, and others that don’t come from the wiki at all but that I have found somewhere on the internet.

Relevant links are added where available, expect this document to update frequently :3

Kernel parameters

Clock

Improves game performance at the cost of a small reduction in clock accuracy. Only in use on my laptop.

Sources:

/etc/cmdline/clock.conf
tsc=reliable clocksource=tsc

zswap

TLDR for why zswap and not zram: zswap is best if you already have a swap device (e.g. a swapfile), zram works best if you don’t have swap.

Sources:

/etc/cmdline/zswap.conf
zswap.enabled=1 zswap.shrinker_enabled=1 zswap.compressor=lz4

ACPI alarm

Sets the kernel to use ACPI alarms instead of HPET, enabled on my laptop.

Sources:

/etc/cmdline/acpi.conf
rtc_cmos.use_acpi_alarm=1

Sysctl

Swappiness

Lower the default swappiness to increase responsiveness, as i have 32G and up with system memory on all my systems.

Sources:

/etc/sysctl.d/99-swappiness.conf
vm.swappiness = 35

Network tuning

A couple minor tweaks, TLDR:

  • Enable TCP fast open
  • Attempt to probe for largest possible MTU
  • Set a larger starting MTU for probing

Sources:

/etc/sysctl.d/99-networking.conf
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_mtu_probing = 1
net.ipv4.tcp_base_mss = 1024

Others

Power profiles

I manage my power profiles manually using Power-profiles-daemon and powerprofilesctl:

powerprofilesctl set <power-saver|balanced|performance>