Current issue

Vol.26 No.4

Vol.26 No.4

Volumes

© 1984-2017
British APL Association
All rights reserved.

Archive articles posted online on request: ask the archivist.

archive/17/2

Volume 17, No.2

Timings for CMIOTA

These timings relate to the CMIOTA5 puzzle in the last issue. Unfortunately there was not room to print them in Vector. Ed.

Here are the results of our timings. The numbers identify the best algorithm (e.g. 5 means CMIOTA5).

Best algorithms for APL*PLUS PC

 

2 Columns

 

4 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 9 1 1 1 1   9 9 5 5 5
8 1 1 1 1 1   9 7 5 5 5
64 1 1 1 1 1   4 4 10 10 10
256 1 1 1 1 1   4 4 10 10 10
2048 1 1 1 1 1   4 4 10 10 10

 

8 Columns

 

16 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 2 2 2 5 5   9 5 5 5 5
8 2 2 2 2 2   4 4 5 5 5
64 2 2 2 10 10   4 4 10 10 10
256 2 2 10 10 10   4 4 4 10 10
2048 4 4 4 10 10   4 4 4 10 10

Best algorithms for APL*PLUS II

 

2 Columns

 

4 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 9 9 9 9 5   3 3 3 3 3
8 9 8 6 6 6   3 3 3 3 3
64 8 8 6 6 6   3 3 3 3 3
256 4 6 6 6 6   3 3 3 3 3
2048 4 4 6 6 6   3 3 3 3 3

 

8 Columns

 

16 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 2 8 9 9 5   9 9 9 9 5
8 8 9 9 9 9   8 9 9 9 9
64 8 8 10 10 10   8 8 10 10 10
256 8 4 10 10 10   4 4 10 10 10
2048 4 4 10 10 10   4 4 10 10 10

Best algorithms for Mainframe APL2

 

2 Columns

 

4 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 8 8 6 6 6   8 8 8 5 5
8 9 9 6 6 6   9 9 12 12 7
64 9 6 6 6 6   9 9 12 7 7
256 9 6 6 6 6   9 12 7 7 7
2048 9 6 6 6 6   9 12 7 7 7

 

8 Columns

 

16 Columns

Rows in:

                   

Right

2 8 64 256 2048   2 8 64 256 2048
Left 2 8 8 8 5 5   8 8 8 5 5
8 9 9 12 12 7   9 8 12 12 12
64 9 9 12 7 7   9 8 12 12 12
256 9 12 7 7 7   9 12 12 12 12
2048 9 12 7 7 7   9 12 12 12 10

We should tell you our APL version number, hardware processor size, whether a coprocessor was present, and so on. But we won’t. These parameters are probably different for you. Even if they’re not, we don’t think you should rely on our timings. Frankly, these numbers are not as hard as they look. In some cases, the winning algorithm changed from one test to the next. For such “ties” we chose the algorithm we liked the most, the one that seemed to fit best in the chart. We opted for symmetry and intuitive results rather than a thorough statistical regimen.

So sue us.

The point of these timings is to illustrate the KIND of effects you can expect to see as you vary the size of the arguments and as you move from one implementation of APL to another. Do you own timings if important.


Reprinted with kind permission from Zark APL Tutor News, a quarterly publication of Zark Incorporated, 23 Ketchbrook Lane, Ellington, CT06029, USA


script began 10:25:55
caching off
debug mode off
cache time 3600 sec
indmtime not found in cache
cached index is fresh
recompiling index.xml
index compiled in 0.2628 secs
read index
read issues/index.xml
identified 26 volumes, 101 issues
array (
  'id' => '10014130',
)
regenerated static HTML
article source is 'HTML'
source file encoding is ''
read as 'Windows-1252'
completed in 0.2899 secs