Sunday, March 22, 2009

64位和32位系统性能比较

The result is on Fedora 10, Intel Core 2 SL9400 CPU.
A small program is written to rest the multiplication, add, division performance.
The lower time the better.

Many C data type is tested. time32 is 32 bit time. time64 is 64bit time.
O3 means compiling optimization.
type time32 time64 O3 time32 O3time64
float 1.527s 1.682s 0.571s 0.517s
double 1.524s 1.667s 0.571s 0.571s
long double 1.831s 1.830s 0.573s 0.567s
short 1.232s 1.229s 0.419s 0.449s
int 1.106s 1.098s 0.274s 0.273s
long 1.094s 1.089s 0.287s 0.268s
long long 1.500s 1.105s 0.829s 0.274s

The result shows the performance of 64 bit is quite close to 32 bit. Only the in long long data type, the 64 bit is much faster.


nbench:
64bit:
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 942.36 : 24.17 : 7.94
STRING SORT : 210.4 : 94.01 : 14.55
BITFIELD : 3.7781e+08 : 64.81 : 13.54
FP EMULATION : 205.92 : 98.81 : 22.80
FOURIER : 21102 : 24.00 : 13.48
ASSIGNMENT : 28.195 : 107.29 : 27.83
IDEA : 5729.1 : 87.63 : 26.02
HUFFMAN : 1908.4 : 52.92 : 16.90
NEURAL NET : 38.778 : 62.29 : 26.20
LU DECOMPOSITION : 1325.3 : 68.66 : 49.58
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 68.721
FLOATING-POINT INDEX: 46.819
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : Dual GenuineIntel Intel(R) Core(TM)2 Duo CPU L9400 @ 1.86GHz 1867MHz
L2 Cache : 6144 KB
OS : Linux 2.6.29.1-30.fc10.x86_64
C compiler : gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)
libc : libc-2.9.so
MEMORY INDEX : 17.632
INTEGER INDEX : 16.795
FLOATING-POINT INDEX: 25.968
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.
BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 836.4 : 21.45 : 7.04
STRING SORT : 123.13 : 55.02 : 8.52
BITFIELD : 3.6815e+08 : 63.15 : 13.19
FP EMULATION : 123.64 : 59.33 : 13.69
FOURIER : 24071 : 27.38 : 15.38
ASSIGNMENT : 28.406 : 108.09 : 28.04
IDEA : 5425.8 : 82.99 : 24.64
HUFFMAN : 1803.7 : 50.02 : 15.97
NEURAL NET : 35.409 : 56.88 : 23.93
LU DECOMPOSITION : 1325.1 : 68.65 : 49.57
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 57.119
FLOATING-POINT INDEX: 47.458
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : Dual GenuineIntel Intel(R) Core(TM)2 Duo CPU L9400 @ 1.86GHz 800MHz
L2 Cache : 6144 KB
OS : Linux 2.6.29.1-30.fc10.x86_64
C compiler : gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)
libc : libc-2.9.so
MEMORY INDEX : 14.658
INTEGER INDEX : 13.958
FLOATING-POINT INDEX: 26.322
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder.

32bit:

Tuesday, March 17, 2009

我编写的Cueplayer for Linux

程序用Python写的,现在暂时只有命令行界面。
下载地址为Sourceforge的项目:
http://sourceforge.net/projects/cueplayer1/
GPL协议。