Buildroot lmbench使用方法
/**********************************************************************
* Buildroot lmbench使用方法
* 说明:
* 想在i.mx6上用Buildroot编译出lmbench,结果发现全是单独的命令,不知道
* 怎么使用,脚本需要用到perl,所以编译需要选好perl。
*
* 2018-6-21 深圳 宝安西乡 曾剑锋
*********************************************************************/ 一、参考文档:
. Performances
http://www.armadeus.org/wiki/index.php?title=Performances
. Linux系统性能测试工具Lmbench
https://wiki.deepin.io/mediawiki/index.php?title=Linux%E7%B3%BB%E7%BB%9F%E6%80%A7%E8%83%BD%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7Lmbench
. 性能测试工具Lmbench使用说明
https://wenku.baidu.com/view/aa29812727d3240c8447ef9a.html 二、解决办法:
. 将Buildroot编译出来的文件夹打包,目前我自己的是:/output/build/lmbench-3.0-a9
. 拷贝到主板上解压;
. cd /jump/to/lmbench/dir/
. cd scripts
. OS=arm ./config-run (生成的配置放在后面)
MULTIPLE COPIES [default ]
Job placement selection:
MB [default ]
SUBSET (ALL|HARWARE|OS|DEVELOPMENT) [default all] HARDWARE
then default value (except for result mailing, choose no) except
Processor mhz [default MHz, 5.2910 nanosec clock]
FSDIR [default /var/tmp] /mnt/host/
Mail results [default yes] no
. OS=arm ./results
Using config in CONFIG.buildroot
Sat Jan :: UTC
Latency measurements
Sat Jan :: UTC
Calculating file system latency
Sat Jan :: UTC
Local networking
Sat Jan :: UTC
Bandwidth measurements
Sat Jan :: UTC
Calculating context switch overhead
Sat Jan :: UTC
McCalpin's STREAM benchmark
Sat Jan :: UTC
Calculating memory load latency Sat Jan :: UTC
. ./getsummary ../results/arm/*,
L M B E N C H 3 . 0 S U M M A R Y
------------------------------------
(Alpha software, do not distribute) Basic system parameters
------------------------------------------------------------------------------
Host OS Description Mhz tlb cache mem scal
pages line par load
bytes
--------- ------------- ----------------------- ---- ----- ----- ------ ----
buildroot Linux 4.1.15+ arm 996 64 2 Processor, Processes - times in microseconds - smaller is better
------------------------------------------------------------------------------
Host OS Mhz null null open slct sig sig fork exec sh
call I/O stat clos TCP inst hndl proc proc proc
--------- ------------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
buildroot Linux 4.1.15+ 996 0.23 0.56 5.70 12.1 19.7 0.66 4.03 1303 3049 7073 Basic integer operations - times in nanoseconds - smaller is better
-------------------------------------------------------------------
Host OS intgr intgr intgr intgr intgr
bit add mul div mod
--------- ------------- ------ ------ ------ ------ ------ Basic uint64 operations - times in nanoseconds - smaller is better
------------------------------------------------------------------
Host OS int64 int64 int64 int64 int64
bit add mul div mod
--------- ------------- ------ ------ ------ ------ ------ Basic float operations - times in nanoseconds - smaller is better
-----------------------------------------------------------------
Host OS float float float float
add mul div bogo
--------- ------------- ------ ------ ------ ------ Basic double operations - times in nanoseconds - smaller is better
------------------------------------------------------------------
Host OS double double double double
add mul div bogo
--------- ------------- ------ ------ ------ ------ Context switching - times in microseconds - smaller is better
-------------------------------------------------------------------------
Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K
ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw
--------- ------------- ------ ------ ------ ------ ------ ------- -------
buildroot Linux 4.1.15+ 3.6900 10.8 21.9 26.8 46.8 33.3 49.3 *Local* Communication latencies in microseconds - smaller is better
---------------------------------------------------------------------
Host OS 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP
ctxsw UNIX UDP TCP conn
--------- ------------- ----- ----- ---- ----- ----- ----- ----- ----
buildroot Linux 4.1.15+ 3.690 17.2 26.5 76.4 86.0 *Remote* Communication latencies in microseconds - smaller is better
---------------------------------------------------------------------
Host OS UDP RPC/ TCP RPC/ TCP
UDP TCP conn
--------- ------------- ----- ----- ----- ----- ----
buildroot Linux 4.1.15+ File & VM system latencies in microseconds - smaller is better
-------------------------------------------------------------------------------
Host OS 0K File 10K File Mmap Prot Page 100fd
Create Delete Create Delete Latency Fault Fault selct
--------- ------------- ------ ------ ------ ------ ------- ----- ------- -----
buildroot Linux 4.1.15+ 1998.0 0.207 1.42140 6.259 *Local* Communication bandwidths in MB/s - bigger is better
-----------------------------------------------------------------------------
Host OS Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem
UNIX reread reread (libc) (hand) read write
--------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- -----
buildroot Linux 4.1.15+ 453. 411. 238. 552.7 1214.5 591.4 537.1 1204 596.0 Memory latencies in nanoseconds - smaller is better
(WARNING - may not be correct, check graphs)
------------------------------------------------------------------------------
Host OS Mhz L1 $ L2 $ Main mem Rand mem Guesses
--------- ------------- --- ---- ---- -------- -------- -------
buildroot Linux 4.1.15+ 996 4.0220 33.7 61.1 316.6 三、生成的配置
DISKS=""
DISK_DESC=""
OUTPUT=/dev/tty
ENOUGH=5000
FASTMEM="NO"
FILE=/var/tmp/XXX
FSDIR=/var/tmp
INFO=INFO.buildroot
LINE_SIZE=64
LOOP_O=0.00001841
MAIL=no
TOTAL_MEM=1001
MB=8
MHZ="995 MHz, 1.0050 nanosec clock"
MOTHERBOARD=""
NETWORKS=""
OS="arm"
PROCESSORS="2"
REMOTE=""
SLOWFS="NO"
SYNC_MAX="2"
LMBENCH_SCHED="BALANCED"
TIMING_O=0
RSH=
RCP=
VERSION=3.0-a9
BENCHMARK_HARDWARE=YES
BENCHMARK_OS=YES
BENCHMARK_SYSCALL=
BENCHMARK_SELECT=
BENCHMARK_SIG=
BENCHMARK_PROC=
BENCHMARK_CTX=
BENCHMARK_PAGEFAULT=
BENCHMARK_FILE=
BENCHMARK_MMAP=
BENCHMARK_PIPE=
BENCHMARK_UNIX=
BENCHMARK_UDP=
BENCHMARK_TCP=
BENCHMARK_CONNECT=
BENCHMARK_RPC=
BENCHMARK_HTTP=
BENCHMARK_BCOPY=
BENCHMARK_MEM=
BENCHMARK_OPS= 四、getsummary显示数据疑问:
1. 可能前面会发现整形、浮点等运算为什么无效?也就是没有数据。
2. 分析getsummary源代码:
[...省略]
if (/SYNC_MAX/) { -------+
@_ = split; |
$_[1] =~ s/\]//; |
push(@load, $_[1]); --------+----------------------+
} |
[...省略] |
for ($i = 0; $i <= $#uname; $i++) { |
if (&resultsq($i, $i, ( 'int64_bit', 'int64_add', |
'int64_mul', 'int64_div', |
'int64_mod' )) <= 0) { |
next; |
} |
if ($load[$i] > 1) { <---------------------------------+
next;
}
printf "%-9.9s %13.13s ", $host[$i], &getos($uname[$i]);
printf " %5.5s %6.6s %6.6s %6.6s %6.6s\n",
&scale_num($int64_bit[$i], 6, $load[$i]),
&scale_num($int64_add[$i], 6, $load[$i]),
&scale_num($int64_mul[$i], 6, $load[$i]),
&scale_num($int64_div[$i], 6, $load[$i]),
&scale_num($int64_mod[$i], 6, $load[$i]);
}
[...省略]
3. 可知SYNC_MAX不能设置大于1的值,否者不会显示相应的部分。
Buildroot lmbench使用方法的更多相关文章
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- 报错:/BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.29.5/UITableView.m:7943解决方法
环境:Xcode7.1.1 详细错误: *** Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:], ...
- lmbench的使用方法
一.引言 要评价一个系统的性能,通常有不同的指标,相应的会有不同的测试方法和测试工具,一般来说为了确保测试结果的公平和权威性,会选用比较成熟的商业测试软件.但在特定情形下,只是想要简单比较不同系统或比 ...
- buildroot 修改root密码后无法登录ssh解决方法
客户说想修改root密码后再登录ssh, 研究了一下,是因为ssh登录是匹配了之前的 密码生成文件,只要把之前的密码生成文件删除就可以. 过程如下: 删除 /etc/ssh/ssh_host*. rm ...
- buildroot mysql
/******************************************************************** * buildroot mysql * 说明: * 这两天要 ...
- Buildroot阅读笔记
之前有写一篇文章:http://www.cnblogs.com/tfanalysis/p/3625430.html理清如何make menuconfig的问题,现在今天在无意间多注意了一下buildr ...
- buildroot使用介绍
buildroot是Linux平台上一个构建嵌入式Linux系统的框架.整个Buildroot是由Makefile脚本和Kconfig配置文件构成的.你可以和编译Linux内核一样,通过buildro ...
- Buildroot stress-ng Linux系统压力测试
/********************************************************************** * Buildroot stress-ng Linux系 ...
- Buildroot Qt 5
/********************************************************************************* * Buildroot Qt 5 ...
随机推荐
- springcloud之eureka配置——eureka.instance
1.在springcloud中服务的 Instance ID 默认值是: ${spring.cloud.client.hostname}:${spring.application.name}:${sp ...
- 浙江省赛 ZOJ4029
Now Loading!!! Time Limit: Second Memory Limit: KB DreamGrid has integers . DreamGrid also has queri ...
- xinetd黑/白名单配置教程(以telnet为例)
对于诸如telnet等托管于xinetd的服务,当请求到来时由于是通过xinetd进行通知,所以可以直接在xinetd上配置白名单允许和拒绝哪些ip连接服务. 本文主要参考xinetd.conf的ma ...
- axur axure rp安装
axure rp安装 1◆ axure rp 文件下载 2◆创建安装目录 3◆ 安装图解 4◆汉化 替换 5◆ 使用 success
- bzoj4310
题解: 后缀数组求出本质不同的串 然后二分答案 贪心判断是否可行 代码: #include<bits/stdc++.h> ; using namespace std; typedef lo ...
- centos 安装git服务器,配置使用证书登录并你用hook实现代码自动部署
安装git服务器先安装依赖软件:yum -y install gcc zlib-devel openssl-devel perl cpio expat-devel gettext-devel open ...
- 【转载三】Grafana系列教程–Grafana的配置及运行
本篇文章,就让我们来了解下,Grafana的简单配置及运行. 详细的配置我们后面会讲,本篇文章只对其配置做一个简单了解,主要是让大家了解Grafana的配置及启动的过程及方法. 更多Grafana问题 ...
- 《python》join、守护进程、锁/信号量/事件、进程队列
一.multiprocess.process模块 1.join方法 阻塞主进程,等待子进程执行完毕再放开阻塞 import time import random from multiprocessin ...
- C++输出数组名
1.如果C++输出的数组是char类型的,那么输出的就是数组中的元素. 2.如果使用的是其他类型的数组作为输出的话,那么就是一个16进制的地址. 3.还是那句话,对数组的操作,很多时候都是指针的操作, ...
- Linux如何从零开始搭建rsync服务器(centOS6)
Step1:检查rsync是否已经安装 rmp -qa rsync 如果没有安装的话,通过yum install rsync -y Step2:给rsync服务添加本地用户,用于管理本地目录. u ...