[gforth] / gforth / Benchres  

gforth: gforth/Benchres


1 : anton 1.66 Copyright (C) 2003,2004,2005,2006,2007 Free Software Foundation, Inc.
2 : anton 1.49
3 :     This file is free documentation; the Free Software Foundation gives
4 :     unlimited permission to copy, distribute and modify it.
5 :    
6 : anton 1.1 Some benchmark results for various combinations of hardware, Gforth
7 : anton 1.8 version, and Gforth configuration. Unless specified otherwise, the
8 :     default configurations were used. You can measure your combination
9 :     with `make bench'. You can find a table comparing Gforth with six
10 : anton 1.1 interpretive Forth systems in the manual (Section Performance), and a
11 :     comparison with more systems in
12 : anton 1.11 http://www.complang.tuwien.ac.at/papers/ertl&maierhofer95.ps.gz.
13 : anton 1.1
14 :     All times are given in seconds of user time.
15 :    
16 : anton 1.62 Development results:
17 :     sieve bubble matrix fib platform and version
18 : anton 1.65 3.51 3.91 3.54 4.07 Xscale IOP321 (Iyonix) 600MHz; 2007-03-12; gcc-3.3.6
19 :     1.96 2.42 1.97 2.23 Xscale IOP321 (Iyonix) 600MHz; 2007-03-18; gcc-3.3.6; ./configure CC=gcc-3.3 arm_cacheflush=arch/arm/cacheflush1 --enable-force-reg
20 : anton 1.64 2.0 2.3 1.8 2.0 UltraSparc T1 (Sun Fire T1000) 1GHz; Solaris 2.10; gcc-4.0.2; 2007-03-13
21 : anton 1.62
22 : anton 1.55 Results with Gforth 0.6.2 (for comparing CPUs):
23 : anton 1.1 siev bubble matrix fib machine and configuration
24 : anton 1.54 0.21 0.33 0.14 0.36 Athlon 64 3200+ (2GHz, 1MB L2); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
25 : anton 1.55 0.23 0.34 0.14 0.35 Athlon MP 2600+ (2GHz, 0.5MB L2); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
26 :     0.23 0.28 0.19 0.34 Pentium 4 2.26 (Northwood); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
27 :     0.55 0.73 0.32 0.66 Pentium-III 1000 (Coppermine); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
28 :     0.56 0.63 0.36 0.79 Transmeta Crusoe TM5800 (1GHz); gcc-2.95.4; gforth-0.6.2 --enable-force-reg
29 :    
30 :     1.974 2.313 2.033 2.428 Itanium 2 (HP rx2600) 900MHz; gcc-3.3; gforth-0.6.2
31 : anton 1.59 0.427 0.676 0.303 0.630 PPC970 (G5) 2000MHz; Linux (32-bit executable); gcc-2.95.4; gforth-0.6.2
32 : anton 1.55 1.71 2.18 1.30 2.24 PPC7400 (G4) 450MHz; Linux; gcc-2.95.4; gforth-0.6.2
33 : anton 1.60 0.75 1.04 0.41 1.14 PPC7447a (G4) 1066MHz; Linux; gcc-4.1.0; gforth-0.6.2-20060409
34 : anton 1.55 4.18 5.43 3.37 5.88 PPC604e (PowerMac) 200MHz; Linux; gcc-2.95.2; gforth-0.6.2
35 : anton 1.63 3.83 4.60 4.38 4.38 Xscale-IOP80321 (Iyonix) 600MHz; Linux; gcc-3.3.6; gforth-0.6.2 (with minor fixes)
36 :     4.05 4.94 4.67 4.60 Xscale-IOP80321 (Iyonix) 600MHz; Linux; gcc 4.1.2 20061115; gforth-0.6.2
37 : anton 1.64 2.6 3.4 2.6 2.9 UltraSparc T1 (Sun Fire T1000) 1GHz; Solaris 2.10; gcc-4.0.2; gforth-0.6.2
38 : anton 1.55
39 :     All results (for historical perspective):
40 :     siev bubble matrix fib machine and configuration
41 :     0.56 0.63 0.36 0.79 Transmeta Crusoe TM5800 (1GHz); gcc-2.95.4; gforth-0.6.2 --enable-force-reg
42 :     0.21 0.33 0.14 0.36 Athlon 64 3200+ (2GHz, 1MB L2); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
43 :     0.23 0.34 0.14 0.35 Athlon MP 2600+ (2GHz, 0.5MB L2); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
44 : pazsan 1.47 0.31 0.42 0.19 0.46 Athlon 1800+ (Palomino, 1.533GHz); gcc-2.95.3; gforth-0.5.9-20011224 -DFORCE_REG; ELF with dynamic superinstructions
45 : anton 1.44 0.37 0.52 0.24 0.61 Athlon 1200 (Thunderbird); gcc-2.95.1; gforth-0.5.9-20011224 -DFORCE_REG; ELF with dynamic superinstructions
46 :     0.75 1.00 1.29 1.20 Athlon 1200 (Thunderbird); gcc-2.95.1; gforth-0.5.9-20011224 -DFORCE_REG; ELF before dynamic superinstructions
47 : anton 1.42 1.18 1.53 1.94 1.83 Athlon 800 (Thunderbird); gcc-3.0.2; gforth-0.5.9-20011202 -DFORCE_REG -DUSE_TOS; ELF
48 : anton 1.41 1.31 1.67 2.16 1.97 Athlon 800 (Thunderbird); gcc-3.0.2; gforth-0.5.9-20011202 -DFORCE_REG -DUSE_TOS; ELF
49 :     1.36 1.80 2.18 1.86 Athlon 800 (Thunderbird); gcc-3.0.2; gforth-0.5.9-20011202 -DFORCE_REG; ELF
50 :     1.10 1.46 1.91 1.77 Athlon 800 (Thunderbird); gcc-2.95.1; gforth-0.5.9-20011202 -DFORCE_REG; ELF
51 : anton 1.50 0.23 0.28 0.19 0.34 Pentium 4 2.26 (Northwood); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
52 :     0.26 0.29 0.19 0.37 Pentium 4 2.26 (Northwood); gcc-2.95.1; gforth-0.6.1 --enable-force-reg
53 : anton 1.48 0.60 0.79 1.00 0.92 Pentium 4 2.26 (Northwood); gcc-2.95.3; gforth-0.5.0 -DFORCE_REG; ELF
54 : anton 1.50 0.55 0.73 0.32 0.66 Pentium-III 1000 (Coppermine); gcc-2.95.1; gforth-0.6.2 --enable-force-reg
55 :     0.61 0.73 0.33 0.67 Pentium-III 1000 (Coppermine); gcc-2.95.1; gforth-0.6.1 --enable-force-reg
56 :     1.09 1.32 1.62 1.62 Pentium-III 1000 (Coppermine); gcc-2.95.1; gforth-0.5.0 --enable-force-reg
57 : anton 1.39 1.21 1.64 2.06 2.03 Athlon 750 (Thunderbird); gcc-2.95.1; gforth-0.5.0 -DFORCE_REG; ELF
58 : anton 1.38 1.27 1.67 1.95 1.94 Pentium-III 750; gcc-2.95.2; gforth-0.5.0 -DFORCE_REG; ELF
59 : pazsan 1.53 0.63 0.89 0.46 0.89 Athlon 600; gcc-2.95.1; gforth-0.6.2-20030910 --enable-force-reg; ELF with native code generation
60 : pazsan 1.52 0.85 1.15 0.55 1.29 Athlon 600; gcc-3.4-snapshot; gforth-0.6.2-20030910 --enable-force-reg; ELF with dynamic superinstructions
61 : pazsan 1.46 0.81 1.09 0.51 1.23 Athlon 600; gcc-2.95.2; gforth-0.5.9-20011224 -DFORCE_REG; ELF with dynamic superinstructions
62 :     1.07 1.25 0.58 1.34 Athlon 600; gcc-3.0.1; gforth-0.5.9-20011224 -DFORCE_REG; ELF with dynamic superinstructions
63 : pazsan 1.35 1.52 2.09 2.56 2.59 Athlon 600; gcc-2.95.2; gforth-0.4.9 -DFORCE_REG; ELF
64 : anton 1.24 2.39 3.38 4.13 4.18 Celeron 450 (Mendocino); gcc-2.7.2.3 -DFORCE-REG -DDIRECT-THREADED; gforth-0.3.0; ELF
65 : anton 1.30 1.97 2.84 3.21 3.24 Celeron 450 (Mendocino); gcc-2.95; gforth-0.4.9 -DFORCE_REG; ELF
66 : anton 1.22 6.88 7.43 5.80 8.15 AMD K6-2 300MHz 1M PB cache 100MHz; gcc-2.7.2.3 -DFORCE-REG; gforth-0.4.0; ELF
67 : anton 1.30 7.61 8.14 6.50 9.13 AMD K6-2 300MHz 1M PB cache 100MHz; gcc-2.95.1 -DFORCE-REG -DUSE_NO_TOS; gforth-0.4.9; ELF
68 :     6.77 7.21 5.39 7.85 AMD K6-2 300MHz 1M PB cache 100MHz; gcc-2.95.1 -DFORCE-REG -DUSE_TOS; gforth-0.4.9; ELF
69 : pazsan 1.29 5.91 6.89 5.99 7.63 Pentium-MMX 200MHz 512K PB cache; gcc-2.95 -DFORCE-REG -DUSE_TOS; gforth-0.4.9; ELF
70 :     6.68 7.95 6.41 7.99 Pentium-MMX 200MHz 512K PB cache; egcs-1.1b -DFORCE-REG -DUSE_TOS; gforth-0.4.9; ELF
71 :     7.09 7.70 7.20 8.74 Pentium-MMX 200MHz 512K PB cache; gcc-2.95 -DFORCE-REG; gforth-0.4.9; ELF
72 : pazsan 1.25 7.23 7.81 7.22 8.47 Pentium-MMX 200MHz 512K PB cache; gcc-2.7.2.3 -DFORCE-REG; gforth-0.3.0; ELF
73 : pazsan 1.23 7.36 8.16 7.73 9.04 Pentium-MMX 200MHz 512K PB cache; egcs-1.1b -DFORCE-REG; gforth-0.4.0; ELF
74 : anton 1.13 10.91 11.94 11.24 13.13 Pentium 133MHz 256K PB cache; gcc-2.6.3 -DFORCE_REG; gforth-0.1beta; a.out
75 : pazsan 1.14 11.16 11.86 10.64 12.53 Pentium 133MHz 512K PB cache; gcc-2.7.2p -DFORCE_REG, gforth-0.3.0; ELF
76 : anton 1.17 12.62 13.56 11.04 14.97 AMD K6 166MHz 512K PB cache; gcc-2.7.2p -DFORCE_REG, gforth-0.3.0; ELF
77 :     11.81 14.39 13.61 15.07 IBM/Cyrix-6x86 133MHz (P166+) 512K PB cache; gcc-2.7.2.1 -DFORCE_REG -DDIRECT_THREADED; gforth-0.3.0; ELF
78 : anton 1.19 12.08 11.90 11.06 12.09 Cyrix-6x86MX 166MHz (PR200) 512K PB Cache; gcc-2.7.2.1 -DFORCE_REG -DDIRECT_THREADED; gforth-0.3.0; ELF
79 : anton 1.13 29.89 35.42 26.96 34.59 i486 66MHz 256K cache; gcc-2.6.3 -DFORCE_REG -DDIRECT_THREADED; gforth-0.1beta; a.out
80 : anton 1.36 25.87 29.96 23.25 29.98 i486 66MHz 256K cache; gcc-2.95.1 -DFORCE_REG; gforth-0.4.9-20000726; ELF
81 : pazsan 1.5 39.50 45.91 36.73 44.90 i486 50MHz 256K cache; gcc-2.7.0 -DFORCE_REG -DDIRECT_THREADED; gforth-0.1beta
82 :     42.82 46.74 38.69 48.30 i486 50MHz 256K cache; gcc-2.7.0 -DFORCE_REG; gforth-0.1beta
83 : anton 1.15
84 : anton 1.51 1.144 1.329 0.762 1.333 Itanium 2 (HP rx2600) 900MHz; gcc-3.3; gforth-0.6.2-20030910
85 :     1.974 2.313 2.033 2.428 Itanium 2 (HP rx2600) 900MHz; gcc-3.3; gforth-0.6.2
86 :    
87 : anton 1.45 0.790 1.375 0.850 1.118 21264B (UP1500) 800MHz 8MB cache; gcc-2.95.2; gforth-0.5.9-20011229 with alignment
88 :     0.891 1.646 0.729 1.289 21264B (UP1500) 800MHz 8MB cache; gcc-2.95.2; gforth-0.5.9-20011229 without eliminating jumps
89 :     1.383 1.769 2.415 2.139 21264B (UP1500) 800MHz 8MB cache; gcc-2.96; gforth-0.5.9-20011229
90 : anton 1.26 2.14 3.11 3.20 3.96 21264 (Compaq XP 1000) 500MHz 4M cache; egcs-1.0.3+gas; gforth-0.4.0
91 : anton 1.31 2.03 2.91 3.45 4.39 21264 (Compaq XP 1000) 500MHz 4M cache; gcc-2.95.1 -mcpu=21164a -DFORCE_REG; gforth-0.4.9
92 : anton 1.45 1.86 2.09 1.58 2.17 21164a (Alpha,164LX) 600MHz 2M cache; gcc-2.95.1; gforth-0.5.9-20011229 with alignment
93 :     1.79 2.24 1.52 2.06 21164a (Alpha,164LX) 600MHz 2M cache; gcc-2.95.1; gforth-0.5.9-20011229 without alignment
94 :     2.65 2.87 2.28 3.09 21164a (Alpha,164LX) 600MHz 2M cache; gcc-2.95.1; gforth-0.5.9-20011229 without eliminating jumps
95 : anton 1.18 3.09 3.24 2.39 3.42 21164A (Alpha,164LX) 600MHz 2M cache; gcc-2.7.2.1+gas; gforth-0.3.0
96 : anton 1.31 2.74 2.95 2.20 3.45 21164a (Alpha,164LX) 600MHz 2M cache; gcc-2.95.1 -mcpu=21164a -DFORCE_REG; gforth-0.4.9
97 : anton 1.18 3.7 3.8 2.8 4.1 21164A (Alpha,PC164) 500MHz 2M cache; gcc-2.7.2.1+as (Digital Unix); gforth-0.3.0
98 : anton 1.45 6.28 5.94 4.92 5.92 21064A (Alpha,Cabriolet) 300MHz 2M cache; gcc-2.95.2; gforth-0.5.9-20011229 with alignment
99 :     6.18 6.07 4.94 5.61 21064A (Alpha,Cabriolet) 300MHz 2M cache; gcc-2.95.2; gforth-0.5.9-20011229 without alignment
100 : anton 1.18 7.0 7.6 6.2 7.7 21064A (Alpha,Cabriolet) 300MHz 2M cache; gcc-2.7.2; gforth-0.2.0
101 : anton 1.15
102 : anton 1.55 7.49 7.85 6.21 8.07 R4400 250 Mhz 2Mb cache; gcc-2.7.2.2; gforth-0.4.0?
103 : anton 1.32 7.45 7.98 5.82 9.44 R10000 (SGI PowerChallenge XL) 195MHz 2M cache; egcs-1.1.2 -DFORCE_REG; gforth-0.4.9
104 : anton 1.15 17.3 19.0 14.1 18.3 R4000 (DecStation 5000/150) 100MHz 1M cache; gcc-2.4.5; gforth-0.1beta
105 :     50.9 56.8 42.4 52.0 R3000 (DecStation 5000/200) 25MHz 64K+64K cache; gcc-2.5.8 -DFORCE_REG; gforth-0.1beta
106 :    
107 : anton 1.16 7.8 8.6 7.0 10.3 UltraSparc-II 248MHz; Solaris.5.5.1; gcc-2.7.1; gforth-0.3.0
108 :     28.5 31.1 26.3 33.3 SuperSparc (Sparcstation 10) 40MHz; Solaris.5.5.1; gcc-2.7.1; gforth-0.3.0
109 : anton 1.8 59.5 65.8 69.5 61.9 FJMB86903 (SPARC ELC) 33MHz; gcc-2.5.8; gforth-0.1beta
110 : anton 1.12 84.34 91.49 76.16 88.83 L64801 25MHz (SPARC IPC) 64K WT cache; gcc-2.4.5; gforth-0.1beta
111 : anton 1.15
112 :     11.6 12.1 10.8 15.6 PA8000 (HP C160) 160MHz 64M RAM; gcc-2.7.2; gforth-0.3.0
113 : anton 1.8 30.0 34.1 20.5 33.0 PA-RISC 1.1 (HP 720) 50MHz 64K cache; gcc-2.6.3 -DDIRECT_THREADED; gforth-0.1beta
114 :    
115 : anton 1.57 0.89 1.17 0.58 1.18 PPC7447A (G4) 1066MHz; Linux; gcc-2.95.4; gforth-0.6.2
116 : anton 1.50 1.71 2.18 1.30 2.24 PPC7400 (G4) 450MHz; Linux; gcc-2.95.4; gforth-0.6.2
117 : anton 1.40 2.11 2.43 1.52 2.66 PPC7400 (G4) 450MHz; Linux; gcc-2.95.2; gforth-0.5.0
118 : anton 1.27 3.36 4.06 2.39 4.33 PPC750 (PowerMac 7500, G3-upgrade) 308MHz; Linux; egcs-1.02; gforth 0.4.0-19990312
119 : anton 1.50 4.18 5.43 3.37 5.88 PPC604e (PowerMac) 200MHz; Linux; gcc-2.95.2; gforth-0.6.2
120 :     5.56 6.11 4.29 7.42 PPC604e (PowerMac) 200MHz; Linux; gcc-2.95.2; gforth-0.5.0
121 : anton 1.27 5.68 6.53 4.25 7.47 PPC604e (PowerMac) 200MHz; Linux; gcc-2.7.2.1; gforth-0.4.0-19990312
122 : anton 1.21 6.81 7.53 5.10 8.12 PPC604e (PowerMac) 200MHz; Linux; gcc-2.7.2.1; gforth-0.4.0
123 :     8.25 10.09 6.45 10.34 PPC604e (PowerMac) 200MHz; Linux; gcc-2.7.2.1; gforth-0.3.0 (indirect threaded)
124 : anton 1.15 14.05 16.96 11.14 17.51 PPC604 (PowerMac) 132MHz 256K L2 cache; MkLinux 2.1; gcc-2.7.2.1; gforth-0.3.0
125 : anton 1.34 7.42 8.81 5.96 8.61 PPC603 (Amiga + BlizzardPPC) 160Mhz; gcc-2.95.2 -DDIRECT_THREADED; gforth-0.4.9-19990617
126 :     16.29 10.38 7.58 10.5 PPC603 (Amiga + BlizzardPPC) 160Mhz; gcc-2.95.2 -DINDIRECT_THREADED; gforth-0.4.9-19990617
127 : anton 1.51
128 :     4.38 5.66 3.52 4.86 StrongARM SA-1110 206MHz (iPAQ); Linux; gcc-2.95.2; gforth-0.6.2-20030910 --enable-force-reg --dynamic

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help