25.2. 使用 TuneD 的 isolated_cores 选项隔离 CPU


隔离 CPU 的初始机制是在内核引导命令行中指定 boot 参数 isolcpus=cpulist。为 RHEL for Real Time 执行此操作的建议方法是使用 TuneD 守护进程及其 tuned-profiles-realtime 软件包。

注意

tuned-profiles-realtime 版本 2.19 及更高版本中,内置函数 calc_isolated_cores 会自动应用初始 CPU 设置。/etc/tuned/realtime-variables.conf 配置文件包含默认变量内容为 isolated_cores=${f:calc_isolated_cores:2}

默认情况下,calc_isolated_cores 为每个插槽保留一个内核,用于内务处理并隔离其余内核。如果必须更改默认配置,请在 /etc/tuned/realtime-variables.conf 配置文件中注释掉 isolated_cores=${f:calc_isolated_cores:2} 行,并按照流程步骤使用 TuneD 的 isolated_cores 选项隔离 CPU。

先决条件

  • TuneDtuned-profiles-realtime 软件包已安装。
  • 您在系统上具有 root 权限。

流程

  1. 以 root 用户身份,在文本编辑器中打开 /etc/tuned/realtime-variables.conf
  2. 设置 isolated_cores=cpulist,以指定您要隔离的 CPU。您可以使用 CPU 编号和范围。

    示例:

    isolated_cores=0-3,5,7
    Copy to Clipboard

    这将隔离内核 0、1、2、3、5 和 7。

    在有 8 个内核的双插槽系统中,其中 NUMA 节点 0-3 和 NUMA 节点 1 具有内核 4-8,要为多线程应用程序分配两个内核,请指定:

    isolated_cores=4,5
    Copy to Clipboard

    这可防止任何用户空间线程分配给 CPU 4 和 5。

    要为不相关的应用程序从不同的 NUMA 节点选择 CPU,请指定:

    isolated_cores=0,4
    Copy to Clipboard

    这可防止任何用户空间线程分配给 CPU 0 和 4。

  3. 使用 tuned-adm 工具激活实时 TuneD 配置集。

    # tuned-adm profile realtime
    Copy to Clipboard
  4. 重启机器以使更改生效。

验证

  • 在内核命令行中搜索 isolcpus 参数:

    $ cat /proc/cmdline | grep isolcpus
    BOOT_IMAGE=/vmlinuz-6.12.0-55.9.1.el10_0.x86_64 root=/dev/mapper/rhel_foo-root ro crashkernel=auto rd.lvm.lv=rhel_foo/root rd.lvm.lv=rhel_foo/swap console=ttyS0,115200n81 isolcpus=0,4
    Copy to Clipboard
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat