Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!burl!codas!mtune!mtuxo!houxm!houxv!rdt From: rdt@houxv.UUCP Newsgroups: comp.arch Subject: Re: Using a DMA chip in strange ways Message-ID: <540@houxv.UUCP> Date: Thu, 19-Feb-87 09:51:54 EST Article-I.D.: houxv.540 Posted: Thu Feb 19 09:51:54 1987 Date-Received: Sat, 21-Feb-87 10:22:50 EST Distribution: world Organization: ATT Information Systems, Holmdel, N.J. Lines: 28 Summary: Re) System buffer space to user space memory to memory copies via specialized DMA hardware rather than a tight loop. simple answer. There is a distinct tradeoff between the size of the block transfer (how large a chunk) and the amount of indirection overhead in: 1) making a system call, 2) being authorized to use the DMA in the fashion you want, (permission checks via probes and address translations; recall that the DMA works in physical space where as the CPU tends to work in virtual spaces) 3) and then setting up the DMA context registers with the necessary pointers, sizes and configuration information. CONCLUSION: for transfers under 32-64 words, the overhead time to setup the dma may swamp the more efficient block move capabilities of the specialized dma hardware. mileage (breakeven point) may vary with OS system call structure, and manufacturers MMU and DMA hardware. Richard Trauben ATTIS, Holmdel, New Jersey WE32x00 Processor Development