Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!thunder.mcrcim.mcgill.edu!snorkelwacker.mit.edu!usc!zaphod.mps.ohio-state.edu!lavaca.uh.edu!menudo.uh.edu!lobster!nuchat!sugar!peter From: peter@sugar.hackercorp.com (Peter da Silva) Newsgroups: comp.sys.amiga.advocacy Subject: Re: How do we change the scheduler? (Was Re: Multitasking at home...) Message-ID: <7588@sugar.hackercorp.com> Date: 23 Jan 91 13:35:58 GMT References: <1991Jan14.221532.4431@cunixf.cc.columbia.edu> <11719@goofy.Apple.COM> <1991Jan21.004720.25985@ncsuvx.ncsu.edu> Organization: Sugar Land Unix - Houston Lines: 39 In article <1991Jan21.004720.25985@ncsuvx.ncsu.edu>, kdarling@hobbes.ncsu.edu (Kevin Darling) writes: > > On the Amiga you'd do that by splitting the program into a compute engine > > and a user interface task. The compute engine runs at full speed without > > having any code in the main loop to check for user interaction, and the > > user interface task just sits there waiting for input taking up no CPU time > > until you need it. > So the speed diff is only related to the (Mac GetEvent delay x number of > times) it's called; versus the (Amiga tick routine delay x number of times) > it's done. Unless we know those timings, speed claims are meaningless. > Perhaps there's a better example? - kevin This assumes that all you're doing is running the computation. The context here is multitasking, and running the ray-trace in the background. So, the difference in speed comes up in a couple of ways: 1. The compute-intensive program has a smaller main loop. The main loop may also have no subroutine calls in it, which greatly simplifies the task of optimising it because it never has to worry about aliasing. 2. Most of the time most of the programs on the Amiga are quiescent, and aren't even on the ready queue. So the only thing taking away from the compute task is the vertical blank interrupt (the tick routine). The Mac system, on the other hand, runs through all the other tasks in the system that call GetNextEvent, every time. It also frequently makes tours through the code for programs that call WaitNextEvent. The Amiga allocates available resources much more efficiently than the Mac: I'm currently using my stock Amiga 1000. 7.16 MHz 68000, 512K. I can multitask effectively and usefully in this environment, using real programs. In fact I have 243K free right now. I don't think anyone would claim that you could even run multifinder in a similarly equipped Mac. -- Peter da Silva. `-_-' .