From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT autolearn=no autolearn_force=no version=3.4.4 Xref: utzoo comp.lang.ada:2948 comp.lang.c:23893 comp.lang.c++:5584 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!iuvax!cica!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!samsung!uunet!ncrlnk!ncrcae!hubcap!wtwolfe From: wtwolfe@hubcap.clemson.edu (Bill Wolfe) Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++ Subject: Tasking speeds: Ada vs. Unix/C Message-ID: <7124@hubcap.clemson.edu> Date: 19 Nov 89 18:16:31 GMT Organization: Clemson University, Clemson, SC List-Id: The following article relates to the recent discussion of Ada vs. UNIX/C and lightweight processes. Notice the disastrous performance produced by UNIX/C relative to Ada. ******************************* ADA-SW Digest Sat, 18 Nov 89 Volume 89 : Issue 48 Date: Fri, 17 Nov 89 11:03:44 CST From: steve@titan.tsd.arlut.utexas.edu (Steve Glicker) Subject: Simple process and task switching speeds Recently there have been references to lightweight processes, UNIX/C processes, and Ada tasking in terms of speed (Bill Wolfe on Date: 15 Nov 89 16:06:41 GMT and Walter Rowe on Date: 16 Nov 89 18:20:01 GMT). Over the last few months, I have been collecting numbers on task/process switching speeds. Several tests have been run were two tasks or processes invoke each other several hundred thousand times, execution time is then divided by switches... The information I have collected is in the following table. This is quite informal -- these are rough estimates. Does anyone have estimates on the speed of lightweight processes, etc.? Data on embedded systems is welcome. I would also appreciate any references to work published on this topic. Platform Test Switching Speed ============== ================ ================= microVAX (VMS) VMS processes ~ 0.6 ms microVAX (VMS) DEC Ada tasks ~ 0.6 ms Sun 3/50 (UNIX) Function call ~ 0.01 ms Sun 3/50 (UNIX) Simula processes ~ 0.2 ms Sun 3/50 (UNIX) Verdix Ada tasks ~ 0.3 ms Sun 3/50 (UNIX) UNIX/C processes ~10.0 ms I understand that the microVAXs ran at ~0.9 VAX 780 MIPS and the Sun 3/50 at ~1.5 VAX 780 MIPS. In the cases of Ada and Simula a scheduler supplied with the language was used. Steve Glicker (steve@titan.tsd.arlut.utexas.edu) ********************************** Bill Wolfe, wtwolfe@hubcap.clemson.edu