ScienceMark v2.0 Membench
ScienceMark v2.0是一款用于测试系统特别是处理器在科学计算应用中的性能的软件,MemBenchmark是其中针对处理器缓存、系统内存而设计的功能模块,它可以测试系统内存带宽、L1 Cache延迟、L2 Cache延迟和系统内存延迟,另外还可以测试不同指令集的性能差异。
ScienceMark v2.0 Membench L1测试成绩
ScienceMark v2.0 Membench L2测试成绩
ScienceMark v2.0 Membench 内存测试成绩
首先我们进行的是ScienceMark的测试,主要考察系统的缓存和内存子系统情况。L1/L2 Cache的成绩主要是跟处理器频率相关,因为目前的处理器当中L1 Cache都是和处理器核心同频率的,而L2 Cache基本上也是——当前的处理器L2都是全速的(放置在处理器内但不在同一个芯片上的Pentium II为半速L2,而Pentium之前的处理器L2则和处理器分离,速度更低)。越快的频率,L1/L2性能就越好。而内存带宽主要由两部分相关:比较大的部分是内存架构,小部分是内存操作指令(集),例如使用最新的SSE指令集比通常的ALU指令集会得到更大的吞吐量,而不同的SSE版本性能也有不同。
ScienceMark Membench | ||
厂商 | Nehalem | DELL PE2900 III |
产品型号 | 单路Core i7 Extreme 940 | 双路E5450 |
内存技术参数 | 1GB DDR3-1066 SDRAM x6 | 2GB FBD ECC DDR2-667 SDRAM x4 |
L1带宽(MB/s) | 47986.27 | 55707.30 |
L2带宽(MB/s) | 19708.26 | 16740.23 |
内存带宽(MB/s) | 13491.82 | 4505.59 |
L1 Cache Latency(ns) | ||
32 Bytes Stride | 1.02 | 1.00 |
L1 Algorithm Bandwidth(MB/s) | ||
Compiler | 42946.57 | |
REP MOVSD | 43613.84 | |
ALU Reg Copy | 12113.23 | |
MMX Reg Copy | 23883.50 | |
SSE PAlign | 47242.50 | |
SSE2 PAlign | 47986.27 | |
L2 Cache Latency(ns) | ||
4 Bytes Stride | 1.02 | 1.00 |
16 Bytes Stride | 1.02 | 1.34 |
64 Bytes Stride | 3.06 | 4.01 |
256 Bytes Stride | 3.06 | 4.01 |
512 Bytes Stride | 2.72 | 4.34 |
L2 Algorithm Bandwidth(MB/s) | ||
Compiler | 18218.37 | |
REP MOVSD | 19708.26 | |
ALU Reg Copy | 8797.54 | |
MMX Reg Copy | 14108.99 | |
SSE PAlign | 18752.85 | |
SSE2 PAlign | 18763.34 | |
Memory Latency(ns) | ||
4 Bytes Stride | 1.36 | 1.00 |
16 Bytes Stride | 1.70 | 4.68 |
64 Bytes Stride | 6.12 | 19.38 |
256 Bytes Stride | 36.65 | 59.48 |
512 Bytes Stride | 43.54 | 66.16 |
Memory Algorithm Bandwidth(MB/s) | ||
Compiler | 10216.66 | 3177.97 |
REP MOVSD | 13421.20 | 3223.82 |
ALU Reg Copy | 9015.34 | 2818.10 |
MMX Reg Copy | 9570.62 | 2992.21 |
MMX Reg 3dNow | --- | --- |
MMX Reg SSE | 12729.13 | 3962.02 |
SSE PAlign | 13379.86 | 4297.17 |
SSE PAlign SSE | 13311.12 | 4124.61 |
SSE2 PAlign | 13491.82 | 4293.79 |
SSE2 PAlign SSE | 13236.43 | 4126.98 |
MMX Block 4kb | 11442.95 | 4167.14 |
MMX Block 16kb | 12754.30 | 4480.38 |
SSE Block 4kb | 11424.75 | 4172.21 |
SSE Block 16kb | 12878.85 | 4505.59 |
从测试结果来看,45nm Nehalem Core i7平台与45nm Penryn Xeon总体超出实在太多了。L1缓存因为与频率密切相关,而且从上一页的表格来看,Core i7 Extreme 940的L1 I-Cache(指令缓存)为4路集合关联,要弱于Xeon E5450的8路集合关联,因此L1延迟要高上一些,L1带宽则要低上不少。
Nehalem的三级缓存架构
Core i7 940的缓存架构 |
对于Core i7 Extreme 940来说,有一处特别的地方就是L3 Cache的存在,L2和L1很相像,都是小容量、低延迟。Xeon E5450就不是这样,因此最终的结果是Nehalem的L2性能要强于Penryn Xeon。由于ScienceMark 2.0认不出Nehalem的L3,因此没有相关的数据。
到了内存延迟和内存带宽测试上,Core i7 Extreme 940完胜,这和Nehalem的架构密切相关:
Nehalem的内置内存控制器架构
由于内置了内存控制器,因此内存延迟极低,在使用同样内存基础频率的情况下,Core i7的延迟只有Xeon的2/3,也就是64%左右。在带宽方面,虽然Core i7只具有3个内存通道,而Xeon平台则具有4个内存通道,然而Xeon的内存数据还要经过狭窄的FSB来到达CPU,比起Core i7的完全独享来自然大有不如,因此Core i7 Extreme 940的内存带宽性能测试大约是Xeon E5450的3倍左右。它们的理论带宽分别是25GB(三通道DDR3-1066)和20.8GB(四通道FBD DDR2-667),可见Core i7的内存带宽效率也远比现在的Xeon + 5000X要高。