搜索

第 29 章 限制 SCHED_OTHER 任务迁移

download PDF

您可以使用 sched_nr_migrate 变量限制 SCHED_OTHER 迁移到其他 CPU 的任务。

先决条件

  • 管理员特权。

29.1. 任务迁移

如果 SCHED_OTHER 任务生成大量其他任务,则它们将在同一 CPU 上运行。迁移 任务或 softirq 将尝试平衡这些任务,以便它们可在空闲 CPU 上运行。

可以调整 sched_nr_migrate 选项,以指定每次将移动的任务数量。因为实时任务具有不同的迁移方法,所以它们不会直接受到此问题的影响。但是,当 softirq 移动任务时,它会锁定 run 队列 spinlock,从而禁用中断。

如果需要移动大量任务,它会在中断禁用时发生,因此不允许同时进行计时器事件或唤醒。当将 sched_nr_migrate 设置为较大的值时,这可能会导致实时任务具有严重的延迟。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.