GNU/Linux性能调优
Shus

IO Scheduler

1
2
3
4
5
6
7
8
9
10
11
12
/etc/udev/rules.d/60-ioschedulers.rules
---------------------------------------

# HDD
ACTION=="add|change", KERNEL=="sd[a-z]*", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq"

# SSD
ACTION=="add|change", KERNEL=="sd[a-z]*|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="kyber"

# NVMe SSD
ACTION=="add|change", KERNEL=="nvme[0-9]*", ENV{DEVTYPE}=="disk", ATTR{queue/scheduler}="none"

SATA SSD用Kyber, HDD就用bfq, 对于NVME SSD就用none (不用调度器),如果是高IO吞吐就用mq-deadline

File System

选用XFS,如果是NVME可以考虑用F2FS,在defaults后面加noatime

1
2
3
4
5
6
7
8
9
10
/etc/fstab
----------

UUID=8e818668-8820-4e05-b96a-5af11f238dfa / xfs defaults,noatime 0 0
UUID=60bfb94e-765a-4581-ad20-08885b3a5f33 /home xfs defaults,noatime 0 0
UUID=1ee3916e-5a47-4f76-9c76-ad6da35b8854 /home/GAME xfs defaults,noatime 0 0
UUID=19048c1d-ee7f-435b-a208-c8eaf45b03d0 /home/Downloads xfs defaults,noatime 0 0
UUID=BF02-DF77 /boot/efi vfat utf8 0 2
UUID=b18519af-2e63-4c8b-b1f2-a4e5ae0772a1 swap swap defaults 0 0

Power Preference

在桌面环境的时候比如GNOME大部分发行版可以在直接在system tray切换电源策略为performance或者cli工具切换

1
powerprofilesctl set performance

CPUfreq Governor

先查看是否支持performance策略

1
cpupower frequency-info --governors

然后切换到performance策略

1
sudo cpupower frequency-set -g performance

当默认策略是schedutil的时候(绝大多数发行版默认内核是该策略),也可以选择通过内核直接选performance强行使用performance策略

1
2
3
4
Power management and ACPI options --->
CPU Frequency scaling --->
Default CPUFreq governor (performance) --->
<X> performance

TCP BBR

1
2
3
4
5
/etc/sysctl.conf/99-tcp.conf
----------------------------

net.ipv4.tcp_congestion_control = bbr
net.core.default_qdisc = fq

随后应用这些设置

1
sudo sysctl -p

小工具:
https://github.com/fcanlnony/ptweak

 Comments
Comment plugin failed to load
Loading comment plugin