mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: pavel@suse.cz (Pavel Machek)
Cc: alan@lxorguk.ukuu.org.uk (Alan Cox),
	linux-kernel@vger.kernel.org (kernel list)
Subject: Re: Reading from /dev/fb0 very slow?
Date: Sat, 2 Jun 2001 23:49:25 +0100 (BST)	[thread overview]
Message-ID: <E156KCz-0002GO-00@the-village.bc.nu> (raw)
In-Reply-To: <20010603004655.E2434@atrey.karlin.mff.cuni.cz> from "Pavel Machek" at Jun 03, 2001 12:46:55 AM

> 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


      reply	other threads:[~2001-06-02 22:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-02  8:52 Pavel Machek
2001-06-02 21:42 ` Jeff Garzik
2001-06-02 22:03 ` Alan Cox
2001-06-02 22:46   ` Pavel Machek
2001-06-02 22:49     ` Alan Cox [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E156KCz-0002GO-00@the-village.bc.nu \
    --to=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®