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

相关文章

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

postgresql数据库基本操作及命令详解

《postgresql数据库基本操作及命令详解》本文介绍了PostgreSQL数据库的基础操作,包括连接、创建、查看数据库,表的增删改查、索引管理、备份恢复及退出命令,适用于数据库管理和开发实践,感兴... 目录1. 连接 PostgreSQL 数据库2. 创建数据库3. 查看当前数据库4. 查看所有数据库

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

基于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. 恢