5、大规模基础设施管理与谷歌云平台应用指南

大规模基础设施管理与谷歌云平台应用指南

1. CPU 调度

CPU 调度是在处理器上调度作业的过程,内核的任务是确保 CPU 尽可能忙碌。调度类别分为实时和正常两类:
- 实时调度 :包含 SCHED_FIFO 和 SCHED_RR。
- 正常调度 :包含 SCHED_OTHER、SCHED_BATCH 和 SCHED_IDLE。

实时线程会使用实时 CPU 调度器优先调度,而正常调度器用于不需要实时处理的线程。在大规模计算中,可能需要调整 CPU 调度策略。可以通过关注 nonvoluntary_ctxt_switches 参数来判断是否需要调整,示例代码如下:

# grep voluntary /proc/1/status
voluntary_ctxt_switches:        136420
nonvoluntary_ctxt_switches:     59

如果非自愿上下文切换次数较高,可能需要考虑更改调度器。对于与网络带宽和磁盘输入/输出相关的数据吞吐量,可使用 SCHED_OTHER 调度器;如果关注延迟问题,则使用 SCHED_FIFO 调度器。正常策略通常比实时策略能带来更好的吞吐量,因为正常策略不会像实时调度器那样为确保实时处理而抢占进程。

可以使用 chrt 命令来操作进程的调度策略,以下是操作示例:

查看 PID 为 1 的进程的现有优先级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值