一、前言

最近在工作中需要测试cpu占用率、内存占用率,我想要寻找一种合适的能提高cpu占用率的工具及方法。先尝试了使用 echo "scale=5000; 4*a(1)" | bc -l -q 命令计算浮点数,但这种方式只能进行CPU单线程简单测试,无法提高服务器的整体cpu占用率。后来,搜了不少资料,终于找到一款合适的cpu性能测试的工具——sysbench。


二、sysbench简单介绍

SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试: 
1. cpu性能 
2. 磁盘io性能 
3. 线程调度性能 
4. 互斥锁性能 
5. 数据库性能(OLTP基准测试) 
6. 内存性能

目前sysbench主要支持 MySQL、pgsq、Oracle 这3种数据库。 
sysbench在github的版本分为两个分支:0.4和0.5,我使用的是0.5这个版本。

三、sysbench安装

1、在https://github.com/akopytov/sysbench/tree/0.5下载sysbench-0.5.zip源码包到本地某个目录下,如/usr/cqs/目录下;
2、在/etc/cqs/sysbench目录下运行命令:unzip sysbench-0.5.zip,解压zip包,会生成sysbench-0.5目录;
3、 进入sysbench-0.5目录,运行命令:./autogen.sh。
注意:这一步可能会报错:automake 1.10.x (aclocal) wasn’t found, exiting。这说明你的操作系统没有安装automake,运行命令:yum install automake.noarch,即可安装。然后再运行./autogen.sh命令,又报错:libtoolize 1.4+ wasn’t found, exiting。说明你的操作系统没有安装libtool,运行命令:yum install libtool,即可安装。继续运行。
4、 运行./configure --without-mysql(不编译测试mysql的功能模块)
5、 make && make install
6、 运行sysbench –help测试是否安装成功。

四、常用测试

1. 帮助信息
# sysbench –help
2. cpu测试
测试计算素数直到某个最大值所需要的时间。
# sysbench --test=cpu --cpu-max-prime=2000 --num-threads=40 run
补充:
查看CPU信息方法:
查看物理cpu个数
grep "physical id" /proc/cpuinfo | sort -u | wc -l
查看核心数量
grep "core id" /proc/cpuinfo | sort -u | wc -l
查看线程数量
grep "processor" /proc/cpuinfo | sort -u | wc -l #在sysbench的测试中,--num-threads取值为"线程数量"即可。
查看cpu占用比
top
3. 内存测试
测试内存的连续读写性能。
# sysbench –test=memory –num-threads=16 –memory-block-size=8192 –memory-total-size=1G run 
memory测试类型可用的参数如下:

五、参考资料




sysbench——服务器cpu性能测试的更多相关文章

  1. linux sysbench (一): CPU性能测试详解

    网上sysbench教材众多,但没有一篇中文教材对cpu测试参数和结果进行详解. 本文旨在能够让读者对sysbench的cpu有一定了解. 小慢哥的原创文章,欢迎转载 1.sysbench基础知识 s ...

  2. Linux系统性能测试工具(四)——CPU性能测试工具之super_pi、sysbench

    本文介绍关于Linux系统(适用于centos/ubuntu等)的CPU性能测试工具-sysbench.CPU性能测试工具包括: super_pi: sysbench——不仅可以测试CPU性能,而且可 ...

  3. linux sysbench : CPU性能测试详解

    1.sysbench基础知识 sysbench的cpu测试是在指定时间内,循环进行素数计算 素数(也叫质数)就是从1开始的自然数中,无法被整除的数,比如2.3.5.7.11.13.17等.编程公式:对 ...

  4. 【转载】8.2.1 CPU性能测试工具

    (KVM连载) 8.2.1 CPU性能测试工具 01/08/2013master 1 Comment 8.2.1 CPU性能测试工具 CPU是计算机系统中最核心的部件,CPU的性能直接决定了系统的计算 ...

  5. asp.net mvc4 简单的服务器监控开发之C#获取服务器CPU、RAM、TCP等系统信息(上)

    一.背景 前段时间服务器出了点问题,加上学业愈来愈紧张,写博文分享的时间越来越少.虽然不是第一次在博客园上写经验,但是近期分享的博文得到了不少的朋友支持和指正,在这里内心非常感激和开心.希望以后能认真 ...

  6. linux cpu性能测试

    sysbench --test=cpu --cpu-max-prime=20000000 run --num-threads=4 mpstat -P ALL 1 1000000

  7. 服务器CPU使用率高的原因分析与解决办法

    我们的服务器在使用操作系统的时候,用着用着系统就变慢了,打开“ 任务管理器 ”一看,才发现CPU使用率达到80%以上.这是怎么回事情呢?遇到病毒了吗?硬件有问题?还是系统设置有问题呢?在本文中将从硬件 ...

  8. [故障公告] 13:52-14:03,访问量突增,博客web服务器CPU 100%

    13:52-14:03,由于访问量突增,博客web服务器全线CPU 100%,造成博客站点不正常访问,由此给您带来麻烦,请您谅解. 为了迎接访问量的增长给web服务器CPU带来的巨大压力,上周我们已经 ...

  9. Oracle触发bug(cursor: mutex S),造成数据库服务器CPU接近100%

    问题现象: 项目反馈系统反应非常缓慢,数据库服务器CPU接近100%! INSERT INTO GSPAudit1712(ID,TypeID,CategoryID,DateTime,UserID,Us ...

随机推荐

  1. 2013-8-6 ubuntu基本操作

    1,apt-get下载文件默认安装路径 apt-get 下载后,软件所在路径是什么?? /var/cache/apt/archives ubuntu 默认的PATH为 PATH=/home/brigh ...

  2. git提交忽略不必要的文件或文件夹

    创建maven项目,使用git提交,有时需要忽略不必要的文件或文件夹,只保留一些基本. 例如如下截图,实际开发中我们只需提交:src,.gitignore,pom.xml 而自己项目文件一般都保留,但 ...

  3. 【转】深入理解java异常处理机制

    深入理解java异常处理机制 ; int c; for (int i = 2; i >= -2; i--) { c = b / i; System.out.println("i=&qu ...

  4. Java堆外内存之六:堆外内存溢出问题排查

    一.堆外内存组成 通常JVM的参数我们会配置 -Xms 堆初始内存 -Xmx 堆最大内存 -XX:+UseG1GC/CMS 垃圾回收器 -XX:+DisableExplicitGC 禁止显示GC -X ...

  5. [转][html][jquery]

    <!-- 强行修改 CSS --> $('a').css("cssText","background:#fff !important;color:#2d6dc ...

  6. Scrapy框架——CrawlSpider爬取某招聘信息网站

    CrawlSpider Scrapy框架中分两类爬虫,Spider类和CrawlSpider类. 它是Spider的派生类,Spider类的设计原则是只爬取start_url列表中的网页, 而Craw ...

  7. iOS 一些常用代码的总结

    一.运算符号前后都需要加空格 二.控件view都有initWithFrame 三.initWithSubview 和 layoutSubviews initWithSubview:初始化子控件 lay ...

  8. 伯克利推出「看视频学动作」的AI智能体

    伯克利曾经提出 DeepMimic框架,让智能体模仿参考动作片段来学习高难度技能.但这些参考片段都是经过动作捕捉合成的高度结构化数据,数据本身的获取需要很高的成本.而近日,他们又更进一步,提出了可以直 ...

  9. python3一个简单的网页抓取

    都是学PYTHON.怎么学都是学,按照基础学也好,按照例子增加印象也好,反正都是学 import urllib import urllib.request data={} data['word']=' ...

  10. linux计划任务crontab的使用

    参考网站:https://www.cnblogs.com/intval/p/5763929.html 编辑计划任务:    crontab -e 查看计划任务:    crontab -l 使用实例: ...