启用steal task功能以进行系统调度的优化。
当一个进程正在执行,而另一个进程需要执行但没有CPU时间片可用时,steal task功能会从正在运行的进程中抢占一部分CPU时间片,分配给需要执行的进程。
cat /sys/kernel/debug/sched_features |tr " " "\n" |grep STEAL
如果输出中包含STEAL或NO_STEAL(NO_STEAL意味着STEAL功能存在但可能被禁用),则表明当前内核支持steal task功能。
vim /etc/default/grub
sched_steal_node_limit=8
其中,8为NUMA的个数,请根据实际情况修改。
grub2-mkconfig -o /boot/efi/EFI/bclinux/grub.cfg
reboot
echo STEAL > /sys/kernel/debug/sched_features
如果需要禁用steal task功能,请使用如下命令。
echo NO_STEAL > /sys/kernel/debug/sched_features