#server-performance

Optimalizované profily pro optimalizaci zatížení linuxových serverů

16 min čtení - 9. června 2026

hero section cover

Jak vybrat, použít a přizpůsobit vyladěné profily pro servery s GPU, databázové servery a linuxové servery s vysokou šířkou pásma, včetně příkladů a tipů pro nasazení pomocí Ansible.

Naladěné profily pro optimalizaci zatížení serverů

Výchozí nastavení systému Linux je vyladěno s ohledem na kompatibilitu, nikoli na výkon. Démon „tuned“ obsahuje předdefinované profily, které přizpůsobují regulátory CPU, plánovače I/O, parametry jádra a síťové vyrovnávací paměti tak, aby odpovídaly konkrétnímu zatížení. Tento příspěvek popisuje, jak profily fungují, který z nich zvolit pro běžné role serverů a jak vytvořit a nasadit vlastní profily v celé skupině serverů.


 

Jak fungují vyladěné profily

Profil je adresář v rámci /usr/lib/tuned/profiles/ (systémového) nebo /etc/tuned/profiles/ (custom), který obsahuje soubor tuned.conf soubor. Konfigurační soubor seskupuje parametry podle pluginů: [cpu], [disk], [sysctl], [vm], [bootloader], a tak dále. Po aktivaci profilu démon tuned aplikuje všechny parametry najednou, místo aby spouštěl desítky příkazů sysctl a sysfs příkazy ručně.

Profily se mohou navzájem dědit pomocí include . Profil throughput-performance například profil může sloužit jako základ pro vlastní profil databáze, který přepisuje pouze vm.swappiness nastavení Transparent Huge Pages.

Nástroj `tuned` běží ve dvou režimech. Statické ladění použije profil jednou při aktivaci a dále systém neovlivňuje, což je žádoucí na produkčních serverech, kde je konzistence důležitější než úspora energie. Dynamické ladění monitoruje využití disku, sítě a zatížení v reálném čase a nastavení upravuje za běhu. Výkonnostní profily ve výchozím nastavení dynamické ladění deaktivují, aby se zabránilo režijním nákladům spojeným s monitorováním.

Výběr správného profilu pro vaše pracovní zatížení

tuned dodává tucet profilů pokrývajících nejběžnější pracovní zátěže. Vyberte ten, který odpovídá tomu, co server skutečně dělá, místo toho, abyste nechali nastavený výchozí balanced profil.

Typ úlohyProfilCo dělá
Trénování a inferenční výpočty na GPUaccelerator-performanceUdrží CPU v nízkých C-stavech, čímž udržuje latenci mezi CPU a GPU pod 100 µs
Databáze (Postgres, MySQL, Redis)throughput-performanceDeaktivuje úsporný režim, optimalizuje diskové a síťové I/O a deaktivuje funkci Transparent Huge Pages
Síťové přenosy s vysokou šířkou pásma (CDN, replikace, datové potrubí)network-throughputZvětšuje síťové vyrovnávací paměti jádra pro trvalé přenosy s vysokou šířkou pásma
Služby citlivé na latencinetwork-latency nebo latency-performanceNastaví regulátor CPU na performance, deaktivuje hluboké stavy C
HPC a výpočetní clusteryhpc-computeRozšiřuje výkon v podmínkách s nízkou latencí díky NUMA a ladění paměti
Instance VPS (hostovaný operační systém)virtual-guestSnižuje hodnotu swappiness, zvyšuje předčítání z disku pro paravirtualizované I/O
Hostitelé hypervizoru KVMvirtual-hostOptimalizuje zápis špinavých stránek pro pracovní zátěže virtuálních strojů
Smíšené nebo neznámébalancedVýchozí nastavení. Upřednostňuje energetickou účinnost na úkor výkonu

Pro konkrétní databázové stroje je v balíčku tuned dodáváno také postgresql, mssqla oracle profily, které jdou ještě dále než throughput-performance díky ladění parametrů sdílené paměti a plánovače jádra pro tyto enginy.

Na serverech s více procesorovými sokety hraje důležitou roli topologie NUMA. Přístup k paměti vzdáleného uzlu může být dvakrát až třikrát pomalejší než lokální přístup. U úloh citlivých na latenci na počítačích s dvěma procesorovými sokety deaktivujte v profilu automatické vyvažování NUMA a ručně přiřaďte procesy ke konkrétním uzlům.

Instalace a použití profilů

Nainstalujte tuned na RHEL, Rocky, AlmaLinux nebo Fedora:

dnf install tuned
systemctl enable --now tuned

Na Debianu a Ubuntu se balíček také nazývá tuned a instaluje se pomocí apt. Pokud power-profiles-daemon již běží, skryjte jej, abyste předešli konfliktům:

systemctl mask --now power-profiles-daemon

Zobrazte seznam dostupných profilů, zeptejte se nástroje tuned, co doporučuje pro daný hardware, použijte profil a ověřte ho:

tuned-adm list
tuned-adm recommend
tuned-adm profile throughput-performance
tuned-adm verify

Aktivní profil je uložen v /etc/tuned/active_profile a zůstává zachován i po restartu. Chcete-li ladění zcela odstranit a změřit výchozí stav, spusťte tuned-adm off.

Vytvoření vlastního profilu pro AI, ML a úlohy s vysokou šířkou pásma

Pokud vám předdefinované profily pokryjí 90 % vašich potřeb, vytvořte vlastní profil, který zdědí nastavení z nejvhodnějšího profilu a přepíše zbývající parametry. Začněte s adresářem a konfiguračním souborem:

mkdir -p /etc/tuned/ai-gpu
cat > /etc/tuned/ai-gpu/tuned.conf <<'EOF'
[main]
summary=Custom profile for GPU training with high-bandwidth networking
include=accelerator-performance
 
[cpu]
governor=performance
 
[sysctl]
kernel.numa_balancing=0
net.core.rmem_max=268435456
net.core.wmem_max=268435456
net.ipv4.tcp_rmem=4096 87380 268435456
net.ipv4.tcp_wmem=4096 65536 268435456
 
[vm]
transparent_hugepages=never
 
[bootloader]
cmdline=hugepagesz=2M hugepages=16384 <a target="_blank" rel="noopener noreferrer" href="https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit">iommu</a>=pt
EOF
 
tuned-adm profile ai-gpu

Klíčové volby zde:

  • numa_balancing=0 zabrání jádru v přesouvání paměti mezi sokety během trénovacích běhů, což je častý zdroj zpoždění na počítačích s dvěma sokety a GPU.
  • Toto rmem_max a tcp_rmem zvyšují horní limit vyrovnávací paměti soketu na 256 MB. U propojení 25G, 40G nebo 100G mezi trénovacími uzly omezují výchozí velikosti vyrovnávacích pamětí propustnost výrazně pod rychlost linky.
  • transparent_hugepages=never odstraňuje kolísání latence způsobené THP u frameworků jako PyTorch a TensorFlow, které alokují velké tenzory.
  • iommu=pt nastaví IOMMU do režimu passthrough, který je nezbytný pro passthrough GPU a síťových karet (NIC) a snižuje režii při DMA na holém hardwaru.

Všechny změny pod [bootloader] vyžaduje restart. Po aktivaci profilu spusťte příkaz tuned-adm verify , abyste ověřili, že byly použity parametry běhu, a zkontrolujte journalctl -u tuned , zda se nevyskytují chyby. Proveďte benchmark před a po pomocí iostat -xz, numastata příslušným nástrojem pro zátěžové testy (iperf3, fionebo skutečným tréninkovým cyklem).

Je třeba výslovně zmínit jeden kompromis: deaktivace bezpečnostních opatření pro CPU přináší přibližně 3–8 % zisk u zátěží na GPU, ale stojí 15–30 % u zátěží s intenzivním využíváním systémových volání. Rozhodněte se na základě modelu hrozeb pro daný systém. U vyhrazeného trénovacího clusteru za firewallem obvykle výpočty hovoří ve prospěch jejich deaktivace. Na hostitelském serveru s více nájemci je nechte zapnutá.

Správa profilů v rámci serverového parku

Ruční aplikace nástroje tuned přestává být proveditelná, jakmile počet serverů přesáhne několik kusů. Ansible to řeší elegantně. Jediný playbook nainstaluje nástroj tuned a vytvoří adresáře s vlastními profily v /etc/tuned/ prostřednictvím template modulu a aplikuje správný profil pro každou skupinu inventáře.

Přiřazení profilů k rolím v inventáři:

  • Uzly GPU a AI: accelerator-performancenebo vlastní profil, který z něj dědí
  • Databázové servery: throughput-performance nebo profil specifický pro daný engine
  • Uzel CDN a okrajové uzly přenášející provoz s vysokou šířkou pásma: network-throughput
  • API a webové servery za vyvažovačem zátěže: network-latency
  • VPS a hostované systémy KVM: virtual-guest
  • Hostitelé hypervizorů: virtual-host

Skutečným provozním problémem je odchylka. Ruční sysctl změny, aktualizace balíčků, které přinášejí nové výchozí hodnoty, nebo zásah jiného nástroje pro správu konfigurace do nástroje tuned – to vše způsobí, že se nastavení bude lišit od toho, co uvádí profil. Naplánujte spuštění úlohy Ansible tuned-adm active a tuned-adm verify prostřednictvím cronu a nastavte upozornění na selhání. Sledujte /var/log/tuned/tuned.log na řádky „Verification failed“.

Závěr

tuned eliminuje většinu dohadů při ladění jádra a sysctl. Výchozí nastavení je pro běžné použití dostačující a profily specifické pro dané pracovní zatížení, jako je accelerator-performance, throughput-performance, a network-throughput vám umožní dosáhnout téměř optimálního nastavení, aniž byste museli psát jediný konfigurační soubor.

  • Vyberte nejvhodnější standardní profil, spusťte příkaz tuned-adm verifya poté proveďte měření výkonu
  • Vytvořte si vlastní profily tak, že zdědíte výchozí profil a přepsáte pouze to, co potřebujete
  • Pečlivě zvažte vyvážení NUMA, hugepages a velikosti síťových vyrovnávacích pamětí na GPU a serverech s vysokou šířkou pásma
  • Nasazujte pomocí Ansible a provádějte pravidelné audity, abyste zachytili případné odchylky

Potřebujete kapacitu na fyzickém hardwaru s dostatečnou rezervou šířky pásma, abyste tato nastavení mohli skutečně využít? Obraťte se na společnost FDC ohledně dedikovaných serverů navržených pro vysokou propustnost a zátěže na GPU.

Blog

Tento týden byly představeny

Další články
Návod k programu iperf3: Testování rychlosti sítě v systémech Linux a Windows
#bandwidth#server-performance

Návod k programu iperf3: Testování rychlosti sítě v systémech Linux a Windows

Nainstalujte si iperf3, proveďte testy šířky pásma a vyladěte TCP buffery, abyste dosáhli přesných výsledků v systémech Linux a Windows. Zahrnuje testování UDP, obousměrné testy a testy 10GbE+.

10 min čtení - 7. května 2026

#server-performance

Optimalizované profily pro optimalizaci zatížení linuxových serverů

16 min čtení - 9. června 2026

Další články
background image

Máte dotazy nebo potřebujete vlastní řešení?

icon

Flexibilní možnosti

icon

Globální dosah

icon

Okamžité nasazení

icon

Flexibilní možnosti

icon

Globální dosah

icon

Okamžité nasazení