前言
尝试比较异构架构x86-64,e2k(Elbrus),mips和arm上的处理器性能。
所有测试均以C语言编写(取自我未修改或优化的源代码),并使用针对该体系结构的特定编译器针对特定体系结构进行了编译,并且测试在Linux操作系统的各种发行版上进行。结果可能会受到编译器的类型和版本以及优化模式的影响。尽管以这种方式,您也可以粗略比较不同体系结构上的处理器的性能。
PS:我知道大多数测试都是针对非常老旧的计算机的,但是它们可以在任何地方使用。哪一个很好。
比较处理器的体系结构类型
中钢国际
CISC(复杂指令集计算)是一种架构,其中一小部分寄存器,各种长度的命令,操作由一个命令编码。
RISC
RISC(精简指令集计算)是一种处理器体系结构,其中的指令经过简化并且具有固定的长度(例如32位),可以提高性能。它具有大量的寄存器。
弗利
VLIW(非常长的指令字)-具有非常大指令的处理器体系结构。一条指令包含许多可以由不同处理器单元执行的简单指令。所有这些都大大简化了体系结构,但使编译器复杂化。无效的代码会生成不完整的指令,从而大大降低程序性能。
比较处理器的架构描述
x86-64(ia32 / x86 / i386 / amd64 / EM64T /英特尔/ AMD)
x86 — CISC , Intel, . 32- Intel 386. : Intel, AMD VIA ( - Zhaoxin).
ARM
ARM — RISC ARM Limited 80 . 32- ARM : armv6 (ARM1136J(F)-S), armv7 (Cortex A9, Cortex A15), armv8 (CortexA53, CortexA57, Cortex A72 ). , , , . .
MIPS
MIPS — RISC , MIPS Computer Systems. ARM , , .. - ARM . MIPS , , Play Station 1. : 32- MIPS32 64- MIPS64.
E2K (Elbrus 2000/)
VLIW
Dhrystone
Dhrystone — , Reinhold P. Weicker 1984 .
, 2.1 , .
VAX Dhrystones , 1 VAX DMIPS = Dhrystones 1757.
Whetstone
Whetstone — , Harold Curnow 1972 Fortran.
C Roy Longbottom. MWIPS,
MOPS ( ) MFLOPS ( ).
: ,
, , , .
Whetstone JS ( NodeJS) C# ( Mono, .Net Framework Dotnet Core), Java.
Whetstone MP — Whetstone.
LINPACK
LINPACK — , Jack Dongarra Fortran 70 , C.
, () ().
Linpack 100x100 float.
.
C. 2009 Shay Gal-On EEMBC
: ( ), ( ), (, ), CRC.
Memspeed
Memspeed — 3 , 64- , 32- and 32- 2 :
- r = r + x [m] * y[m] (Integer + y [m])
- x[m] = x[m] + y[m]
- x[m] = y[m]
Livermore Loops
, 1970, 14 Fortran. 24 1980'. MFLOPS.
. — , 24 3 Do-loop , .
MP MFLOPS
MP MFLOPS — , .
x[i] = (x[i] + a) * b - (x[i] + c) * d + (x[i] + e) * f
2, 8 32 1 . 0.1, 1 10 4 .
.
Scimark 2
SciMark 2 — C . 5 : FFT ( ), Gauss-Seidel relaxation ( — ), Sparse matrix-multiply ( ), Monte Carlo integration ( -), LU factorization (LU-).
x86 (i386) 86-64 (amd64):
armv6 (armel), armv7 (armhf), armv8 (aarch64):
e2k (Elbrus 2000) (v3, v4, v5):
MIPS :
, .
Dhrystone
Dhrystone 1 :
Dhrystone, :

Dhrystone, 1 :

Dhrystone, Core i7-2600:

, Dhrystone x86 arm . 1 8 (E8C) Cortex A72, Dhrystones 1 , 8 Atom Z8350 Dhrystones 1 . Baikal T1 Arm Cortex A9. 8, 8. , , .
Whetstone
Whetstone Single Precision,

Whetstone Single Precision,

Whetstone Single Precision, 1

Whetstone Single Precision, , 1

Whetstone Single Precision, Core i7-2600

Whetstone Single Precision, , Core i7-2600

, ARM v7 Cortex A9 Pentium III, 1 .
, ARM v8 Cortex A72 Core 2 Duo T9400 1 1 ,
Atom Z8350. , Pentium 4 (NetBurst)
, (Pentium III 1 ).
Core 2 Duo T9400 1 1 ARM v7 Cortex A72, .
Whetstone:
LINPACK 100x100 DP ()
LINPACK 1000x1000, High Performance LINPACK, LINPACK 100x100.
LINPACK 100x100 DP, ? : .
:
LINPACK 100x100 Double Precision,

LINPACK 100x100 Double Precision, 1

LINPACK 100x100 Double Precision, Core i7-2600

C Mflops' 1 1 .
ARM v7 Cortex A9 (Odroid X2), ARM v8 Cortex A53 (Raspberry PI 3, Orange Pi Win, Orange Pi PC2 ) , Pentium III, . ARM v8 Cortex A72 (Odroid N2, AWS Graviton [Alpine AL73400]) Core 2 Duo T9400 Atom Z8350 .
E2K ( : E1C+, E4C, E8C1, E8C2 ) ARM , Cortex A72, 1,5 — 2 Intel, AMD A6-3650 Core 2 Duo T9400. , Intel.
Coremark, ,

Coremark, ,

Coremark, , 1

Coremark, , 1

Coremark, , Core i7-2600

Coremark, , Core i7-2600

1 ARM (Cortex A9, Cortex A53) 3 Intel (Core i7-2600 ),
ARM (Cortex A9, Cortex A53) Atom Z8350, Core 2 Duo T9400 AMD A6-3650. Baikal T1 Atom Z8350, Core 2 Duo T9400 AMD A6-3650,
Atom Z8350.
Memspeed ()
(x[i] = x[i] + a * y[i])
(x[i] = x[i] + y[i])
(x[i] = y[i])
Memspeed, - ,

Memspeed, ,

Memspeed, ,

, , .
ARM (Cortex A9, Cortex A53) , AWS Graviton ( , ).
Intel ( 3 ). 8
8 , DDR4-2400.
MP MFLOPS
, :
2
x[i] = (x[i]+a)*b;
8
x[i] = (x[i]+a)*b-(x[i]+c)*d+(x[i]+e)*f;
32
x[i] = (x[i]+a)*b-(x[i]+c)*d+(x[i]+e)*f-(x[i]+g)*h+(x[i]+j)*k-(x[i]+l)*m+(x[i]+o)*p-(x[i]+q)*r+(x[i]+s)*t-(x[i]+u)*v+(x[i]+w)*y;
MP MFLOPS,

MP MFLOPS, , 2 ops/w

MP MFLOPS, , 8 ops/w

MP MFLOPS, , 32 ops/w

MP MFLOPS, , Core i7-2600

: ( VLIW).
8 378 ( 576) 32 . Core i7-2600 — 82.6 .
ARM 23.7 ( Cortex A72, Odroid N2), AWS Graviton — 117 , 16 .
Scimark 2 ()
Scimark 2, ,


ARM Cortex A9, Cortex A53 Intel Atom, Pentium 4.
ARM Cortex A72 Intel Core.
ARM, Intel Core -
, , , lcc .
P.S.
: e2k_chat ixbt, .
, ARM.
, .
ODS
- ,
- ,
- Independent Tests of Baikal-T1
MP MFLOPS
Elbrus助记符列表