上下文切换context switch
1)什么是上下文切换
上下文:存储cpu正在执行的指令位置,下一条指令位置(寄存器,程序计数器)
上下文切换:保存上一个任务进程的上下文到内核,加载新任务进程的上下文,且运行新任务,再次调度上一个任务,看起来连续运行
2)上下文切换与性能的关系
切换次数多,cpu时间花费在保存上下文上面
3)上下文切换次数多少算高?
a.cpu本身性能
b.系统上下文切换次数趋势稳定,就没有问题,
c.出现突然增长,或者超过1万次以上,就要分析
d.上下文切换多,1)就是进程在等待资源,进一步监控内存,I/O
2)cpu本身的瓶颈
3)同时中断次数多,去分析中断处理程序,查看proc/interrupts, cpu的分布 ,进一步分析中断的原因
nginx,让中断打散,达到分散效果,效率提高,nginx.conf设置绑定多个cpu