Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!usc!brutus.cs.uiuc.edu!zaphod.mps.ohio-state.edu!sol!cica!iuvax!purdue!bu.edu!bu-cs!bloom-beacon!eru!luth!sunic!tut!santra!mcsun!hp4nl!star.cs.vu.nl!ast From: ast@cs.vu.nl (Andy Tanenbaum) Newsgroups: comp.os.mach Subject: Re: Mach performance? [Long] Message-ID: <4987@ast.cs.vu.nl> Date: 29 Dec 89 12:35:12 GMT References: <7372@pt.cs.cmu.edu> <14246@jumbo.dec.com> <1482@crltrx.crl.dec.com> <7387@pt.cs.cmu.edu> Reply-To: ast@cs.vu.nl (Andy Tanenbaum) Organization: VU Informatica, Amsterdam Lines: 40 In article <7387@pt.cs.cmu.edu> af@spice.cs.cmu.edu (Alessandro Forin) writes: > From the SOSP proceedings I see that > the official score seems to be: > Cedar: 1.1 MILLIsecs/call Dorado > Amoeba: 1.4 Tadpole (68020) > V: 2.5 Sun 3/75 > Topaz: 2.7 Firefly (5-way multi) > Sprite: 2.8 Sun 3/75 > Topaz: 4.8 Firefly (mono) I think it is important that everyone realize that RPC protocols are basically CPU limited. Thus when making comparisons, one has to normalize for CPU speed. In the Oct 1988 Operating System Review I wrote an article claiming that Amoeba was the fastest distributed system in the world ON ITS CLASS OF HARDWARE (68020 at 16 MHz --essentially Sun 3/50 type machines). This has been widely misunderstood. In the above list one might get the impression that the Cedar folks wrote better software (1.1 < 1.4 etc.) It is important to note that the effective speed of the Dorado hardware is something like 3 times faster than the Sun 3/50. Getting a 20% speed gain by using 3 times faster hardware is nice, but not Guiness Book of Records stuff. If one only looks at raw speed, then Kermit running on a Cray-3 is going to beat the pants off everybody. Conclusion: When making rankings like the above, one must normalize for CPU speed, or at least quote it. It would be interesting to see an honest list, including Mach. I believe that Amoeba is still #1 in RPC performance and also in reading from a remote file server (677 kilobytes/sec). How fast can a Mach user program read data continuously from a remote machine over the Ethernet (assuming 100% hit rate in the file server's cache, to factor out disk speed)? Finally, one also has to be careful that one is measuring the same thing. The Amoeba times are user-to-user, not kernel-to-kernel, using no special tricks, no microcode assist, no special hardware boards, etc. Just plain vanilla Ethernet. I can only hope the others measure the same thing. Andy Tanenbaum (ast@cs.vu.nl) P.S. With a little luck, Amoeba will be made available during the course of 1990. I'll post an announcement to comp.os.misc when the time comes.