Red Hat Training

A Red Hat training course is available for RHEL 8

2.7. TuneD cpu-partitioning 配置集

要为对延迟敏感的工作负载调整 Red Hat Enterprise Linux 8,红帽建议使用 cpu-partitioning TuneD 配置集。

在 Red Hat Enterprise Linux 8 之前,低延迟 Red Hat 文档描述了实现低延迟调整所需的大量低级别步骤。在 Red Hat Enterprise Linux 8 中,您可以使用 cpu-partitioning TuneD 配置集更有效地执行低延迟性能优化。根据个人低延迟应用程序的要求,此配置集可轻松自定义。

下图显示了如何使用 cpu-partitioning 配置集。这个示例使用 CPU 和节点布局。

图 2.1. cpu-partitioning 图

CPU 分区

您可以使用以下配置选项在 /etc/tuned/cpu-partitioning-variables.conf 文件中配置 cpu-partitioning 配置集:

带有负载均衡的隔离 CPU

在 cpu-partitioning 图中,从 4 到 23 编号的块是默认的隔离 CPU。在这些 CPU 上启用了内核调度程序的进程负载均衡。它专为需要内核调度程序负载平衡的多个线程的低延迟进程而设计。

您可以使用 isolated_cores=cpu-list 选项在 /etc/tuned/cpu-partitioning-variables.conf 文件中配置 cpu-partitioning 配置集,它列出了 CPU 来隔离将使用内核调度程序负载平衡。

隔离的 CPU 列表用逗号分开,也可以使用一个短划线(如 3-5 )指定范围。这个选项是必须的。这个列表中缺少的任何 CPU 会自动被视为内务 CPU。

没有负载均衡的隔离 CPU

在 cpu-partitioning 图中,编号为 2 和 3 的块是不提供任何其他内核调度程序进程负载均衡的隔离 CPU。

您可以使用 no_balance_cores=cpu-list 选项在 /etc/tuned/cpu-partitioning-variables.conf 文件中配置 cpu-partitioning 配置集,它列出了不使用内核调度程序负载平衡的 CPU。

指定 no_balance_cores 选项是可选的,但此列表中的任何 CPU 都必须是 isolated_cores 列表中所列 CPU 的子集。

使用这些 CPU 的应用程序线程需要单独固定到每个 CPU。

日常 CPU
cpu-partitioning-variables.conf 文件中没有隔离的 CPU 会自动被视为内务 CPU。在内务 CPU 上,允许执行所有服务、守护进程、用户进程、可移动内核线程、中断处理程序和内核计时器。

其他资源

  • tuned-profiles-cpu-partitioning (7) man page