Tole tukaj so rezultati mojih testov. Testi pokazejo predvsem hitrost procesorjev (pa se te ne prevec dobro), za prvi obcutek pa kar zadostujejo.

Opis testov je spodaj, rezulati pa (upam) govorijo sami zase.

Ce zelis stestirati svoj racunalnik, lahko dobis tudi izvorno kodo.

Tabela rezultatov:

Racunalnik (operacijski sistem)skupni
indeks
testniktest
prast
test
fptest
test
inverz
indeks
prast
indeks
fptest
indeks
inverz
1. Fujitsu VPP5000 (UNIX System 5 4.1) ^2 578,97 Mkx 2,86 0,08 0,16 14,20 1387,91 334,78
2. PC-Xeon X5670 @2,93GHz (Linux 3.11.0) 232,99 Mkx 0,32 0,47 0,15 128,34 221,57 349,07
3. Cray C98 (Unicos 7.c.3) 220,20 Jure 32,48 0,21 0,33 1,25 500,67 158,67
4. PC-AMD Opteron 2218 @2,6GHz (Linux 3.7.10) 134,90 Mkx 0,67 0,73 0,26 60,66 142,66 201,38
5. Compaq XP1000 - 21264@500MHz (Digital Unix V4.0) 111,67 Mkx 1,56 1,32 0,23 26,03 79,10 229,88
6. PC-Pentium 4 Xeon@2000MHz (Linux 2.4.18) 68,28 Iztok 0,77 2,67 0,46 52,72 38,96 113,16
7. PC-Pentium 4 @1700MHz (Linux 2.4.20) 67,84 Mkx 0,75 2,98 0,46 53,95 34,91 114,65
8. PC-Atom N2600 @1,6 GHz (Linux 3.2.57) 60,07 Mkx 1,08 3,11 0,48 37,63 33,49 109,08
9. AlphaPC - 21164@533MHz (Linux 2.2.16) $3 48,49 Mkx 2,77 2,46 0,59 14,67 42,32 88,48
10. AlphaPC - 21164@500MHz (Digital Unix V4.0) 46,36 Mkx 2,85 2,25 0,67 14,26 46,28 78,55
11. PC-Pentium III@800MHz (Linux 2.2.18) 39,20 Mkx 1,51 3,05 0,93 26,91 34,18 56,50
12. PC-Pentium III@733MHz (Windows 2000) 38,21 Mkx 1,16 4,69 0,91 35,00 22,19 57,43
13. PC-Athlon Thunderbird@900MHz (Linux 2.4.2) 37,59 Mkx 1,73 2,73 1,01 22,66 38,10 52,01
14. PC-Pentium III@733MHz (Linux 2.2.17) 35,64 Mkx 1,66 3,33 1,02 24,48 31,27 51,17
15. NEC SX-4 (Super-UX 7.2) ^2 32,71 Mkx 15,50 59,77 0,56 2,61 1,74 93,78
16. PC-Pentium III@500MHz (Linux 2.2.14) 27,50 Mkx 1,64 5,09 1,41 24,83 20,46 37,22
17. AlphaPC - 21164@433MHz (Linux 2.0.27) @1 23,86 Mkx 4,85 3,42 1,60 8,38 30,48 32,73
18. PC-Pentium II@450MHz (Linux 2.0.36) 22,84 Mato 2,86 5,72 1,45 14,19 18,21 36,11
19. SGI Origin 2000 - R10000@250MHz (Irix64 6.5) 22,09 Mkx 4,04 2,85 2,67 10,06 36,58 19,64
20. DEC 2100 4/200 (OpenVMS 6.2) 20,72 Jan 8,98 10,68 1,09 4,53 9,75 47,89
21. DEC 1000 4/200 (OpenVMS 6.1-1H2) 19,61 Mkx 8,71 11,08 1,17 4,67 9,40 44,75
22. DEC 3000/600S (OpenVMS 6.1) 18,87 Mkx 8,71 11,81 1,20 4,15 8,82 43,63
23. AlphaStation 600 5/333 (Digital Unix V3.2) $1 18,44 Mkx 6,30 4,45 2,06 6,45 23,40 25,47
24. PC-Celeron @333MHz (Linux 2.0.35) 17,03 Mkx 3,77 7,51 1,98 10,78 13,87 26,44
25. SGI Origin 200 (Irix64 6.5) 16,26 Mkx 5,60 3,85 3,62 7,26 27,05 14,46
26. PC-Pentium II@300MHz (Windows 95; Borland C++) 15,79 Mkx 3,21 12,15 2,00 12,65 8,57 26,14
27. DEC 3000/300 (OpenVMS 6.1) 14,47 Mkx 11,98 15,34 1,58 3,39 6,79 33,22
28. PC-AMD K6-2@350MHz (Linux 2.0.36) 13,82 Mkx 3,16 8,98 3,08 12,87 11,59 17,00
29. HP 9000/782 (PA-8200@200MHz; HP-UX 10.20) 12,77 Mkx 10,78 6,37 2,88 3,77 16,34 18,20
30. AlphaStation 600 5/333 (Digital Unix V3.2) $2 11,91 Mkx 8,93 4,74 5,68 4,55 21,95 9,22
31. AlphaPC - 21164@433MHz (Linux 2.0.27) @2 9,25 Mkx 8,65 9,53 4,32 4,70 10,93 12,13
32. Fujitsu VPP5000 (UNIX System 5 4.1) ^1 9,04 Mkx 4,08 13,07 5,70 9,96 7,97 9,19
33. Sun sparc 20 (SunOS 5) 8,38 Sasa 44,90 13,70 3,15 0,91 7,60 16,62
34. NEC SX-4 (Super-UX 7.2) ^1 8,23 Mkx 15,61 60,62 2,57 2,60 1,72 20,37
35. Sun Ultra1 Creator (SunOS 5.5) $1 6,14 Roman 14,03 9,61 11,21 2,90 10,84 4,67
36. PC-Pentium Pro@150MHz (Linux 2.0.23) 6,00 Mkx 8,49 15,53 8,06 4,79 6,71 6,50
37. Sun Ultra1 Creator (SunOS 5.5) $2 5,96 Roman 13,79 10,10 11,32 2,94 10,31 4,62
38. PC-Pentium Pro@150MHz (MS-DOS 7.0) # 5,78 Mkx 8,34 16,26 8,65 4,87 6,40 6,06
39. SGI Indy Webforce (IRIX 5.3) $1 5,31 Jan 10,84 20,75 7,31 3,75 5,02 7,16
40. PC-Cyrix 6x86@120MHz (Linux 2.0) 5,08 Mkx 8,86 26,00 7,88 4,59 4,01 6,65
41. PC-Pentium@133MHz (Linux 2.0.23) 4,97 Mkx 12,28 16,56 9,86 3,31 6,29 5,31
42. HP 9000/715 (HP-UX A.09.01 E) 4,29 Mkx 27,54 14,59 12,35 1,48 7,14 4,24
43. SGI Indy Webforce (IRIX 5.3) $2 4,03 Jan 12,92 20,75 13,33 3,15 5,02 3,93
44. IBM RS6000 375 (AIX-3) 3,80 Ales 17,58 22,12 11,95 2,31 4,71 4,38
45. PC-Pentium@100MHz (Linux 1.3.79) 3,65 Mkx 16,23 23,31 13,11 2,49 4,47 3,99
46. PC-AMD K5@133MHz (Linux 2.0) 3,57 Matjaz 14,91 53,33 8,69 2,73 1,95 6,03
47. HP 9000/887 (HP-UX A.09.04 E) 3,53 Jure 22,69 28,69 10,12 1,79 3,63 5,17
48. SGI Indigo/XS24 (IRIX 5.3) % 3,34 Ales 24,09 29,45 10,93 1,69 3,54 4,79
49. SGI Indy (IRIX 5.3) % 3,30 Ales 24,31 29,71 11,08 1,67 3,50 4,72
50. PC-Pentium@75MHz (MS-DOS 6.22) # 2,96 Mkx 21,81 29,50 15,02 1,86 3,53 3,49
51. HP 9000/715 (HP-UX A.09.01 A) $1 2,67 Jan 43,53 23,05 20,48 0,93 4,52 2,55
52. HP 9000/710 (HP-UX A.09.05 A) 2,61 Mkx 42,00 25,04 19,42 0,97 4,16 2,70
53. HP 9000/720 (HP-UX A.09.01 E) 2,59 Mkx 41,88 25,21 19,52 0,97 4,13 2,68
54. Sun Sparc 4m (SunOS 5.4) 2,27 Mkx 38,35 30,73 22,30 1,06 3,39 2,35
55. HP 9000/712/60 (HP-UX A.09.05 A) 1,82 Mkx 40,69 52,98 20,90 1,00 1,97 2,51
56. PC-486DX4@100MHz (Linux 1.2.11) 1,80 Mkx 24,78 55,30 28,05 1,64 1,88 1,87
57. HP 9000/806 (HP-UX A.09.04 E) 1,75 Mkx 47,05 69,88 18,11 0,86 1,49 2,89
58. HP 9000/857 (HP-UX A.09.00) 1,51 Jure 47,14 78,61 22,16 0,86 1,32 2,36
59. HP 9000/715 (HP-UX A.09.01 A) $2 1,44 Jan 48,31 57,71 31,33 0,84 1,80 1,67
60. PC-486DX2@66MHz (MS-DOS 6.0) # 1,31 Mkx 31,83 78,41 39,98 1,28 1,33 1,31
61. MicroVAX 3100-80 (VAX/VMS V5.5-1) + 1,19 Mkx 55,23 144,93 24,77 0,74 0,71 2,11
62. PC-486DX@50MHz (MS-DOS 5.0) # 1,00 Mkx 40,64 104,14 52,36 1,00 1,00 1,00
63. MicroVAX 3100 (ULTRIX 4.2) 0,77 Cic 73,10 141,19 50,81 0,56 0,74 1,03
64. VAX 8550 (VAX/VMS V5.5-2) 0,62 Mkx 100,44 262,32 50,10 0,40 0,40 1,05
65. PC-386/387DX@40MHz (MS-DOS 5.0) # 0,45 Mkx 97,72 162,49 181,13 0,42 0,64 0,29
66. Apple Centsis 610 (System 7.5.1) 0,45 Nejc 69,68 378,78 109,68 0,58 0,27 0,48
67. PC-386/387DX@40MHz (MS-Windows 3.1 - DOS okno) # 0,42 Mkx 104,12 172,85 193,33 0,39 0,60 0,27
68. PC-386/387DX@40MHz (Linux 1.1.59) 0,41 Mkx 106,09 184,07 183,18 0,38 0,57 0,29
69. MicroVAX 2000 (VAX/VMS V5.5-2) 0,10 Mkx 511,28 1937,17 285,46 0,08 0,05 0,18
70. MicroVAX II (VAX/VMS V5.5-2) 0,10 Mkx 513,90 1945,74 285,68 0,08 0,05 0,18
71. VAX 11-750 (VAX/VMS V5.5-2) + 0,04 Mato 839,59 7901,60 855,68 0,05 0,01 0,06
72. PC-386DX@40MHz (MS-DOS 5.0) # 0,03 Mkx 633,90 11441,21 8729,45 0,06 0,06 0,01

Opombe:

Opravljeni so bili trije testi:
  1. prast poisce prvih 100.000 prastevil in je predvsem zahteven (no, ja) pri delu s pomnilnikom in pri celostevilcnih deljenjih.

  2. fptest 2,000.000-krat izracuna vrednost izraza, sestavljenega iz vec funkcij (racunanje s plavajoco vejico) za razlicne argumente. Pokazal naj bi hitrost numericnega dela procesorjev.

  3. inverz 2.000-krat izracuna inverz matrike dimenzije 16x16 kar direktno z Gaussovim obratom (vsaj mislim, da se temu tako rece). Namenjen je bil Crayu, da bi se izkazal (stvar je napisana tako, da bi moral racunanje paralelizirati). Razlika naj bi se pokazala v primerjavi z testom st. 2 (fptest). Ampak ocitno je, da je ze prvi test paraleliziral (dosti juhe bom moral se pojesti, da bom doumel bistvo vektorskih racunalnikov, se bolj pa mehanizme prevajalnikov).

    Pravzaprav stvar deluje cisto vredu. To se pokaze tako na Fujitsu VPP5000, kot tudi na NEC SX4.

Rezultati testov so podani v CPU casu, ki ga je posamezen racunalnik porabil, da je izvedel test. To pomeni, da je npr. na VAX 8550 test tekel kot batch proces in je zato v resnici tekel nekaj ur (zaradi zasedenosti racunalnika).

Izracunani indeksi kazejo hitrost racunalnika, normalizirano na hitrost PC 486DX-50 (ki je bil ob zacetku testiranj precej pogost pojav v nasih logih). Indeksi so relativne hitrosti za odgovarjajoce teste, skupni indeks pa njih povprecje. Glede na znacaj testov je ocitno, da je vecji pomen dan racunanju z realnimi stevili (FP), kar je nekako ustrezno raziskovalnemu delu (beri: modeliranje ...). Ravno zato se 'ubogi' PC 386DX tako slabo odreze (ker so vsa racunanja z realnimi stevili opravljena softwersko). Npr.: v testu prast se za vsako stevilo, ki ga testira, izracuna en koren. Po mojih ocenah se v celem testu izvede priblizno 20-30 M celostevilskih deljenj in prav toliko primerjanj in priblizno 10x manj racunanj korenov, pa je 386 brez 387 kar 6x pocasnejsi. To kaze pomembnost uporabe FP procesorja, ceprav je problem naceloma precej celostevilski.

Nekaj racunalnikov se pojavi v tabeli po veckrat z dodatnimi oznakami (npr. $1, $2, ...). Razlike v rezultatih seveda ne pokazejo razlike v hitrosti, saj gre za isti racunalnik, temvec kazejo razlike v optimizaciji pri prevajanju.

Legenda znakov:

% To sta racunalnika s procesorjem MIPS R4000
$1 Testni programi so bili prevedeni s prilozenim C prevajalnikom (cc)
$2 Testni programi so bili prevedeni z GNU C prevajalnikom (gcc)
$3 Testni programi so bili prevedeni s Compaq C prevajalnikom (ccc) za Linux/Alpha
@1 Testni programi so bili prevedeni na Alpha racunalniku z Digital Unixom iz uporabo Digitalovega prevajalnika za C. Ob izvajanju so bile uporabljene tudi knjiznice z racunalnika z DU.
@2 Testni programi so bili prevedeni z gcc, ob izvajanju so bile uporabljene GNU in/oziroma Linux knjiznice. Razlika med hitrostjo izvajanja tako prevedenih programov in programov z oznako @1 kaze na razliko v optimiziranosti sistemskih in matematicnih knjiznic.
^1 Testni programi so bili prevedeni z izkljuceno vektorizacijo.
^2 Testni programi so bili prevedeni z vkljuceno vektorizacijo.
# Za te racunalnike so bili izvrsni programi isti, le da je pod DOSom tekel z VCPI extender sistemom, pod MSW 3.1 (MS Windows 3.1) pa v DOS oknu in z DPMI extender sistemom. Programi za te teste so bili prevedeni pod Linux-om.
+ Na tem racunalniku iz katerega koli razloga izvorna koda ni bila prevajana, zato so se executabli skopirali z racunalnika UEK1 in tam le izvedli.

Tale spisek rezultatov testov vzdrzuje Metod Kozelj.