Linux下如何查看高CPU占用率线程

标签: linux cpu 线程 | 发表时间:2013-08-31 17:36 | 作者:C++技术中心
出处:http://www.cppblog.com/

在 Linux 下 top 工具可以显示 cpu 的平均利用率(user,nice,system,idle,iowait,irq,softirq,etc.),可以显示每个 cpu 的利用率。但是无法显示每个线程的 cpu 利用率情况,
这时就可能出现这种情况,总的 cpu 利用率中 user 或 system 很高,但是用进程的 cpu 占用率进行排序时,没有进程的 user 或 system 与之对应。

可以用下面的命令将 cpu 占用率高的线程找出来:
$ ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu

这个命令首先指定参数'H',显示线程相关的信息,格式输出中包含:user,pid,ppid,tid,time,%cpu,cmd,然后再用%cpu字段进行排序。这样就可以找到占用处理器的线程了。



C++技术中心 2013-08-31 17:36 发表评论

相关 [linux cpu 线程] 推荐:

Linux HotSopt虚拟机GC线程的CPU占用率

- - ImportNew
下面的问题将会检验你有关Linux系统上的Java程序的垃圾回收和High CPU排错的知识. 在过度调用GC或及CPU占用率过高的时候,这种排错技术是至关重要的. 假设你没有使用像是 Compuware dynaTrace或者JVisualVMware这样先进的监视工具. 有关于这些工具的使用教程将会在以后发布,但是请先确保自己掌握了基础的排错原则.

Linux下如何查看高CPU占用率线程

- - C++博客-首页原创精华区
在 Linux 下 top 工具可以显示 cpu 的平均利用率(user,nice,system,idle,iowait,irq,softirq,etc.),可以显示每个 cpu 的利用率. 但是无法显示每个线程的 cpu 利用率情况,. 这时就可能出现这种情况,总的 cpu 利用率中 user 或 system 很高,但是用进程的 cpu 占用率进行排序时,没有进程的 user 或 system 与之对应.

Linux下操纵CPU曲线绘制心形

- TheLover_Z - 博客园-首页原创精华区
不久之前看了「编程之美」,里面有在windows下操纵CPU绘制正弦曲线的示例程序. 思路很简单,但是需要知道几个windows的API函数. 刚开始我想尝试在windows下绘制心形,不过没能做到,原因是CPU曲线是CPU利用率和时间构成的函数的关系,心形是一个封闭图形,不可能是一个函数,所以至少需要两条CPU曲线才能绘制(这需要你的机器为双核或多核或者多个CPU),然而windows的任务管理器,我没能找到将两条CPU曲线绘制在同一图表下的方法,所以没能成功.

动态切换 Linux 使用的 CPU 数量

- 李帅 - Wow! Ubuntu
由于要测试一些代码,其运行结果会受到多核并行的影响,所以希望能够调整使用的 CPU 数量. 网络上之前看到的方法是在内核的启动参数上添加一个 maxcpus,但是如果这样的话每切换一次都要重启一次,是在太麻烦了. 想想 Linux 应该是很强大的,所以可以动态修改 CPU 数量才对. 无意中看到 Linux 代码的 Documentation 文件夹下有个文件叫做 cpu-hotplug.txt,于是就看了一下,发现可以在 /sys/devices/system/cpu 看到代表各 CPU 的文件夹按照 cpuX 的命名方式,如 cpu0、cpu1、cpu2 等.

Linux中模拟诊断Oracle高CPU占用

- - CSDN博客推荐文章
1,在一个session中模拟CPU高使用率,如下:. 2,在shell窗口用top命令查看CPU使用情况:                                                                                                            .

Linux中常用的监控CPU整体性能的工具

- - CSDN博客编程语言推荐文章
Linux中常用的监控CPU整体性能的工具有:. top:命令是一个优秀的交互式实用工具,用于监视性能. 它提供关于整体Linux性能的几个概要行,但是报告进程信息才是top真正的长处. 可以广泛自定义进程显示,也可以添加字段,按照不同指标排序进程列表,甚至从top注销进程. 显示的信息同ps接近,但是top可以了解到CPU消耗,可以根据用户指定的时间来更新显示.

Linux下java进程CPU占用率高-分析方法

- - Linux - 操作系统 - ITeye博客
今天登陆同事的一台gateway 开始以为hive环境登陆不了了,仔细一看看了下是因为机器很卡,我每次等几秒没登陆就ctrl+c了,看了下是有个java进程cpu:340.4%  mem:14.6%. 一般解决方法是通过top命令找出消耗资源高的线程id,利用strace命令查看该线程所有系统调用.

java问题导致linux负载、cpu过高如何定位

- - CSDN博客推荐文章
1.用top找到最耗资源的进程id. 2.查询最消耗资源的java进程. 3.打印java 栈 信息. 4.将耗资源的javaPID转换为16进制(5920转1720<16进制>  去百度找 :十进制转十六进制). PID 对应 堆栈中的nid(16进制). 去stack.txt 中查找nid=1720的问题.

(转)简单的 Linux下的CPU性能瓶颈分析

- - jackyrong
Linux下的CPU性能瓶颈分析. 以夕 发表于:2013-09-29 浏览:2455次 评论:0次 所属分类: 性能测试.         在对notify执行性能测试时发现cpu负载突然飙高,cpu利用率高达95%. 这时候就要排查是哪些线程消耗了cpu,并从代码层找到占用cpu的“罪魁祸首”.

快速定位消耗CPU的Java线程

- - BlogJava_首页
1.通过快递定位消耗CPU的线程.     工具: Window 平台 通过 Processor  explorer 获得线程ID .     Linux 通过 top -H 获得. 然后通过Thread dump 获得java 所有线程 搜索到相应的线程ID 定位该线程.     可以通过 Java 内置的jvisualvm  或者Jstack.