CPU的相关概念以及优化

Posted ggykx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CPU的相关概念以及优化相关的知识,希望对你有一定的参考价值。

CPU优先级

  一个单一的cpu 再同一时间只能运行一个任务,在现实中会要求cpu在多任务。为了调度CPU的运行,有了优先级的说法,优先级有0-139 其中nice的-20至19 是100-139,而对于real-tim priority来说,nice的优先级均属于0级别,

技术图片

 

 

  其中静态优先级分为3类,

    注意:该模式的任何优先级均高于nice设置的优先级,会处理完该模式的任何进程后再处理普通进程。

    1、SCHED_FIFO

      先进先出模式,当该进程未处理完时,不会处理其他进程,除非其他进程优先级高于它,它将会排队在优先级高于他的进程后

    2、SCHED_RR

      轮询,优先级高者得到更多的时间片。如果一个时间片内没有处理完,会从队列最后重新开始排队

    3、SCHED_OTHER

      其他,nice、renice

技术图片

 

 

  调整优先级

    chrt  // change runtime

    调整未运行的程序

      chrt -r number /path/to prgo

     技术图片

    调整已经运行程序

      chrt -p pid -r [1-99]

------------------------------------------------------------------------------------------------

   扩展

      nice /renice

        范围 -20至19 数字越小优先级越高

        ps axo %cpu,%mem,pid,uid,comm,nice

 

    cpushare

      默认使用/sys/fs/cgroup/cpu,cpuacct/cpu.share (默认1024)

      新建/etc/systemd/system/服务名.service.d/文件夹创建00-服务,然后重启服务。

      在nice优先级的情况下,用于cpu紧张的时候划分cpu份额,类似虚拟机中cpu份额的概念。

以上是关于CPU的相关概念以及优化的主要内容,如果未能解决你的问题,请参考以下文章

synchronize底层实现原理以及相关的优化

linux 性能优化-- cpu 切换以及cpu过高

总结:windows下性能分析以及优化报告

异常与中断1--相关概念

进程分析之CPU

内存监控以及优化