Messages in this thread | | | Subject | Re: Reading from /dev/fb0 very slow? | Date | Sat, 2 Jun 2001 23:49:25 +0100 (BST) | From | Alan Cox <> |
| |
> Unfortunately, at least X and few framebuffer modes can not survive > that too well.
Actually most X servers are heavily optimised to avoid video->video copies and use the accelerators. If you are using the frame buffer X server then yes it can be a problem but look up 'shadowfb'.
> > Writes to a PCI device can be queued or posted. Reads from a PCI device for > > obvious reasons have to stall the CPU until the data returns. > > But they can't be posted indifinitely, right? I'm copying whole > framebuffer at a time, I do not believe PCI has enough buffers to > cache *that*. [Or is it using some kind of burst mode it can not use > for reading? That does not give a sense, you can cache reads, too....]
Your writes are running at bus speed. Assuming the video ram has an mtrr for write combining you are doing full bursts. When you read the sequence instead is
issue read stall cpu pci cycle goes out for one longword pci cycle hits the video card video card replies a longword cpu gets it
So the entire pci bus latency is directly biting you for each fetch.
Alan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |