Re: [閒聊] ArchLinux的roonserver + realtime配置
看板Headphone (耳機)作者elguapo (HPHT Synthesized)時間2小時前 (2026/02/23 11:15)推噓2(2推 0噓 0→)留言2則, 2人參與討論串2/2 (看更多)
要真正的發揮 realtime kernel 在音訊處理上的威力,除了更換核心之外,
下列事項尚需要進一步調整:
1. BIOS
2. 開機參數
3. 應用軟體隔離及排程
這麼做都是為了降低延遲、減少 OS jitter,讓外部干擾降到最低。
以 Intel CPU 來說,BIOS 主要是關閉 Turbo Boost、關閉 Speed Shift、關閉
Hyper Threading、關閉 P-state 和 C-state、關閉 PCIe 電源管理等等。
開機參數的話,就會比較麻煩一點,以我的 HQPlayer Embedded 主機(Intel Xeon
W9-3575X)來說,經過一些考慮,我指定三顆核心當管家(house keeping),
一顆核心專門處理特定服務所佔網卡的 IRQ,其他 40 核心都給 HQPe 做 14 聲道
升頻 DSD256。
以下設定是針對 Ubuntu Server kernel 6.8 RT 修改 /etc/default/grub
首先先決定那幾個 CPU 要完全隔離,不受 kernel 調度:
isolcpus=managed_irq,domain,3,16-43
把需要更平順處理的 CPU 的 "ticker"(節拍器)關閉:
nohz=on nohz_full=3-43
同樣的,把需要更平順處理的 CPU 的 RCU call back 關閉(其實是卸載給管家):
rcu_nocb_poll rcu_nocbs=3-43
把 IRQ 卸載給管家:
irqaffinity=0-2
雖然 BIOS 已經關閉了 P-state / C-state,但開機的時候再宣告一次當保險:
intel_pstate=disable processor.max_cstate=0 intel_idle.max_cstate=0
關閉鎖死偵測:
nmi_watchdog=0 nosoftlockup
獨尊 TSC 為時鐘源:
clocksource=tsc tsc=reliable hpet=disable
關閉硬體漏洞緩解:
mitigations=off
故意錯開節拍器,避免全部 CPU 同一個時間 tick:
skew_tick=1
不讓 CPU 進入節電模式:
idle=poll
以上參數大概就能涵蓋 95% 的 realtime 需求。
開機參數設完之後,還要特別補幾個 sysctl 參數在 /etc/sysctl.conf
kernel.sched_rt_runtime_us=-1
kernel.timer_migration=0
kernel.perf_cpu_time_max_percent=0
若背景有 irqbalance 這個軟體在運行,請把它完全關閉並移除。重要的 IRQ
用手動指定,例如我指定 Ravenna/AES67 在 enp1s0 網卡上運行,並且將 IRQ
指定給第三顆 CPU 處理,那麼就可以借用 Intel 的 shell script 來調整:
set_irq_affinity -X one 3 enp1s0
其中 -X 是關閉 XPS,畢竟 AoIP 本質上是單一進出,單一 ring buffer 即可。
最後是 kernel thread 以及 user land 的 CPU 指派,我把 system slice 和
user slice 分別做了設定:
init scope AllowedCPUs=0-2
system slice AllowedCPUs=0-2
user slice AllowedCPUs=0-2
把 HQPlayer 以外的執行緒都丟給管家 CPU 處理,然後 HQPlayer Embedded:
hqplayerd slice AllowedCPUs=4-43
而 Ravenna/AES67 守護程式則跟所佔網卡 IRQ 放在 CPU 3:
ravenna slice AllowedCPUs=3
最後設定 HQPlayer Embedded 的 reserved cores 到完全隔離的 CPU 16-43,
跑起來 CPU 分佈看起來就很舒服了:
https://meee.com.tw/YwzDhws.jpg

觀察很多玩家使用了 realtime kernel 但卻沒有進一步去設定 BIOS、開機參數
及隔離加排程,誠屬可惜,在此野人獻曝一番,將所學及經驗分享。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.96.58 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Headphone/M.1771816534.A.E6A.html
推
02/23 11:34,
1小時前
, 1F
02/23 11:34, 1F
推
02/23 11:39,
1小時前
, 2F
02/23 11:39, 2F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Headphone 近期熱門文章
PTT數位生活區 即時熱門文章