tsc2597@acf4.UUCP (Sam Chin) (05/28/85)
<> To put to rest the myth that the Z-100 can ever be faster than the IBM AT. I ran the benchmark as suggested by the author of the original note. I used both BASICA as supplied by IBM and generic MSBASIC which you can buy from Microsoft for generic MS-DOS machines (it has no graphics or communications). The benchmark was run on an IBM AT with 256K, 1 1.2 Mb floppy and 1 360K floppy. It was a normal AT with the 6 Mhz clock as opposed to the owner enhanced AT with a 8-9 Mhz clock. IBM BASICA 3.0 ---------> 71 seconds Microsoft MSBASIC --------> 36 seconds I will also recall my previous benchmark using a 8 Mhz 8086 which came in at 41 seconds. It is very possible that IBM purposely slowed the BASICA interpreter to make it compatible with the PC. A few more points: (1) If the Z-100 is pushed to 8 Mhz using a 8088-2, it will still suffer from the 1 wait state penalty if you still use 150ns rams. Also most of the Intel support chips such as the 8253, 8250 and 8251 are rated at 300ns causing 2 wait states on an i/o cycle. (2) The 8088 has 8 bit address lines which will always make it slower than the 8086 or 80286 on memory reference instructions. The 8086 also has an instruction queue of 6 instructions as opposed to the 8088 which has only 4. I don't know if the 80286 has any form of cache but judging from its performance, it probably has a larger cache than the 8086. (3) You cannot compare the Mhz between the 8088/8086 to the 80286 because its instructions take fewer cycles. An aquaintance who builds S-100 CPU boards claims that a 6 Mhz 80286 is equivalent to a 13-14 Mhz 8086. (4) A lot of manufacturers who are claiming that their new AT compatibles are 30% faster than the AT because they eliminated the 1 memory wait state may be dead wrong. Although my 8 Mhz 8086 benchmark was done on 100ns static ram, I have in the past tried to rate my static ram board against my dynamic ram board with 150ns dynamic rams. I did a test to eliminate the wait state by interleaving two boards so that the odd and even addresses were on different boards thus eliminating any wait states. The improvement was a measly 5%. Sam Chin tsc2597.acf4@nyu.ARPA allegra!cmcl2!acf4!tsc2597
jchapman@watcgl.UUCP (john chapman) (05/30/85)
> Sam Chin writes: <> > . . . > > I will also recall my previous benchmark using a 8 Mhz 8086 which came in at > 41 seconds. It is very possible that IBM purposely slowed the BASICA > interpreter to make it compatible with the PC. A few more points: How does slowing something down make it compatible? I can see that a graphics program requiring user interaction might in some sense be "incompatible" on a faster machine (processor speedup is generally seen as a benefit in highly interactive applications though). In addition I think it would be extremely difficult to make a compiler generate code which would overall be slowed down by a certain factor. > > (1) If the Z-100 is pushed to 8 Mhz using a 8088-2, it will still suffer > from the 1 wait state penalty if you still use 150ns rams. Also most of the > Intel support chips such as the 8253, 8250 and 8251 are rated at 300ns > causing 2 wait states on an i/o cycle. Actually, from what I know, a 150ns dram ought to be able to keep up with an 8mhz 8086/8088 (just) with no wait states. It's whatever is used as the dram controlle that introduces the wait states. As an example I have seen an 8203 based board which runs with no wait states with a 5mhz 8086/8088 but requires 2-3 when used with an 8mhz 8086/8088. The extra wait states are all directly attributable to to the peculiar interaction between the 8203 and 8086 (after a certain speed the dram won't know if it can service a request by the time the 86 needs to know if there will be wait states (in T2) so a different signal from the 8203 is used which always puts in the wait states. > > (2) The 8088 has 8 bit address lines which will always make it slower than ^^^^^^^ data lines, the address bus is still full width I believe. . . . > (4) A lot of manufacturers who are claiming that their new AT compatibles > are 30% faster than the AT because they eliminated the 1 memory wait state > may be dead wrong. Although my 8 Mhz 8086 benchmark was done on 100ns static > ram, I have in the past tried to rate my static ram board against my dynamic > ram board with 150ns dynamic rams. I did a test to eliminate the wait state > by interleaving two boards so that the odd and even addresses were on > different boards thus eliminating any wait states. The improvement was > a measly 5%. In some situations I have experienced a 20% difference between the static and dynamic ram execution profiles. It depends heavily on the access pattern of the program being executed.> > > Sam Chin > tsc2597.acf4@nyu.ARPA > allegra!cmcl2!acf4!tsc2597 John Chapman ...!watmath!watcgl!jchapman
GUBBINS@radc-tops20.ARPA (Gern) (05/30/85)
The Z-100 and 8088/8086 machines will not suffer as you stated from 150nsec memory needing wait states. An 8088/8086 can run, in complete spec, with room to spare, at 8MHz with 150Nsec memory (its not bizzare, its a feature). By design, Intel has 'relaxed' r/w strobing which make this possible. I do not think the same is true of the 80286. A 5MHz 8088/8086 can run at 5MHz with no wait states needed. Anyway, its all in the spec books. This fact allows a Z-100 (normally, until recently, a stock 5MHz machine, now an 8MHz machine from ZDS) to be turboed to 7.5MHz with 200nsec memory and remain totally in spec (do note that the Z-100 inserts 1 I/O wait state which keeps the CRTC happy and continues to keep the other I/O happy). The AT at 6MHz looses (according to accepted numbers) about 20-30% of its speed due to the 1 memory wait state. I now refer you to the benchmark results posted by another person who ran the same machine code on both machines. -------
GUBBINS@radc-tops20.ARPA (Gern) (05/30/85)
correction to my last message. The relaxed strobing statement should state, Intel designed the 8088/8086 to run with 3MHz memory at 5MHz with no memory wait states. This allows turboing, and 8MHz speed with 150nsec memory with no wait states. The following blurb is the independent benchmark results posted. Note that the same machine code was used on both the Z-100 and the IBM-AT and a standard 5MHz Z-100 beat the 6MHz AT 2 out of 4, close in the third, and lost fair and square in the forth. An 8MHz Z-100 (note that the results are interpolations, real values may be off by +- 1 sec) beats the AT 3 out of 4 benchmarks. The reason for the Z-100 putting up such a good show? That is the purpose of all these messages. The AT wait state is one reason, the IBM firmware, if like the PC, may be the other. Benchmark Blurb: 26-May-85 21:58:54-EDT,2901;000000000001 Return-Path: <atm%deimos@cit-hamlet.arpa> Received: from cit-hamlet.arpa by RADC-TOPS20.ARPA with TCP; Sun 26 May 85 21:58:36-EDT Received: from deimos by hamlet with DECNET ; Sun, 26 May 85 18:57:45 PDT X-ST-Return-Receipt-Requested: Date: Sun, 26 May 85 18:57:16 PDT From: atm%deimos@cit-hamlet.arpa Message-Id: <850526185657.002@deimos> Subject: Z-100 vs AT To: INFO-HZ100@RADC-TOPS20.ARPA <A corrected version of the message sent yeaterday> Here is a bit of imput to the Z-100 vs. AT debate. I have run four benchmarks on both machines. The Z-100 has a 5 MHz clock, but an 8087 has been added (on a Hudson board). The AT has the standard 6 MHz clock and an 80287. The programs are the following: The Sieve of Eratosthenes, 10 passes (see BYTE, Jan 1983), which is entirely integer and logical operations. The Savage benchmark is solid double-precision floating point function calls (see Dr. Dobb's Journal, Sept. 1983 and Aug. 1984). Both of these have been run on a very wide range of computers, from a Cray to an HP-15 ! The third is INTSUM, which does double-precision arithmetic only, no function calls. The fourth is FOUR, which evaluates a Fourier series in single-precision, calling SIN(A) and doing indexing. All the benchmarks were compiled with MS-FORTRAN Version 3.2, using the 8087 mathematics library and the $NOFLOATCALLS metacommand, which is the combination that gives the fastest code. On the Z-100 they were run under Z-DOS Version 1.25, which is a few percent faster than MS-DOS 2.21, since it takes less time to service the clock interrupt. Run times are in seconds, and no allowance is made for loading time. The results indicate that a Z-100 with standard clock about ties an AT on any program which runs almost entirely in the 8087. (Note that the AT's 80287 runs with a 4 MHz clock.) If you multiply the Z-100 times by 5/8 to simulate an 8 MHz clock, then the AT loses on any program emphasizing floating point. However, it still wins on integer operations. Compiles and links don't use floating point, so the AT seems noticeably faster to use. The Compaq Deskpro, which has an 8086 and an 8087, both running at 8 MHz, should beat either the 8 MHz Z-100 or the AT. By the way, the AT can also be sped up to 8 MHz with a new clock crystal. I think the contestants should adjourn to the bar for a friendly drink. ________________________________________________________________________ Program SIEVE SAVAGE INTSUM FOUR Z-100 12.95 6.76 27.08 11.65 Z-100*5/8 8.09 4.23 16.93 7.28 AT 4.61 6.43 29.72 11.81 ________________________________________________________________________ Alan Moffet Caltech Note that the 8087/80287 are a supported option in both machines, and ZDS now supports 8MHz Z-100s, IBM only supports 6MHz ATs. Gern -------
melmoy@nprdc.ARPA (Mel Moy) (05/30/85)
There certainly has been a lot of message traffic about benchmarking the AT against the Z-100. How many people are really making hardware and software decisions predicated on the outcome of this overextended harangue? Before long, someone is going to argue for the relative speed of a Commodore-64 with a 68020 board, or for an abacus lubricated with STP. Are your requirements such that you are confronted with the top end limits of the Z-100 or your AT's to the point that you can't work anymore? Or is this a need to justify your hardware commitment. Don't you believe that two or three years from now you will be using a different machine--regardless? I know I may be missing the point, but maybe somebody can educate me as to why this comparison between the AT, Z100, or anything else deserves this much concern. The technology changes! Computers are perishable and disposable! Computers have no emotions and are not hurt when they are superceded by advancements! Computers are tools. No tool is going to be appropriate for all work. Love your work--not your tools! Mel Moy
tsc2597@acf4.UUCP (Sam Chin) (05/30/85)
<> Some how I don't seem to be getting through! (1) We were comparing and 8088 vs a 80286. We were not comparing a 8087 to an 80287. No one ever mentioned benchmarks with the floating point processors until someone from Caltech posted those benchmark times. It is entirely true that a 4 Mhz 80287 (used on the AT) will be slower than an 8 Mhz 8087 (used on a Hudson board for example) but virtually all 8086 instructions will be faster on a 80286. Without even running benchmarks, just look at the 80286 spec to see how many cycles are required for the various instructions and then compare it to the 8088 spec. You will find out that the 80286 requires less cycles for virtually all instructions. I think I am just restating the obvious. (2) What I can tell you about memory wait states is that my 2 256K RAM boards from Lomas Data Products are loaded with 150ns RAMS. I have wire wrapped exactly 1 wait state on a memory cycle and 2 wait states on i/o cycles on the CPU board which has a 8 Mhz 8086. If I remove the wait state on the memory cycle, the system occasionally hangs. The manual clearly states that if I use a 8086 CPU above 5 Mhz, I have to enable the r/w acknowledge signal and enable the wait state on the memory cycle. It might be possible that the 8088 is sufficiently slower than the 8086 that the wait state is not necessary but then the 80286 is still faster than the 8086. (3) My benchmark with generic MS-BASIC on the AT proves that the AT is faster than an 8 Mhz 8086 running with 100ns static ram *even* with its one wait state. The original BASIC benchmark didn't make sense because you were not using the *exact* same basic interpreter. People all over the net reported wildly varying times when they ran the benchmark on their own versions of Microsoft Basic on their own machines. Will someone from Intel get into this and clear this up. We are not comparing uP from different companies. Sam Chin allegra!cmcl2!acf4!tsc2597 tsc2597.acf4@nyu
tsc2597@acf4.UUCP (Sam Chin) (05/31/85)
<> The argument is that : " The Z-100 is faster than the AT because the AT requires that one wait state on its memory cycle and the Z-100 doesn't." Now both Z-100 and AT use 150ns RAMS. Why did the AT designers have to insert that 1 wait state? The reason is that the 80286 was just too fast for those 150ns RAMS. If the claim is that an 8088 running at 8 Mhz is faster than a 6 Mhz 80286 then it too must have that 1 wait state. If it doesn't need 1 wait state, then it must obviously be slower than the 80286. Sam Chin allegra!cmcl2!acf4!tsc2597 tsc2597.acf4@nyu
GUBBINS@radc-tops20.ARPA (Gern) (05/31/85)
The point of all this Z-100 vs. IBM-AT is an attempt to uncover the reasons that the Z-100 at $1799 at 5MHz performs as well, if not better than the IBM-AT at >$4000 at 6MHz, all with current stock manufacturer supported capability. The normal observer would think that the AT, at 6MHz with a 16-bit CPU would surely outperform a Z-100 with a 5MHz 8/16-bit CPU. But, as exemplified by these messages, this is not the case. It is, as you stated, a case to justify the hardware commitment. It is also to inform and document info that may be used in source selection of computer equipment. I want to say a lot more, but I can not from my position. Cheers, Gern -------
GUBBINS@radc-tops20.ARPA (Gern) (05/31/85)
No, No, the 'friendly discussion' is that: The Z-100 is as fast at 5MHz and faster at 8MHz than the AT because the AT requires one memory wait state and was designed and firmware programmed by IBM and the Z-100 doesn't. The WS on memory boards as you mentioned is a common problem with mem boards. It is usually the fault of slow decoders and buffers on the board addressing logic rather that the speed of the memory ICs. Replacing the 74LS240/244 and others with 74ALS or 74S series TTL usually corrects the problem Cheers, Gern -------
CMP.WERNER@utexas-20.ARPA (Werner Uhrig) (05/31/85)
RE: The point of all this Z-100 vs. IBM-AT is an attempt to uncover the reasons that the Z-100 at $1799 at 5MHz performs as well, if not better than the IBM-AT at >$4000 at 6MHz, all with current stock manufacturer supported capability. The normal observer would think that the AT, at 6MHz with a 16-bit CPU would surely outperform a Z-100 with a 5MHz 8/16-bit CPU. But, as exemplified by these messages, this is not the case. [above was Gern's message] I remember well when IBM and other manufacturers sold you on the idea of spending a lot of money for a machine upgrade to get better performance when all that was involved was little 'tap-and-dance routine' by the tech, (SWITCH to the left, JUMPer to the right (-: ) Economist call it "Maximizing sales, while Optimizing Profits" or somesuch. Of course, in the micro-world with many capabable people around and ready to fill in the gap with add-on products, it should take no time until we can buy the 'switch and jumpers' to defeat this "evil" scheme. I would not be surprised to see a new Gernware product soon, which will allow the AT to live up to its potential (and Gern to buy a Z-200 and head for Jamaica (-: ) Given it a thought yet, Gern ??? -------
brownc@utah-cs.UUCP (Eric C. Brown) (05/31/85)
Has anybody considered the possibility that IBM AT BASICA ver. 3.0 is a set of patches to IBM XT BASICA ver. 2.0, which is a set of patches to IBM PC BASICA ver. 1.1, which is a set of patches to IBM PC BASICA ver. 1.0, which is a set of patches to IBM PC Disk BASIC ver. 1.0, which is a set of patches to IBM PC Cassette BASIC ver. 1.0? I'm fairly sure that Z-100 ZBASIC is one unpatched piece of code, and it might even be real 8086 code, rather than translated 8080 code (like IBM PC Cassette BASIC). A more meaningful comparison might be between IBM PC BASICA and IBM AT BASICA. For my two cents, I have noticed that the AT runs about 6 times faster than the Zenith Z-100 when you run things like Pascal programs or compilers. The AT hard disk alone is a lot faster than the Z-100 hard disk, which speeds compiles up a lot all by itself. Personally, I'm waiting for my Zenith Z-200. Zenith Reliability, AT Performance. What more could you ask for? Eric C. Brown brownc@utah-cs ..!{ihnp4, seismo, decvax}!utah-cs!brownc
phil@amdcad.UUCP (Phil Ngai) (06/01/85)
In article <1040026@acf4.UUCP> tsc2597@acf4.UUCP (Sam Chin) writes: >Will someone from Intel get into this and clear this up. We are not >comparing uP from different companies. I'm not from Intel but have designed products with the Intel family and dynamic RAMs and feel qualified to point out that you can't just say "my system needs 1 wait state with 150 nS memories to run an 8086 at 8 MHz, therefore all 8 MHz 8086 systems must have 1 wait state if used with 150 nS memories". A good dynamic RAM design is hard. Many designers cop out and insert wait states to make their job easier. But that doesn't mean all systems yield the same performance with the same parts. My Honda Civic has 4 cylinders and burns gasoline, just like a Porsche 944, so it should be able to keep up, right? It is possible to run an 80186 at 8 MHz with no wait states and 150 nS memories with plenty of margin IF you know what you are doing. Or if you don't care about margin. This margin, by the way, is designed in by conscientous manufacturers to allow for variations in the devices they use and to allow operation over a range of temperatures. Some devices get slower when they get lot and some get slower when they get cold. A manufacturer wants his product to work in both environments. Flaky products are not appreciated by customers. The people who crank up the clock rate in their computers are reducing their margin. It's your choice, but don't think it's a conspiracy to sell deliberately degraded products. The 8086 is a little harder but not impossible. There are some memory controller devices offered which do require wait states. I would claim they have a lousy architecture. But some designers think they are convenient and so you will find them in some systems. By the way, I think references to "3 MHz" memory are pretty weird. You can say a memory has a 150 nS access time or a 500 nS cycle time but "3 MHz" is a very odd way to talk about a memory device. -- There's always tomorrow. Phil Ngai (408) 749-5720 UUCP: {ucbvax,decwrl,ihnp4,allegra}!amdcad!phil ARPA: amdcad!phil@decwrl.ARPA
phil@amdcad.UUCP (Phil Ngai) (06/01/85)
In article <1040027@acf4.UUCP> tsc2597@acf4.UUCP (Sam Chin) writes: >Now both Z-100 and AT use 150ns RAMS. Why did the AT designers have to >insert that 1 wait state? The reason is that the 80286 was just too fast >for those 150ns RAMS. If the claim is that an 8088 running at 8 Mhz is >faster than a 6 Mhz 80286 then it too must have that 1 wait state. If it >doesn't need 1 wait state, then it must obviously be slower than the 80286. Sorry Sam, it isn't that simple. Using interleaved memory, you get 4 clock cycles minus data strobe and data setup times to perform a memory cycle on the 80286. Thus, an 8 MHz 80286 allows nearly 500 nS for a memory to cycle. I think if the AT needs 1 wait state at 6 MHz to use 150 nS memories, its designers must have been lazy (or lousy). -- There's always tomorrow. Phil Ngai (408) 749-5720 UUCP: {ucbvax,decwrl,ihnp4,allegra}!amdcad!phil ARPA: amdcad!phil@decwrl.ARPA
tsc2597@acf4.UUCP (Sam Chin) (06/01/85)
<> Thank you Mel Moy and Werner Uhrig for showing me why I was getting frustrated in this discussion. I don't have a Z-100 or an AT and therefore did not have the motives Gern had. All I was trying to do was explain something which seemed painfully obvious to me. Anyway as far as I am concerned, I finally understand everything and will not pursue the subject any further. All I hope is that the discussion generated some shreds of useful information. Sam Chin tsc2597.acf4@nyu allegra!cmcl2!acf4!tsc2597
indra@utai.UUCP (Mad as hell) (06/03/85)
> > The point of all this Z-100 vs. IBM-AT is an attempt to uncover the > reasons that the Z-100 at $1799 at 5MHz performs as well, if not better > than the IBM-AT at >$4000 at 6MHz, all with current stock manufacturer > supported capability. The normal observer would think that the AT, > at 6MHz with a 16-bit CPU would surely outperform a Z-100 with a 5MHz > 8/16-bit CPU. But, as exemplified by these messages, this is not > the case. > > It is, as you stated, a case to justify the hardware commitment. It is > also to inform and document info that may be used in source selection > of computer equipment. I want to say a lot more, but I can not from > my position. > > Cheers, > Gern > ------- Why do these guys compare two computers by their BASIC interpreter? How many people on the net use basic anyway? So why don't we get serious for once and do benchmarks in assembler, using anything else doesn't show a thing, except possibly, efficiency of interpreter/compiler.