Scor­pio News

  

January–March 1987 – Volume 1. Issue 1.

Page 60 of 63

since MBASIC is both expensive and long in the tooth. It would be very interesting to compare the speed and accuracy of the Microsoft compatible Mallard BASIC. I understand that it is substantially faster then Microsoft, presumably because it is written in Z80 rather than 8080 code.

The trigonometric functions produced penalties in all cases in both accuracy and/or speed. If the program was run without them, the result war very close to 2500 in all but one case (HP4) – with a range of 2499.69 co 2501.03. The timings were halved (approximately). HP4 gave a result of 2472.00; rather a surprising lack of accuracy, attributable in the main to lower precision arithmetic.

In this particular application, there is very little access, apart from console operations, to whatever operating systems is in use and one is effectively comparing the console performances of the CP/M machines. I did try the ProPascal version of the Dobbs benchmark on a Research Machines 380Z-D; it took 124 secs to complete – about 20% slower than on the 80-BUS machines.

What now?

It will be fairly obvious that a benchmark test is not the “be-all and end-all” neither is it an infallible guide to which language should be used on your machine. For most non-professional users, the question of a second language may not arise unless they go for HiSoft PASCAL – and the professional way be using applications packages written in one language which are not available in any of the others.

From my own experience, I must say that differences in timing due to architectural/​configuration features among any of the 80-BUS machines are small, provided that they are running the same version of CP/M (in my case 2.2). CP/M 3.0 (CP/M PLUS) is available for all 80-BUS machines provided that at least 128K of RAM (for its banked memory function) and Gemini or MAP 80 video and floppy disk controllers are available in the system. It is a delight to use and has many handy facilities which make it much more versatile than CP/M 2.2. It does increase the speed of execution of these benchmarks a little (up to 5 or 6%); in terms of real-time applications, this smell saving in time may be worth considering. I’m also very glad that I don’t have too much to do with CP/M as used on the BBC/​TORCH. It has some nice facilities but it is incredibly slow. CP/M, for all its snags, is supercharged by comparison!

Ultimately, then, the choice is dictated by the application for which you will be running most of your programs. Few people will want to carry out several thousand trig. operations but it does imply that a slow performance in the benchmarks given in this article will be a disadvantage when running programs in which a lot of use is made of graphics. The same is likely to be true of programs in which there is a significant amount of ‘number crunching’, and accuracy (or the lack of it) may be a serious problem.

I haven’t yet come across a benchmark which will test the speed of string handling, and disk i/o tests will depend crucially upon the type of drive, stepping rate, type of FDC and such software horrors as the efficiency of the 8080 code and the way in which data is written to and read from the disk. There’s a lot to be said for using a virtual disk of some of the newer 96TPI drives with 3 ms stepping rates, a great improvement on the Micropolis’ 10 ms and Pertec’s 25 ms. It would appear that the HSA-88B offers a lot of scope for increased speed and (possibly) accuracy but costs as much as or more than many compilers. It would be interesting to see how a 16 bit FOR­TRAN or PASCAL copes with the Dobbs Benchmark both with and without the aid of the 8087 arithmetic co-processor that can be added to the GM888.

By way of a postscript, the performance of the obsolete UK101 was quite impressive and supports my feeling that ROM BASICs on 6502 machines tend to be rather more efficient than either disk or ROM BASICS on the majority of 8080/​Z80 machines. I had, some time ago, run the first of the programs mentioned in this article on a UK101 running at 2 NHz and it pottered through in about 40 seconds.

Page 60 of 63