From: Colin D Bennett <colin@gibibit.com>
To: grub-devel@gnu.org
Subject: Re: [PATCH] GSoC #07 VBE double buffering (vs r1885)
Date: Mon, 13 Oct 2008 09:48:15 -0700 [thread overview]
Message-ID: <20081013094815.733491bb@gibibit.com> (raw)
In-Reply-To: <48EA60D6.7060708@nic.fi>
[-- Attachment #1: Type: text/plain, Size: 2175 bytes --]
On Mon, 06 Oct 2008 22:02:46 +0300
Vesa Jääskeläinen <chaac@nic.fi> wrote:
> Andy Goth wrote:
> > "Colin D Bennett" <colin@gibibit.com> wrote:
> > Requiring full-screen repaints is an architectural design that
> > might need rework to undo later. Or might not, depending on how
> > you implement it. The interim approach you choose now should be
> > informed by foresight.
> [...]
> Hi,
>
> I would like to thank Andy for his comments on the topic. I do share
> the same concern about designing double buffering to work properly
> without making hasty implementation first. We can use non-buffered
> solution as a first stage "hasty implementation" and design good
> enough solution to handle double buffering well.
>
> Dirty rectangles for every buffer (two in double buffer case) might be
> the best approach here. I think there is some kind of dirty rectangle
> implementation on gfxterm so that could be used as a base for this
> work. After that it could be improved to increase performance but the
> main point being that there has to be proper framework to make it
> work properly.
>
> Usually the slowest step is to transfer image data from main memory to
> video memory (and usually the slowest is to read from video memory to
> main memory and then save it back to video memory). If we can optimize
> memory copies between video and main memories we are on good track to
> solve speed problem.
I agree that a dirty region repaint management system will provide
better performance, but I certainly do not have time to implement it
now. IMO that would take a lot of work.
I *am* interested in getting high performance, but
(1) I simply don't have time to do it myself right now, and
(2) gfxmenu seems plenty fast to me--I have run Lua-driven full screen
animations as a desktop background for gfxmenu, and it worked
fantastically. The menu system performs decently even on my
ultra-low-power-but-low-performance-too Via C3 system.
Granted, the gfxterm terminal is nearly unusable right now, but I think
its performance can be improved significantly through a few relatively
minor changes.
Regards,
Colin
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
next prev parent reply other threads:[~2008-10-13 16:49 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1745824252.39921223234235570.JavaMail.root@aczmb1>
2008-10-05 19:17 ` [PATCH] GSoC #07 VBE double buffering (vs r1885) Andy Goth
2008-10-05 19:47 ` Colin D Bennett
2008-10-05 19:57 ` Andy Goth
2008-10-06 19:02 ` Vesa Jääskeläinen
2008-10-13 16:48 ` Colin D Bennett [this message]
2008-10-13 17:12 ` Colin D Bennett
2008-08-31 6:58 [PATCH] GSoC #07 VBE double buffering Colin D Bennett
2008-10-05 4:43 ` [PATCH] GSoC #07 VBE double buffering (vs r1885) Colin D Bennett
2008-10-05 8:52 ` Vesa Jääskeläinen
2008-10-05 16:16 ` Colin D Bennett
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=20081013094815.733491bb@gibibit.com \
--to=colin@gibibit.com \
--cc=grub-devel@gnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.