Re: Bugs and wishes in memory management area

Gerard Roudier (groudier@club-internet.fr)
Sat, 23 Nov 1996 16:53:32 +0000 (GMT)


On Sat, 23 Nov 1996, Kai M{kisara wrote:

>
> On Sat, 23 Nov 1996, Gerard Roudier wrote:
> ...
> > In my flameable opinion, a usable system nowaday needs more than 16 MB, or
> > at least 16 MB, regardless the O/S it is running.
> >
> I disagree. Mybe for software development and general computing but Linux
> is very nice for more special applications. Examples:
> - our airborne imaging spectrometer "host" computer doubling as "tape
> server" when it is in our office between flights (8 MB)
> - the laptop we use to navigate the flight lines (386 with 4 MB)
> - my personal laptop (8 MB, running nicely emacs with X, at least I
> prefer this over running Windows)

Linux excellent for special applications, bravo!
But my remark was general and obviously applied to typical systems.
Linux is now in a development phase. Improvements that will be added in
2.1.X versions of Linux will be available for production systems in
severall months. During 2.1.X development phase, we must extrapolate to
2.2.X stable kernels needs.

I would be interested in knowing statistics about linux "market".
If most linux boxes run applications as you described, I will be very
surprised (and peehaps a bit disappointed).
But I am glad that Linux works fine for your special applications.

> IMHO Linux should be useful to similar applications also in future.
>
> ...
> > On the other hand, being given that 128/16=8, 87% IOs will need to be
> > double-buffered. Doing DMA in that conditions is in my opinion pretty
> > stupid.
> >
> It is instructive to compute how much double buffering really slows down
> things. Let's assume a peripheral capable of 0.5 MB/s and memory to memory
> transfer rate of 20 MB/s. With double buffering for all transfers the rate
> is 0.488 MB/s (assuming double buffering is implemented properly). May be
> stupid but in many cases it is practical ;-)

0,5 MB/s is less that 3% load in typical systems. It is negligible.
Double buffering may trash unnecessarily more L2 (data)cache and so may
increase a lot cache misses in some situations (and obviously
corresponding memory write will be done).
That can make sometimes a big difference, in my opinion.
When I wrote previous posts, I thought to throughput of severall MB/seconds.

I read that triton II allows PCI concurrency or something that sounds like
that.
I am not knowledgeable about BUSes protocols, so I have a question:

Can somebody explain to me what happens with some older chipsets, when
ISA boards just used the whole bandwitch of the ISA bus for DMA?

Thanks per advance.

> Besides, I don't think the issue here is ISA DMA, it is >allocation of a
> largish chunk of memory that is contiguous in physical memory<. The ISA
> DMA is special only in that the chunk must be below 16 MB. These kinds of
> allocations are needed for peripherals that don't support scatter/gather
> (or don't support enough scatter/gather segments). One example might be a
> PCI video board that wants to transfer images to a memory buffer.

Agreed, but it seems to me that I read such debates in some previous
posts about this subject (except perhaps the example).
I donnot remember who wrote about (Perhaps I did).

Gerard.