1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
#type("17.klein")#
Basis108/Urlader #326 HD64180-6.144 10.10.86
=====================================
Wiederholungsfaktor für schnelle Operationen : 32766
Wiederholungsfaktor für langsame Operationen : 16383
Anmerkung: In der Version 1.8.0 (Urlader 175 #326) ist der Basis in fast
allen Punkten schneller geworden als mit Urlader 173 #073 (bis zu 40%!).
Langsamer sind die Vergleichsoperationen bei Texten auf dem Heap und die
Integermultiplikation, sowie abhängige davon (ROW-TEXT Subscript mit mehr
als zwei Elementen), da bei diesem Benchmakr die EUMEL0-INT-Multiplikation
nicht durch den HD64180-Prozessorbefehl MULT ersetzt wurde.
Der FMOV Befehl (REAL :=) ist schneller als auf der
M24, sowie einige Vergleiche von langen Texten. Der Test auf der M24 war mit
einem V30 Prozessor durchgeführt worden.
Steuerkonstrukte
FOR REP .17396 msec
WHILE REP .17396 msec
UNTIL REP .14955 msec
IF .05799 msec
SELECT .24721 msec
PROC .41201 msec
PROC (INT) .49441 msec
PROC (INT, INT) .66532 msec
Integer Operationen
INT := (Paketdaten) .07630 msec
INT := (Prozedurdaten) .11292 msec
INT := (Parameter) .18922 msec
ROW INT [i] .34182 msec
INT = .08851 msec
INT <= .09156 msec
INT + .10987 msec
INT * .25942 msec
DIV .48831 msec
INCR .07630 msec
MOD .51578 msec
abs (INT) 1.28792 msec
min (INT , INT) 1.27876 msec
Real Operationen
REAL := .10987 msec (schneller als M24)
ROW REAL [i] .40591 msec
REAL = .25636 msec
REAL <= .17701 msec
REAL + .63175 msec
REAL * 1.93798 msec (schneller als M24)
REAL / 3.75084 msec
INCR 1.55649 msec
MOD 8.37148 msec
abs (REAL) 1.43441 msec
min (REAL, REAL) 1.35812 msec
Text Operationen
TEXT := (1) .11903 msec
TEXT := (10) .64091 msec
TEXT := (30) .59513 msec
ROW TEXT [i] .42727 msec
TEXT = (1) .14955 msec (schneller als M24)
TEXT = (10) .50052 msec
TEXT = (30) .66838 msec (schneller als M24)
TEXT <= (1) .29299 msec
TEXT <= (10) .54019 msec
TEXT <= (30) .71415 msec (schneller als M24)
TEXT * (Faktor 1) 2.03259 msec
CAT (1) .49136 msec
TEXT + (1) 1.66331 msec
TEXT + (10) 2.57889 msec
TEXT + (30) 2.79863 msec
length (1) .10987 msec
length (10) .10987 msec
length (30) .11597 msec
SUB (1) .25026 msec
SUB (10) .25026 msec
SUB (30) .32351 msec
subtext (TEXT, INT, INT) (1) .32045 msec
subtext (TEXT, INT, INT) (10) .32045 msec
subtext (TEXT, INT, INT) (30) .39370 msec
replace (TEXT, TEXT, INT) (1) .34792 msec
replace (TEXT, TEXT, INT) (10) .35097 msec
replace (TEXT, TEXT, INT) (30) .45779 msec
text (TEXT, INT, INT) (1) 3.54331 msec
text (TEXT, INT, INT) (10) 3.40902 msec
text (TEXT, INT, INT) (30) 3.75084 msec
pos (TEXT, TEXT, INT) (1) .43643 msec
pos (TEXT, TEXT, INT) (10) .45779 msec
pos (TEXT, TEXT, INT) (30) .56461 msec
Konvertierungs Operationen
int (REAL) 3.17097 msec
real (INT) 1.65110 msec
int (TEXT) 14.84160 msec
text (INT) 2.84746 msec
text (INT, INT) 9.62888 msec
text (REAL) 41.02728 msec
text (REAL, INT, INT) 8.95746 msec
code (INT) .10682 msec
code (TEXT) .15260 msec
|