BEGIN
EXTERNALINTEGERFNSPEC DCPUTIME
LONGREALFN CPUTIME
RESULT =DCPUTIME/1000
END
SYSTEMINTEGERFNSPEC SIGN(LONGREAL X)
LONGREAL X, Y, Z
! %LIBRARY A6, A30
! A6, A30 ARE THE STANDARD %C
FUNCTIONS AND INPUT/OUTPUT ROUTINES
INTEGER I, N, K, L, M, CASE
INTEGERARRAY E1(1 : 1), E2(1 : 1,1 : 1), E3(1 : 1,1 : 1,1 : 1)
ROUTINE P0
END
ROUTINE P1(LONGREAL X)
END
ROUTINE P2(LONGREAL X, Y)
END
ROUTINE P3(LONGREAL X, Y, Z)
END
LONGREALARRAY TT(1 : 43)
ROUTINE PRINTTT
INTEGER I, J
LONGREAL X, MIX, LOOP
CONSTREALARRAY MF(1 : 41) = 1000,
875,
769,
3337,
6242,
2750,
187.5,
125,
430,
995.6,
160.3,
384.6,
500,
166.7,
1390,
154.5,
442,
4759,
5321,
148,
4759,
0,
59,
59,
39,
.73,
201,
94,
1020,
1490,
278,
831,
644,
1750,
591,
27.3,
454.5,
788,
2316,
2316,
6053
! CALCULATE AND PRINT TIME DIFFERENCES
CYCLE I = 1,1,42
X = TT(I+1)-TT(I)
TT(I) = X
PRINTFL(X,7); NEWLINE
REPEAT
! CALCULATE ALGOL MIX FIGURE AS FROM CCU11, %C
MAKING ALLOWANCE FOR STATEMENT REPETITIONS
LOOP = X
MIX = 0.0
I = 1
CYCLE J = 1,1,41
X = MF(J)
MIX = MIX+(TT(I)-LOOP)*X/N
I = I+1
REPEAT
MIX = MIX+LOOP*17800/N
PRINTFL(6524512/MIX,7); NEWLINE
END
X = 1.0; Y = 1.0; Z = 1.0
L = 1; K = 1; M = 1
E1(1) = 1
CASE = 1
N = 10000
! N SHOULD BE GIVEN A LARGE ENOUGH VALUE FOR %C
THE RESOLUTION OF THE CLOCK NOT TO BE A LIMITING C
FACTOR TO THE ACCURACY. IF N IS MADE TOO LARGE, THEN C
PROCESSOR TIME WILL BE WASTED
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
X = 1.0
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = 1
X = 1
X = 1
X = 1
X = 1
X = 1
X = 1
X = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
X = Y
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y+Z
X = Y+Z
X = Y+Z
X = Y+Z
X = Y+Z
X = Y+Z
X = Y+Z
X = Y+Z
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y*Z
X = Y*Z
X = Y*Z
X = Y*Z
X = Y*Z
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y/Z
X = Y/Z
X = Y/Z
X = Y/Z
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
K = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = 1
K = 1
K = 1
K = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
K = L+M
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = L*M
K = L*M
K = L*M
K = L*M
K = L*M
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = L//M
K = L//M
K = L//M
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
K = L
K = L
K = L
K = L
K = L
K = L
K = L
K = L
K = L
K = L
K = 1
K = 1
K = L
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = L
X = L
X = L
X = L
X = L
X = L
X = L
X = L
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
L = INT(Y)
L = INT(Y)
L = INT(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y**2
X = Y**2
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = Y**3
X = Y**3
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = EXP(Z*LOG(Y))
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
E1(1) = 1
E1(1) = 1
E1(1) = 1
E1(1) = 1
E1(1) = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
E2(1,1) = 1
E2(1,1) = 1
E2(1,1) = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
E3(1,1,1) = 1
E3(1,1,1) = 1
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
L = E1(1)
L = E1(1)
L = E1(1)
L = E1(1)
L = E1(1)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
LONGREAL A
END
BEGIN
LONGREAL A
END
BEGIN
LONGREAL A
END
BEGIN
LONGREAL A
END
BEGIN
LONGREAL A
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
LONGREALARRAY A(1 : 1)
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
LONGREALARRAY A(1 : 500)
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
LONGREALARRAY A(1 : 1,1 : 1)
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
LONGREALARRAY A(1 : 1,1 : 1,1 : 1)
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
-> L0
L0:
-> L1
L1:
-> L2
L2:
-> L3
L3:
-> L4
L4:
-> L5
L5:
-> L6
L6:
-> L7
L7:
-> L8
L8:
-> L9
L9:
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
BEGIN
SWITCH SS(1 : 1)
-> SS(1)
SS(1):
END
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = SIN(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = COS(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = MOD(Y)
X = MOD(Y)
X = MOD(Y)
X = MOD(Y)
X = MOD(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = EXP(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = LOG(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = SQRT(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = ARCTAN(Y,1)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = SIGN(Y)
X = SIGN(Y)
X = SIGN(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
X = INTPT(Y)
X = INTPT(Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
P0
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
P1(X)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
P2(X,Y)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
P3(X,Y,Z)
REPEAT
TT(CASE) = CPUTIME
CASE = CASE+1
CYCLE I = 1,1,N
REPEAT
TT(CASE) = CPUTIME
PRINTTT
ENDOFPROGRAM