使用sysbench执行简易性能评测

本文深入剖析了为何在软件开发领域,大多数程序员未能晋升为架构师的原因,从个人技能、团队合作到项目管理等方面进行详细阐述。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

脚本如下:

#!/bin/bash
# 初始化基础变量
test_dir=/data
res_dir=${test_dir}/result
res_sum=${res_dir}/sum.log
file_size=500
mem_total=$(free -g|awk 'NR==2{print $2}')
cpu_core_count=$(grep -c processor /proc/cpuinfo)
# 检查系统和软件包
[ -f /etc/debian_version ] || exit $?
dpkg-query -s sysbench || apt-get -y --force-yes install sysbench
# 创建基础目录
cd $test_dir || exit $?
mkdir -pv $res_dir
# 记录一些基本信息
hostname | tee ${res_sum}
sysbench --version | tee -a ${res_sum}
date | tee -a ${res_sum}
uname -a | tee -a ${res_sum}
head /proc/cpuinfo | grep 'model name' | awk -F': ' '{print $2}' | tee -a ${res_sum}
# 测试CPU性能
for cc in $(seq ${cpu_core_count});do 
	sysbench --batch --test=cpu --cpu-max-prime=20000 --num-threads=${cc} run > $res_dir/cpu-bm-c${cc}.log
done
# 测试内存读写性能
for bs in 1 4;do
	sysbench --batch --test=memory --memory-block-size=${bs}K --memory-scope=global --memory-total-size=${mem_total}G --memory-oper=read run > $res_dir/mem-r-s${bs}.log
	sysbench --batch --test=memory --memory-block-size=${bs}K --memory-scope=global --memory-total-size=${mem_total}G --memory-oper=write run > $res_dir/mem-w-s${bs}.log
done
# 测试硬盘IO
sysbench --batch --test=fileio --file-total-size=${file_size}G prepare
for md in "direct" "O_DIRECT" "O_DSYNC" "O_SYNC" "string";do
for fm in "rndrd" "rndwr" "rndrw" "seqrd" "seqwr";do
for th in 1 4 8 16 32;do
	sysbench --batch --test=fileio --file-total-size=${file_size}G --num-threads=${th} --file-extra-flags=${md} --file-test-mode=${fm} \
	--file-block-size=4K --rand-init=on --max-time=300 --max-requests=0 run > $res_dir/io-${th}-${md}-${fm}.log
done
done
done
sysbench --batch --test=fileio --file-total-size=${file_size}G cleanup 
# 输出结果
grep 'execution time' $res_dir/*.log | awk -F':' '{print $1,$3}' | tee -a ${res_sum}

转载于:https://my.oschina.net/anglix/blog/512483

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值