测试工具介绍
【51CTO.com快译】一天前Linux发布了最新的2.6.29内核,接下来我们将对过去的6个主要Linux内核做出基准评测。这次我们使用的是Phoronix测试套件,你将看到二十多项详细的测试结果。自从08年年初Linux 2.6.24【51CTO编者注: Linux2.6.24当时发布时曾被认为是最稳定版。】发布以来,这一年来Linux内核的性能得到了哪些提升呢?评测的结果告诉我们,Linux 2.6.29在一些重要方面的确带来了很大的性能提升。
这次评测我们使用的是Canonical提供的一个标准Ubuntu封装包,没有任何多余的补丁和配置。在一个干净的Ubuntu 8.10(x86_64)系统上,我们分别安装了Linux 2.6.24、2.6.25、 2.6.26、2.6.27、2.6.28,以及最新的Linux 2.6.29内核。
我们使用的硬件包括Intel Core 2 Duo E6400处理器、ASRock G43Twins - FullHD主板、集成Intel GMA显卡、2GB DDR2系统内存,以及200GB的希捷ST3200826AS SATA HDD硬盘。我们测试的程序包括LZMA压缩、7-Zip压缩、LAME MP3编码、FLAC音频编码、FFmpeg、Fhourstones、GnuPG、OpenSSL、SQLite、GraphicsMagick、SciMark、RAMspeed、Flexible IO Tester、RAMspeed、Bork文件加密和Sunflow渲染系统。整个测试过程都可以通过Phoronix测试套件管理和运行。
简单介绍一下 Phoronix测试套件,它是符合GPLv3标准的专业性能测试软件,提供了可扩展架构,能够以标准化,完全自动化,且可重复的方式进行各项测试。Phoronix测试套件从安装开始一切自动化进行,对软硬件的各组件进行检测,最终给出测试结果和可视图表。Phoronix支持Linux、OpenSolaris、Mac OS X和各种BSD等操作系统。在本次测试中,我们使用了最新版本的Phoronix 1.8。
我们首先使用LZMA Compression压缩一款256MB的文件,测量所需要的时间,结果没有太多可说的,六种Linux内核的表现大致相同。
7-Zip压缩测试内核的速度,我们看到测试结果出现了波动。在Linux 2.6.24之后压缩速度逐步倒退,直到Linux 2.6.28,它是表现最好的。刚刚发布的Linux 2.6.29的性能是六个版本最低的。
( 多媒体性能测试)
多媒体处理方面,LAME MP3编码性能,6个Linux内核几乎一模一样。
和MP3编码性能一样,FLAC音频编码的性能也几乎一样。
在最后一项多媒体编码FFmpeg 0.5测试中,6个Linux内核的性能也没有多大波动。
运算速度及数据库处理测试
在运算速度方面,我们使用Fhourstones进行了复杂的Connect-4数据算法测试。Linux 2.6.27得到的成绩最高,但其他内核的成绩也不差。
GnuPG文件加密性能,Linux 2.6.29的加密速度算比较快的了。
在OpenSSL及其RSA 4096位数学运算中,Linux 2.6.29脱颖而出,每秒的签名数量增加了一倍!其他内核的签名数量是每秒31次,而最新的Linux内核跃升至每秒62次。
数据库处理方面,来看SQLite的测试成绩,Linux2.6.24原先表现不错,但从Linux 2.6.26开始性能出现大幅下降,直到Linux 2.6.29才重新解决了这个问题。SQLite数据库存取能力对Firefox,Adobe和很多桌面应用作用很大。
图像处理测试
接下来我们进入图像处理,虽然没有像OpenSSL那样增加一倍,但Linux 2.6.29在GraphicsMagick的测试成绩也取得了显著提高。GraphicsMagick每分钟HWB色彩空间处理次数已经从59上涨到83。
GraphicsMagick的模糊性能,Linux 2.6.29从25上升至40。
GraphicsMagick局部自适应阈值性能,Linux 2.6.29性能几乎增加了一倍。
在GraphicsMagick中改变图片大小时,Linux 2.6.29处理速度明显加快。
最后一项GraphicsMagick测试是图像锐化,Linux 2.6.29显然是表现最好的。在所有这些GraphicsMagick测试中,Linux 2.6.24和2.6.28之间的版本变化不大,而Linux 2.6.29性能大涨。显然在图像处理方面,Linux 2.6.29做了极大的改进。
运算速度测试
我们使用SciMark 2.0进行FFT(Fast Fourier Transform,快速傅立叶转换)性能测定,各内核运算速度基本一致略有波动。
SciMark 2.0中稀疏矩阵乘法运算(Sparse Matrix Multiply)表现相对平稳。
使用RAMspeed的整数相加操作进行基本的内存测试,我们看到新版内核内存速度并没有多大改变。
RAMspeed中的整数缩放比例操作性能没有什么变化。
浮点相加操作也没有什么看点,可能与使用了DDR2内存系统有关。
在Intel IOMeter服务器文件访问模式下通过Flexible IO Tester的测试表明,各版本在EXT3文件系统的硬盘读取性能并没有很大程度上的变化。
另一项硬盘测试中,Java支持的Bork File Encrypter,6个内核加密示例文件需要大致相同的时间。
最后的一项测试使用Sunflow渲染系统测试光线追踪性能。6个内核表现起伏不定,但测试结果非常接近。
好了,这就是最终的结果。我们看到了过去六个Linux内核版本的表现。比较有趣的是Linux 2.6.29的7-Zip压缩速度变慢了,但OpenSSL的表现得到重大提升。在Linux 2.6.29中,影响SQLite数据库存取的现象得以修正,GraphicsMagick性能大为改善。GraphicsMagick性能方面的改进尤其值得赞赏。除了这些值得注意的变化,在我们的Intel Core 2 Duo系统中6个内核在其他方面的表现依然非常稳定,没有重大改善,当然也没有倒退。
我们会进行更多的Linux基准测试。当然在Linux 2.6.29中,除了性能上的变化,还拥有了Intel内核模式设定、Btrfs文件系统、新的和更新的驱动程序,以及其他各种新功能。Linux 2.6.29内核将出现在Fedora 11中。Ubuntu的9.04版本使用的是2.6.28内核【51CTO编者注: Ubuntu9.04在3月26日发Beba版】,Ubuntu的用户如果想尝试一下这个新内核的话需要安装主线核心PPA模块组。