Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!seismo!mcvax!ukc!tcom!root44!njh From: njh@root44.UUCP Newsgroups: comp.arch Subject: Re: Using a DMA chip in strange ways Message-ID: <246@root44.root.co.uk> Date: Mon, 23-Mar-87 04:31:23 EST Article-I.D.: root44.246 Posted: Mon Mar 23 04:31:23 1987 Date-Received: Thu, 26-Mar-87 05:49:59 EST References: <4343@columbia.UUCP> <298@attila.weitek.UUCP> <518@gec-mi-at.co.uk> Reply-To: njh@root44.UUCP (Nigel Horne) Distribution: world Organization: Root Computers Ltd., London, England Lines: 29 In article <518@gec-mi-at.co.uk> you write: >In article <4343@columbia.UUCP>, dupuy@amsterdam.columbia.edu (Alexander Dupuy) writes: >>> [] would >>> there be any advantage in having a DMA chip which would simply be used for >>> memory to memory copies (from user to kernel space, or from one user space to >>> another)? > >Yup. You don't wear out the cpu so much. When doing a port of UniPlus+ on a machine with a spare channel on it's 68450 I tried a few benchmarks. I'm afraid (with a 68k at least) it was slower using the 68450 than the 68010 (dbra's, moveml's etc.) for memory to memory copies. I put this down to overhead of setting it up in C, the CPU having to wait for the DMAC to finish (as this gives rise to bus contention - the 68010 has to do *something* while the 68450 is copying, a wait till finish means it has to sit in a loop reading instructions, or you run the 68450 in interrupt mode, in which case you have all that nasty interrupt goo after it's finished) etc. Sorry about the double subclauses in the above paragraph - I never was any good at English. Anyhow, moral is, leave the CPU do to memory copies, it's not worth the hassle. -- -- Nigel Horne, Divisional Director, Root Technical Systems. G1ITH Fax: (01) 726 8158 Phone: +44 1 606 7799 Telex: 885995 ROOT G BT Gold: CQQ173