[转帖]linux性能优化-CPU利用率
参数说明
- /proc/stat提供系统的CPU和任务统计信息。
- user(us): 用户态CPU时间,不包括下面的nice时间,但包括了guest时间。
- nice(ni): 代表低优先级用户态CPU时间。
- system(sys): 内核态CPU时间。
- idle(id): 空闲时间,它不包括等待I/O的时间。
- iowait(wa): 代表等待I/O的CPU时间。
- irq(hi): 处理硬中断的CPU时间。
- softirq(si): 处理软中断的CPU时间。
- steal(st): 当系统运行在虚拟机中的时候,被其它虚拟机占用的CPU时间。
- guest(guest): 通过虚拟化运行其它操作系统的时间,即运行虚拟机的CPU时间。
- guest_nice(gnice): 以低优先级运行虚拟机的时间。
- CPU利用率:除了空闲时间外其它时间占总CPU时间的百分比。
排查思路
- 用户CPU和Nice CPU高,说明用户态进程占用了较多的CPU,所以应该着重排查进程的性能问题。
- 系统CPU高,说明内核态占用了较多的CPU,所以应该着重排查内核线程或者系统调用的性能问题。
- I/O等待CPU高,说明等待I/O的时间比较长,所以应该着重排查系统存储是不是出现了I/O问题。
- 软中断和硬中断高,说明软中断或硬中断的处理程序占用了较多的CPU,所以应该着重排查内核中的中断服务程序。
特殊场景:系统CPU使用率很高,但找不到高CPU应用
碰到这种问题,第一反应要考虑是短时应用导致的问题。
- 应用里直接调用了其它二进制程序,这些程序通常运行时间比较短,通过top等工具也不容易发现。
- 应用本身在不停的崩溃重启,而启动过程的资源初始化,很可能会占用相当多的CPU。
- 对于这类问题,可以使用pstree等工具找到他们的父进程,再从父进程所在应用入手,排查问题根源。
相关工具
- pstree: 树状形式显示所有进程之间的关系,常用来查找短时进程的父进程。
[转帖]linux性能优化-CPU利用率的更多相关文章
- linux性能优化cpu 磁盘IO MEM
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- Linux性能优化--CPU[备忘]
http://kumu-linux.github.io/blog/2014/04/21/performance-cpu/
- Linux 性能优化之 IO 子系统 系列 图
http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...
- Linux 性能优化解析
前情概述 进程调度 老板 cpu 任劳任怨的打工仔 线程 工作在做什么 可运行队列 拥有的工作清单 上下文切换 和老板沟通以便得到老板的想法并及时调整自己的工作 中断 部分工作做完以后还需要及时向老板 ...
- 深挖计算机基础:Linux性能优化学习笔记
参考极客时间专栏<Linux性能优化实战>学习笔记 一.CPU性能:13讲 Linux性能优化实战学习笔记:第二讲 Linux性能优化实战学习笔记:第三讲 Linux性能优化实战学习笔记: ...
- Linux 性能优化排查工具
下图1为 Linux 性能优化排查工具的总结 图1 诊断 CPU 工具 查看 CPU 核数 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU ...
- linux性能监控 -CPU、Memory、IO、Network等指标的讲解
[操作系统-linux]linux性能监控 -CPU.Memory.IO.Network等指标的讲解(转) 一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,Syst ...
- Linux性能优化从入门到实战:01 Linux性能优化学习路线
我通过阅读各种相关书籍,从操作系统原理.到 Linux内核,再到硬件驱动程序等等. 把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序.库函数.系统调用.再到内核和硬件等不同的层级贯 ...
- Linux性能优化思路
性能测试的核心,就是找出性能瓶颈并进行性能优化,解决"慢"的问题,最终满足客户业务需求. [性能需求来源及性能问题现象] 性能需求的来源,主要分为以下几类: 项目组提出性能需求: ...
- Linux性能优化-平均负载
Linux性能优化-平均负载 目录 Linux性能优化-平均负载 平均负载的含义 平均负载为多少时合理 平均负载与 CPU 使用率 平均负载案例分析 场景一:CPU 密集型进程 场景二:I/O 密集型 ...
随机推荐
- SpringBoot基本知识
SpringBoot基本知识 一.简介 1.spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置, ...
- JavaScript异步编程2——结合XMLHttpRequest使用Promise
目录 1. 概述 2. 详论 3. 参考 1. 概述 在上一篇文章<JavaScript异步编程1--Promise的初步使用>,简单介绍了一下Promise的初步使用.复习一下,Prom ...
- CodeLab:一款让你体验丝滑般的云化JupyterLab
摘要:从AI开发特点着手,华为云AI DTSE技术布道师陈阳在DTT第五期带来主题为<云化JupyterLab:华为云CodeLab介绍>技术分享. DTSE Tech Talk是华为云开 ...
- 万字长文|大数据学前准备之Linux入门笔记(附资料)
对于大数据学习而言,Linux运维可以说是必备的技能.可以不研究的过于高深,但是基本的操作和使用一定要熟练.Linux的学习需要大量的实践,本文从linux的基本知识,实战操作,到常用的指令与软件安装 ...
- 开心档之CSS 测验
目录 CSS 测验 编辑 CSS 测验 CSS测验是一种衡量前端开发人员对CSS的熟练程度的测试.通过CSS测验,可以评估一个人对CSS语言的掌握程度和应用能力,帮助公司或招聘方挑选合适的人才. ...
- 一文读懂配置管理(CM)
配置管理(Configuration Management),是一个用于建立和维护产品性能.功能和物理属性,并与其需求.设计和操作信息在整个生命周期内保持一致的系统工程. 配置管理是 ITIL(Inf ...
- 创建一个科学决策必备的A/B实验,都需要哪些准备?——火山引擎 DataTester 使用指南
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流 DataTester 是火山引擎数智平台旗下产品,能基于先进的底层算法,提供科学分流能力和智能的统计引擎,支持多种复 ...
- Typora 一行显示多图
图片下显示说明  <center style="font-siz ...
- C++ 20 标准协程入门教程
基本概念 (是什么) 协程(coroutine): 是一种特殊的函数,其可以被暂停(suspend), 恢复执行(resume).一个协程可 以被多次调用. 协程(coroutine): 分为stac ...
- 图解 Promise 实现原理(二)—— Promise 链式调用
本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/Xz2bGaLxVL4xw1M2hb2nJQ作者:Morrain 很多同学在学习 Promis ...