sysbench命令小记

2024-02-23 20:58
文章标签 命令 小记 sysbench

本文主要是介绍sysbench命令小记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、命令介绍

  sysbench是一个是一个开源的、模块化的、跨平台的多线程性能测试工具,它支持CPU运算性能、磁盘IO性能、调度程序性能、内存分配及传输速度、POSIX线程性能和数据库性能(OLTP基准测试)。

Usage:sysbench [options] [testname] [command]1、支持的testname fileio - 文件IO测试cpu - CPU性能测试memory - 内存功能速度测试threads - 线程性能测试mutex - 互斥锁性能测试
常规选型含义
–threads=N运行的线程数
–events=N事件上限次数
–time=N运行时长,以秒为单位

二、CPU测试

(1)常用参数


--cpu-max-prime=N: 素数生成数量的上限如果设置为3,则表示2、3、5(要计算1-5共5次);如果设置为10,则表示2、3、5、7、11、13、17、19、23、29(要计算1-29共29次),默认值为10000。--threads=N: 线程数如果设置为1,则sysbench仅启动1个线程进行素数的计算;如果设置为2,则sysbench会启动2个线程,同时分别进行素数的计算。默认值为1,即单线程。--time=N: 运行时长,单位秒。默认值为10如果设置为5,则sysbench会在5秒内循环往复进行素数计算,从输出结果可以看到在5秒内完成了几次;比如配合--cpu-max-prime=3,则表示第一轮算得3个素数,如果时间还有剩就再进行一轮素数计算,直到时间耗尽。相同时间,比较的是谁完成的event多。--events=N: event上限次数每完成一轮就叫一个event,设置为100,则表示当完成100次event后,即使时间还有剩,也停止运行。默认值为0,则表示不限event次数,相同event次数,比较的是谁用时更少。
(2)实例
[root@cp ~]# sysbench --cpu-max-prime=10000 --threads=2 --time=30 cpu run
sysbench 1.0.17 (using system LuaJIT 2.0.4)Running the test with following options:
Number of threads: 2                                        ## 运行的线程数
Initializing random number generator from current timePrime numbers limit: 10000                      ## 每个线程的素数上限Initializing worker threads...Threads started!CPU speed:events per second:   932.57                 ## 所有线程平均每秒完成event的个数General statistics:total time:                          30.0015s                   ## 总共运行时间total number of events:              27980                      ## 总共完成的event个数Latency (ms):min:                                    1.05               ## 完成1次event的最少耗时avg:                                    2.14               ## 完成所有event的平均耗时max:                                   19.26               ## 完成1次event的最多耗时95th percentile:                        7.17               ## 95%的event完成的时间sum:                                59945.85               ## 所有线程的时间综合Threads fairness:events (avg/stddev):           13990.0000/3.00                  ## 平均每个线程完成envet的次数,后一个值是标准差execution time (avg/stddev):   29.9729/0.01                     ## 平均每个线程平均耗时,后一个值是标准差注:stddev(标准差): 在相同时间内,多个线程分别完成的素数计算次数是否稳定,如果数值越低,则表示多个线程的结果越接近(即越稳定)。该参数对于单线程无意义。如果有2台服务器进行CPU性能对比,当素数上限和线程数一致时:相同时间,比较event;相同event,比较时间;时间和event都相同,比较stddev(标准差)。

三、线程测试

(1)常用参数

--thread-yields=N : 指定每个请求的压力,默认为1000--thread-locks=N : 指定每个线程的锁数量,默认为8
  (2)实例
[root@cp ~]# sysbench --threads=2 --thread-yields=1000 --thread-locks=1 threads runGeneral statistics:total time:                          10.0031stotal number of events:              4217Latency (ms):min:                                    2.18avg:                                    4.74max:                                10002.5495th percentile:                        2.48sum:                                19999.84Threads fairness:events (avg/stddev):           2108.5000/2107.50execution time (avg/stddev):   9.9999/0.00[root@cp ~]# sysbench --threads=2 --thread-yields=1000 --thread-locks=10 threads runGeneral statistics:total time:                          10.0005stotal number of events:              14193Latency (ms):min:                                    1.21avg:                                    1.41max:                                    2.2295th percentile:                        1.50sum:                                19989.23Threads fairness:events (avg/stddev):           7096.5000/8.50execution time (avg/stddev):   9.9946/0.00##对比锁的限制

这篇关于sysbench命令小记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/739905

相关文章

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

MySQL的ALTER TABLE命令的使用解读

《MySQL的ALTERTABLE命令的使用解读》:本文主要介绍MySQL的ALTERTABLE命令的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、查看所建表的编China编程码格式2、修改表的编码格式3、修改列队数据类型4、添加列5、修改列的位置5.1、把列

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小