考虑到FZ5强大的硬件性能,我们决定给它做一下加压测试。工具分别采用stress和stress-ng。 stress是Linux的一个压力测试工具,可以对CPU、IO、Memory、磁盘进行压力测试,stress-ng是它的改进版,有更多的算法模型。 同时另外开两个窗口,分别使用 mpstat -P ALL 5 pidstat -u 5 记录各项资源使用情况。 stress -c 2 -t 600 开启2个CPU进程执行计算,600秒后结束,FZ5是四核,因此有两个核能得到空闲。测试结果与期望符合。 stress -c 8 -t 600 这次开启8个进程执行计算,FZ5是四核,因此理论上八个进程争用四个核,会出现大量读写,看看发现%sys有增加,大量资源处于等待状态(%wait)。事实上,我尝试修改进程数量,发现随着进程数增加,更多cpu资源用在了等待上,这也说明了,尽可能的采用4线程,可以使得cpu得到有效利用。 stress -i 2 -t 600 开启2个IO进程,执行sync系统调用,刷新内存缓冲区到磁盘,每个进程循环调用sync将内存缓冲区内容写到磁盘上。可以看到两个核的%sys有明显增加,但IO增加并不明显,推测核内缓冲区足够大以保证系统不至于产生IO压力。 stress -d 2 -t 600 使用参数d,不断在TF卡上执行创建文件,写入内容,删除文件等操作,iowait明显升高,看来TF卡应该就是盒子最大的瓶颈了。 stress -m 2 -t 600 开启2个进程分配内存,可以看到%idle时间相对较长,且在工作中4个核的资源都有调动,而不是类似其它参数,单一进程只使用了其中某个核的资源。
|