Linux性能测试与分析.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux性能测试与分析

Linux?性能测试与分析Linux 性能测试与分析Revision HistoryVersionDateAuthorDescription1.02011/5/26dengwu@初稿1.12011/6/23dengwu@添加CPU分析1.22012/2/20dengwu@添加MEM,IO分析1.32012/2/23dengwu@更新工作原理1.42012/2/25dengwu@添加中断分析1.52012/2/28dengwu@添加网络分析1?????????性能测试简介l??性能测试的过程就是找到系统瓶颈的过程。???l??性能测试(包括分析和调优)的过程就是在操作系统的各个子系统之间取得平衡的过程。l??操作系统的各个子系统包括:???CPU???Memory???IO???Network?他们之间高度依赖,互相影响。比如:1.??????频繁的磁盘读写会增加对内存的使用2.??????大量的网络吞吐,一定意味着非常可观的CPU利用率3.??????可用内存的减少可能增加大量的swapping,从而使系统负载上升甚至崩溃2?????????应用程序类型性能测试之前,你首先需要判断你的应用程序是属于那种类型的,这可以帮助你判断哪个子系统可能会成为瓶颈。?通常可分为如下两种:?CPU bound –?这类程序,cpu往往会处于很高的负载,当系统压力上升时,相对于磁盘和内存,往往CPU首先到达瓶颈。Web server,mail server以及大部分服务类程序都属于这一类。?I/O bound –?这类程序,往往会频繁的访问磁盘,从而发送大量的IO请求。IO类应用程序往往利用cpu发送IO请求之后,便进入sleep状态,从而造成很高的IOWAIT。数据库类程序,cache服务器往往属于这种类型。3?????????CPU?3.1??????性能瓶颈3.1.1????????运算性能瓶颈作为计算机的计算单元,其运算能力方面,可能出现如下瓶颈:?1.??用户态进程CPU占用率很高2.??系统态(内核态)CPU占用率很高?测试CPU的运算性能,通常是通过计算圆周率来测试CPU的浮点运算能力和稳定性。据说Pentium CPU的一个运算bug就是通过计算圆周率来发现的。圆周率的计算方法,通常是计算小数点后104万位,通过比较运算时间来评测CPU的运算能力。?常用工具:1.????????SUPER PI(π)2.????????Wprime??与SuperPI不同的是,可以支持多核CPU的运算速度测试3.????????FritzChess??一款国际象棋测试软件,测试每秒钟可运算的步数?突破CPU的运算瓶颈,一般只能靠花钱。比如提高时钟频率,提高L1,L2 cache容量或不断追求新一代的CPU架构:?Core ?-??Nehalem(E55x,如r710,dsc1100) ?- ?Westmere ?–??Sandy Bridge3.1.2????????调度性能瓶颈CPU除了负责计算之外,另一个非常重要的功能就是调度。在调度方面,CPU可能会出现如下性能瓶颈:?1.??????Load平均值超过了系统可承受的程度2.??????IOWait占比过高,导致Load上升或是引入新的磁盘瓶颈3.??????Context Switch过高,导致CPU就像个搬运工一样,频繁在寄存器(CPU Register)和运行队列(run queue)之间奔波4.??????硬中断CPU占比接近于100%5.??????软中断CPU占比接近于100%?超线程超线程芯片可以使得当前线程在访问内存的间隙,处理器可以使用它的机器周期去执行另外一个线程。一个超线程的物理CPU可以被kernel看作是两个独立的CPU。?3.2??????典型监控参数图1:top图2:mpstat?3.2.1????????参数含义???LoadLoad是指CPU所有内核正在处理的任务加上处于运行队列中的进程数之和。?处于运行队列(run queue)中的进程包括TASK_RUNNING 和 TASK_UNINTERRUPTIBLE两种状态的任务:???处于可运行状态的进程???等待不可中断任务的进程?在一个双核的系统中,如果两个进程正在执行,有四个进程处于run quque当中,那么load就是6?Vmstat中 r 指的就是run queue中的进程数目?对比一下同一时刻top统计出来的load????Nice%用户进程空间内,通过调用nice或setpriority系统调用改变过优先级的进程的CPU占用率???Iowait%CPU等待IO操作的时间???Idle%CPU空闲时间???Intr/s每秒钟处理的中断数???Hi%服务于IRQs的时间占比???Si%服务于Sof

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档