Hey小伙伴们~ 👋 性能对于操作系统来说那可是重中之重呀!今天呢,我就要给大家安利一下openEuler在性能测试中常用的那些测试套和不得不知的测试原则!🎉
🌟 基础性能测试 🌟
首先呢,咱们得聊聊基础性能测试里的stream测试~ 📊
🔥 stream测试 🔥
测试套介绍:这个测试可是专门用来测内存带宽的实际性能的哦!它有copy、scale、add、triad四种运算方式,每种方式都能帮你看清内存带宽的表现。
Copy:就是读一个内存单元的值,再写到另一个内存单元。
Scale:读出一个值,做个乘法运算,再写回去。
Add:读出两个值,做个加法运算,再写回去。
Triad:把上面三个测试组合起来,做个乘加混合运算。
测试结果:Add > Triad > Copy > Scale,原因嘛,就是访问内存的次数和操作复杂度不同啦~ 🤓
编译参数:
-DSTREAM_ARRAY_SIZE:建议设成大于L3 cache的4倍哦!
-fopenmp:启用后默认满核测试,内存带宽测起来更爽!
-DNTIMES:默认10次迭代,提高这个值能让测试结果更稳定!
影响因素:编译器GCC、内核、硬件(比如内存容量、频率)都会影响到测试结果哦!🔍
🌈 lmbench测试 🌈
测试套介绍:这个测试套可是简易又可移植的,专门给UNIX/POSIX系统用的微型测评工具!它能测时延和带宽,功能多多~
主要功能:读缓存文件、拷贝内存、系统调用时延、上下文切换时延... 简直应有尽有!
测试结果:输出一堆数据,但别担心,都是有用的信息哦!📊
测试项分类:系统调用、上下文切换、本地通信... 每个都超重要!
🔥 小贴士 🔥
测试前记得检查你的环境和配置哦!
结果出来了,别忘了好好分析,找出性能瓶颈!
好啦,今天的分享就到这里啦!希望对正在做openEuler性能测试的小伙伴们有所帮助哦!💖
🔗 更多性能测试干货:性能测试学习资源
🏷️ #openEuler性能测试 #stream测试 #lmbench测试 #性能测试原则