Jump To Close Expand all Collapse all Table of contents 为低延迟操作优化 RHEL 9 使开源包含更多 对红帽文档提供反馈 1. RHEL 9 中的实时内核调整 Expand section "1. RHEL 9 中的实时内核调整" Collapse section "1. RHEL 9 中的实时内核调整" 1.1. 调整指南 1.2. 线程调度策略 2. 指定要运行的 RHEL 内核 Expand section "2. 指定要运行的 RHEL 内核" Collapse section "2. 指定要运行的 RHEL 内核" 2.1. 显示默认内核 2.2. 显示运行的内核 2.3. 配置默认内核 3. 运行并解释硬件和固件延迟测试 Expand section "3. 运行并解释硬件和固件延迟测试" Collapse section "3. 运行并解释硬件和固件延迟测试" 3.1. 运行硬件和固件延迟测试 3.2. 解释硬件和固件延迟测试结果 4. 运行并解释系统延迟测试 Expand section "4. 运行并解释系统延迟测试" Collapse section "4. 运行并解释系统延迟测试" 4.1. 先决条件 4.2. 运行系统延迟测试 5. 设置持久性内核调整参数 Expand section "5. 设置持久性内核调整参数" Collapse section "5. 设置持久性内核调整参数" 5.1. 进行持久性内核调整参数更改 6. 通过避免运行不必要的应用程序来提高性能 7. 由于日志而减少或避免系统变慢的问题 Expand section "7. 由于日志而减少或避免系统变慢的问题" Collapse section "7. 由于日志而减少或避免系统变慢的问题" 7.1. 禁用一个时间 7.2. 其他资源 8. 禁用延迟敏感负载的图形控制台输出 Expand section "8. 禁用延迟敏感负载的图形控制台输出" Collapse section "8. 禁用延迟敏感负载的图形控制台输出" 8.1. 禁用图形控制台日志记录到图形适配器 8.2. 禁用在图形控制台上打印的消息 9. 管理系统时钟以满足应用程序需求 Expand section "9. 管理系统时钟以满足应用程序需求" Collapse section "9. 管理系统时钟以满足应用程序需求" 9.1. 硬件时钟 9.2. 查看系统中可用的时钟源 9.3. 查看当前正在使用的时钟源 9.4. 临时更改要使用的时钟源 9.5. 读取硬件时钟源的成本比较 9.6. clock_timing 程序 10. 控制电源管理转换 Expand section "10. 控制电源管理转换" Collapse section "10. 控制电源管理转换" 10.1. 节能状态 10.2. 配置电源管理状态 10.3. 其他资源 11. 为系统调整设置 BIOS 参数 Expand section "11. 为系统调整设置 BIOS 参数" Collapse section "11. 为系统调整设置 BIOS 参数" 11.1. 禁用电源管理以提高响应时间 11.2. 通过禁用错误检测和修正单元来提高响应时间 11.3. 通过配置系统管理中断提高响应时间 12. 通过隔离中断和用户进程来最小化系统延迟 Expand section "12. 通过隔离中断和用户进程来最小化系统延迟" Collapse section "12. 通过隔离中断和用户进程来最小化系统延迟" 12.1. 中断和进程绑定 12.2. 禁用 irqbalance 守护进程 12.3. 将 CPU 从 IRQ 平衡中排除 12.4. 手动将 CPU 关联性分配给单独的 IRQ 12.5. 使用 taskset 工具将进程绑定到 CPU 13. 管理内存不足状态 Expand section "13. 管理内存不足状态" Collapse section "13. 管理内存不足状态" 13.1. 先决条件 13.2. 更改内存不足值 13.3. 以内存不足状态时终止进程以终止 13.4. 为进程禁用内存不足终止程序 14. 通过禁用 PC 卡守护进程降低 CPU 使用率 15. 平衡日志记录参数 16. 使用 tuna CLI 提高延迟 Expand section "16. 使用 tuna CLI 提高延迟" Collapse section "16. 使用 tuna CLI 提高延迟" 16.1. 先决条件 16.2. tuna CLI 16.3. 使用 tuna CLI 隔离 CPU 16.4. 使用 tuna CLI 将中断移到指定的 CPU 16.5. 使用 tuna CLI 更改进程调度策略和优先级 17. 安装 kdump Expand section "17. 安装 kdump" Collapse section "17. 安装 kdump" 17.1. kdump 17.2. 使用 Anaconda 安装 kdump 17.3. 在命令行中安装 kdump 18. 在命令行中配置 kdump Expand section "18. 在命令行中配置 kdump" Collapse section "18. 在命令行中配置 kdump" 18.1. 估算 kdump 大小 18.2. 配置 kdump 内存用量 18.3. 配置 kdump 目标 18.4. 配置 kdump 核心收集器 18.5. 配置 kdump 默认失败响应 18.6. 测试 kdump 配置 19. 启用 kdump Expand section "19. 启用 kdump" Collapse section "19. 启用 kdump" 19.1. 为所有安装的内核启用 kdump 19.2. 为特定安装内核启用 kdump 19.3. 禁用 kdump 服务 20. 确保已挂载 debugfs 21. 设置调度程序优先级 Expand section "21. 设置调度程序优先级" Collapse section "21. 设置调度程序优先级" 21.1. 查看线程调度优先级 21.2. 在引导过程中更改服务优先级 21.3. 配置服务的 CPU 使用量 21.4. 优先级映射 21.5. 其他资源 22. 非一致性内存访问 23. RT 的 RHEL 中的 InfiniBand 24. 使用 RoCE 和高性能网络 25. 网络确定提示 Expand section "25. 网络确定提示" Collapse section "25. 网络确定提示" 25.1. 合并中断 25.2. 避免网络拥塞 25.3. 监控网络协议统计 25.4. 其他资源 26. 使用 trace-cmd 追踪延迟 Expand section "26. 使用 trace-cmd 追踪延迟" Collapse section "26. 使用 trace-cmd 追踪延迟" 26.1. 安装 trace-cmd 26.2. 运行 trace-cmd 26.3. trace-cmd 示例 26.4. 其他资源 27. 使用 tuned-profiles-realtime 隔离 CPU Expand section "27. 使用 tuned-profiles-realtime 隔离 CPU" Collapse section "27. 使用 tuned-profiles-realtime 隔离 CPU" 27.1. 选择要隔离的 CPU 27.2. 使用 TuneD 的 isolated_cores 选项隔离 CPU 28. 使用 nohz 和 nohz_full 参数隔离 CPU 29. 限制 SCHED_OTHER 任务迁移 Expand section "29. 限制 SCHED_OTHER 任务迁移" Collapse section "29. 限制 SCHED_OTHER 任务迁移" 29.1. 任务迁移 29.2. 使用 sched_nr_migrate 变量限制 SCHED_OTHER 任务迁移 30. 减少 TCP 性能高峰 Expand section "30. 减少 TCP 性能高峰" Collapse section "30. 减少 TCP 性能高峰" 30.1. 关闭 TCP 时间戳 30.2. 打开 TCP 时间戳 30.3. 显示 TCP 时间戳状态 31. 减少 CPU 性能高峰 32. 使用 RCU 回调提高 CPU 性能 Expand section "32. 使用 RCU 回调提高 CPU 性能" Collapse section "32. 使用 RCU 回调提高 CPU 性能" 32.1. 卸载 RCU 回调 32.2. 移动 RCU 回调 32.3. 从中断 RCU 卸载线程中分离 CPU 32.4. 其他资源 33. 实时调度问题和解决方案 34. 应用程序调整和部署 Expand section "34. 应用程序调整和部署" Collapse section "34. 应用程序调整和部署" 34.1. 实时应用程序中的信号处理 34.2. 同步线程 34.3. 实时调度程序优先级 34.4. 其他资源 35. 使用 TCP_NODELAY 提高网络延迟 Expand section "35. 使用 TCP_NODELAY 提高网络延迟" Collapse section "35. 使用 TCP_NODELAY 提高网络延迟" 35.1. 使用 TCP_NODELAY 的效果 35.2. 启用 TCP_NODELAY 35.3. 启用 TCP_CORK 35.4. 其他资源 36. 加载动态库 37. 使用 mutex 防止资源过度使用 Expand section "37. 使用 mutex 防止资源过度使用" Collapse section "37. 使用 mutex 防止资源过度使用" 37.1. mutex 选项 37.2. 创建 mutex 属性对象 37.3. 创建带有标准属性的 mutex 37.4. 高级 mutex 属性 37.5. 清理 mutex 属性对象 37.6. 其他资源 38. 分析应用程序性能 Expand section "38. 分析应用程序性能" Collapse section "38. 分析应用程序性能" 38.1. 收集系统范围统计信息 38.2. 归档性能分析结果 38.3. 分析性能分析结果 38.4. 列出预定义的事件 38.5. 获取有关指定事件的统计信息 38.6. 其他资源 39. 使用压力测试实时系统 Expand section "39. 使用压力测试实时系统" Collapse section "39. 使用压力测试实时系统" 39.1. 测试 CPU 浮动点单元和处理器数据缓存 39.2. 使用多个 stress 机制测试 CPU 39.3. 测量 CPU heat 生成 39.4. 使用 bogo 操作测量测试结果 39.5. 生成虚拟内存压力 39.6. 测试设备上的大型中断负载 39.7. 在程序中生成主要页面错误 39.8. 查看 CPU 压力测试机制 39.9. 使用验证模式 40. 创建和运行容器 Expand section "40. 创建和运行容器" Collapse section "40. 创建和运行容器" 40.1. 创建容器 40.2. 运行容器 40.3. 其他资源 41. 显示进程的优先级 Expand section "41. 显示进程的优先级" Collapse section "41. 显示进程的优先级" 41.1. chrt 工具 41.2. 使用 chrt 实用程序显示进程优先级 41.3. 使用 sched_getscheduler 库调用显示进程优先级 41.4. 显示调度程序策略的有效范围 41.5. 显示进程的时间片 41.6. 显示进程的调度策略和相关属性 41.7. sched_attr 结构 42. 查看抢占状态 Expand section "42. 查看抢占状态" Collapse section "42. 查看抢占状态" 42.1. 抢占 42.2. 检查进程的抢占状态 43. 使用 chrt 工具为进程设置优先级 Expand section "43. 使用 chrt 工具为进程设置优先级" Collapse section "43. 使用 chrt 工具为进程设置优先级" 43.1. 使用 chrt 工具设置进程优先级 43.2. chrt 工具选项 43.3. 其他资源 44. 使用库调用设置进程的优先级 Expand section "44. 使用库调用设置进程的优先级" Collapse section "44. 使用库调用设置进程的优先级" 44.1. 设置优先级的库调用 44.2. 使用库调用设置进程优先级 44.3. 使用库调用设置进程优先级参数 44.4. 为进程设置调度策略和相关属性 44.5. 其他资源 Settings Close Language: 한국어 日本語 简体中文 English Language: 한국어 日本語 简体中文 English Format: Multi-page Single-page Format: Multi-page Single-page Language and Page Formatting Options Language: 한국어 日本語 简体中文 English Language: 한국어 日本語 简体中文 English Format: Multi-page Single-page Format: Multi-page Single-page 为低延迟操作优化 RHEL 9 Red Hat Enterprise Linux for Real Time 9在 Red Hat Enterprise Linux 中配置 Linux 实时内核摘要 作为管理员,您可以在 RHEL for Real Time 内核中调优工作站。这些调整可提高性能,方便故障排除或者优化系统。 Next