julian at elischer.org
Fri Apr 15 01:15:08 PDT 2005
Alexander Leidinger wrote:
> Julian Elischer <julian at elischer.org> wrote:
>> The low hardware layer already does DMA to move data out of the
>> hardware to memory. The data gets copied from the user layer to an
>> buffer and from there to the DMA buffers. There is no need to allocate
>> DMA capable
>> buffers for the intermediate layer.
> I understand this as:
> userland-mem -> kernel-mem -> dma-able-mem -> hardware
> So there's no zero-copy behavior?
> userland-mem -> in-kernel-dma-able-mem -> hardware
> userland-mem -> if(is_dmaable(userland-mem)) -> hardware
> else -> in-kernel-dma-able-mem -> hardware
> While the amount of memory used as a sound buffer isn't that much for
> standards, it's still a memory transfer operation which could be avoided. I
> don't know how much it would affect the latency (or if it affects it at
> all), but not doing things which aren't necesssary/beneficial is always a
> win (in some way) in my experience.
no-one is saying that it can't be optimised..
try follow a read command from a ugen fd all the way to the hardware..
it's just not something we've spent time to do.
More information about the freebsd-multimedia