Newsgroups: comp.sys.transputer
From: jan@neuroinformatik.ruhr-uni-bochum.de (Jan Vorbrueggen)
Subject: Re: One dumb question about DMA
Organization: Institut fuer Neuroinformatik, Ruhr-Universitaet Bochum, Germany
Date: 01 Jul 94 11:04:34 GMT
Message-ID: <JAN.94Jul1120434@thalia.neuroinformatik.ruhr-uni-bochum.de>

In article <Cs2LoC.6G1@wizzy.com> andyr@wizzy.com (Andy Rabagliati) writes:

   In article <ctcCs2EHz.LDF@netcom.com>, Chris <ctc@netcom.com> wrote:

   > I tried to run some Link DMA transfers in low priority while servicing
   >Eventreq interrupt in high priority. However, as soon as I service the
   >interrupt, all DMA transfers stop until I finish and deschedule the
   >interrupt routine. I thought once the DMA is set, the link engines
   >will take care of the link transfer with no processor intervention, no
   >matter whether you are in high or low priority. Is this the way that
   >transputer supposed to response or am I missing something ?

   At the machine level, DMA link transfers will continue, subject to
   access to memory bandwidth.

   Access to the memory interface is on a round-robin basis, and is not
   dependent on the priority of the communicating process.

Ah, but Andy, isn't it the case that the DMA machines indeed do stop accessing
memory when a hi-pri job is executing, although this isn't documented? 

Anyway, the solution is to have the processes serving the hard links run at
hi-pri as well, which is better for the latency as well, and to do the
number-crunchin at lo-pri.

	Jan

