idall@augean.OZ (Ian Dall) (10/04/89)
I am curious about "message passing kernels". It strikes me that fast context switches would be crucial to efficiency. Can anyone give me a reasonably accessible reference which describes the philosophy behind mach? -- Ian Dall life (n). A sexually transmitted disease which afflicts some people more severely than others. idall@augean.oz
raveling@isi.edu (Paul Raveling) (10/05/89)
This was an attempted email reply, but it bounced for "host unknown" with no obvious alternative address in the original article header... Be forewarned that it's not directly related to Mach, though it does relate directly to the question of context switch speed. If anyone happens to have an existing Mach benchmark for context switch speed using Mach's native message passing facilities, I'd be interested in running it against the benchmark whose results are listed at the end of this message. In article <611@augean.OZ>, idall@augean.OZ (Ian Dall) writes: > > I am curious about "message passing kernels". It strikes me that fast context > switches would be crucial to efficiency. Can anyone give me a reasonably > accessible reference which describes the philosophy behind mach? This isn't a comment on Mach, but your assessment of the importance of fast context switches is correct. This plus integration of passing short messages and message queuing in a single kernel mechanism that handled all context switches was the key to performance in several kernels I've developed, including that of EPOS. I sometimes comment on EPOS in followups on various newsgroups, but in case you haven't seen these, EPOS' original charter was to serve real time speech applications on a PDP-11/45 at ISI in the '70's. In terms of measured speed data bandwidth it could easily handle 3 times the data rate of the system it replaced, which in turn was much faster than UNIX. Fast context switching was the biggest factor. In fact, context switches due to communication of short messages were 45 times faster with EPOS than with UNIX V6 on the same PDP-11/45. I've run a set of benchmarks including this on many more recent systems, and using these to estimate hardware speed ratios suggests that an EPOS software architecture on current hardware would still be about 45 times faster than BSD, Ultrix, and HP-UX systems. I haven't benchmarked Mach using its native facilities, but here's a comparison that uses portable code on all UNIXes, pt Tests context switch speed, IPC for short messages -- Mean real time per context switch, corresponding context switch rate: PDP-11/45 EPOS 170 usec 5,882 / sec DECStation 3100 ULTRIX 2.0 R7 390 2,654 Sun 4/280 SunOs Sys4-3.2R2 623 1,605 VAX 8650 BSD 4.3 723 1,383 NeXt MACH 873 1,145 Solbourne 110 OS/MP 4.0 1,140 877 HP 9000/370 HP-UX 6.5 1,273 785 Sun 3/75 Sun 4.2 1,297 771 HP 9000/350 HP-UX 6.2 1,577 634 HP 9000/350 HP-UX 6.5 1,660 602 VAX-11/780 BSD 4.3 2,450 408 PDP-11/45 UNIX V6 7,300 136 ---------------- Paul Raveling Raveling@isi.edu
yyang@frame.UUCP (Yeong Yang) (10/06/89)
In article <611@augean.OZ> idall@augean.OZ (Ian Dall) writes: > >I am curious about "message passing kernels". It strikes me that fast context >switches would be crucial to efficiency. Can anyone give me a reasonably >accessible reference which describes the philosophy behind mach? >-- > Ian Dall life (n). A sexually transmitted disease which afflicts > some people more severely than others. >idall@augean.oz I'd also like to find out more about mach messaging, especially network messaging and broadcasting. Can anyone post some reference? Or can someone tell me who should I contact to obtain a copy of the Mach reference manuals. BTW, does mach by itself supports broadcasting if the network allows it? Thankyou, Yeong Yang yyang@frame.com