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.7 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!uunet!ficc!peter From: peter@ficc.uu.net (Peter da Silva) Newsgroups: comp.lang.ada Subject: Re: Ada vs C/UNIX / switching speeds Summary: Apples and oranges. Message-ID: <7103@ficc.uu.net> Date: 25 Nov 89 18:39:13 GMT References: <14042@grebyn.com> Reply-To: peter@ficc.uu.net (Peter da Silva) Organization: Xenix Support, FICC 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. Yeh. Since ADA shouldn't have to do more than a function call, a switch in stack frames, and a return in the new stack frame... why is it so slow? > >Sun 3/50 (UNIX) Function call ~ 0.01 ms > >Sun 3/50 (UNIX) Verdix Ada tasks ~ 0.3 ms > >Sun 3/50 (UNIX) UNIX/C processes ~10.0 ms I would have expected the ADA task switch to take no more than 0.05 ms based on the speed of a function call. There's no MMU to deal with, a not inconsiderable overhead. There's no switch between user and kernel mode. There's none of the overhead that UNIX has to deal with. What's it doing, dynamically rearranging priorities at context-switch time instead of when you make a call or handle an external event? Lester Buck: could yo do some estimates on the context switch time for your C-threads routines? And has anyone done any realtime benchmarks on the Amiga? -- `-_-' Peter da Silva . 'U` -------------- +1 713 274 5180. "The basic notion underlying USENET is the flame." -- Chuq Von Rospach, chuq@Apple.COM