From: Michael Moese
> Thank you for your help - we might be satisfied with the achieved
> 18 MB/s.
We achieved about twice that using the PEX dma controller.
I found the following comment I wrote:
/* Long transfer requests are cut into smaller DMA requests.
* Each PCIe request can contain a maximum of 128 bytes, but the
* dma engine can have multiple PCIe requests outstanding and this
* speeds things up somewhat (50ns/byte with 128, 24ns/byte with 1024).
* 1k is somewhere near the point of diminishing returns. */
Those times would include a system call.
The transfers were done through a simple driver that converted pread()
and pwrite() requests into accesses to the boards memory.
The non-dma versions are just copy_to/from_user() directly between
the PCIe and user buffers.
Your 3MB/s for single word transfers is similar to what we saw.
Cycle times that make an ISA bus look fast.
David
_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://lists.ozlabs.org/listinfo/linuxppc-dev