From: Petr Vandrovec <vandrove@vc.cvut.cz>
To: Antonino Daplas <adaplas@pol.net>
Cc: James Simmons <jsimmons@infradead.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Fbdev development list
<linux-fbdev-devel@lists.sourceforge.net>
Subject: Re: [Linux-fbdev-devel] Re: FBdev updates.
Date: Mon, 3 Mar 2003 21:35:00 +0100 [thread overview]
Message-ID: <20030303203500.GA2916@vana.vc.cvut.cz> (raw)
In-Reply-To: <1045787031.2051.9.camel@localhost.localdomain>
On Fri, Feb 21, 2003 at 08:24:17AM +0800, Antonino Daplas wrote:
> On Fri, 2003-02-21 at 02:29, Petr Vandrovec wrote:
> >
> > I was for five weeks in U.S., so I did not do anything with
> > matroxfb during that time. I plan to use fillrect and copyrect
> > from generic code (although it means unnecessary multiply on
> > generic side, and division in matroxfb, but well, if we gave
> > up on reasonable speed for fbdev long ago...). But I simply
> > want loadfont and putcs hooks for character painting. And if
> > fbdev maintainer does not want to give me them, well, then
> > matroxfb and fbdev are not compatible.
>
> Petr,
>
> I submitted the Tile Blitting patch to James some time ago, it has
> tilefill, tilecopy and tileblit hooks. These hooks should eliminate the
> "multiply in fbcon, divide in driver" bottleneck.
>
> It should result in the same behavior as you would expect in the the 2.4
> API, so you can use text mode with your matroxfb driver. These same
> hooks will also help optimize drawing if we need to use fonts like
> 12x22.
Hi,
while waiting on these updates I updated matroxfb a bit
(ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/matroxfb-2.5.63.gz),
so that it now uses fb_* for cfb modes, and putcs/... hooks for
text mode. I have still dozen of changes in fbcon.c which I have
to eliminate (mainly logo painting and cursor handling - for now
I still use revc method, mainly because of I did not make into it yet).
But main thing is that I'd like to apologize to James - character
painting is much faster for 8x16 fonts under 2.5.x than it was under 2.4.x,
8bpp unaccelerated 8x16 under 2.5.x is even faster than accelerated
under 2.4.x.
Algorithm for obtaining times was same as described in
Documentation/fb/matroxfb.txt, with two differences: (1) hardware is
G550 in P4/1.6GHz, and (2) there was 30MBps video stream feed to
secondary G550 head of G550 during 2.4.19-pre6 tests, so I made 2.5.x
tests twice, once with fbtv running and once without.
My main concern now is 12x22 font... Accelerator setup
is so costly for each separate painted character that for 8bpp
accelerated version is even slower than unaccelerated one :-(
(and almost twice as slow when compared with 2.4.x).
And one (or two...) generic questions: why is not pseudo_palette
u32* pseudo_palette, or even directly u32 pseudo_palette[17] ?
And why we do not fill this pseudo_palette with
i * 0x01010101U for 8bpp pseudocolor and i * 0x11111111U for 4bpp
pseudocolor? This allowed me to remove couple of switches and tests
from acceleration fastpaths (and from cfb_imageblit and cfb_fillrect,
but I did not changed these two in my benchmarks below).
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz
NOACCEL, 8x16
2.4.19+fbtv 2.5.63+fbtv 2.5.63
8bpp 10.02 6.96 5.62
16bpp 20.05 13.25 10.62
24bpp 30.03 19.05 15.13
32bpp 45.00 25.74 20.54
ACCEL, 8x16
2.4.19+fbtv 2.5.63+fbtv 2.5.63
8bpp 7.48 3.38 3.00
16bpp 7.50 3.38 3.01
24bpp 7.53 3.56 3.53
32bpp 8.95 4.37 4.33
NOACCEL, 12x22
2.4.19+fbtv 2.5.63+fbtv 2.5.63
8bpp 11.54 13.35 10.93
16bpp 20.00 22.02 18.03
24bpp 30.03 35.83 29.53
32bpp 40.12 44.48 36.75
ACCEL, 12x22
2.4.19+fbtv 2.5.63+fbtv 2.5.63
8bpp 8.57 14.87 12.90
16bpp 8.57 14.93 12.92
24bpp 8.56 15.13 13.10
32bpp 8.56 15.52 13.76
next prev parent reply other threads:[~2003-03-03 20:35 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-02-20 1:09 FBdev updates James Simmons
2003-02-20 1:17 ` Jeff Garzik
2003-02-20 1:22 ` James Simmons
2003-02-20 15:02 ` Dave Jones
2003-02-20 15:07 ` James Simmons
2003-02-20 18:29 ` Petr Vandrovec
2003-02-20 19:58 ` James Simmons
2003-02-20 22:00 ` [Linux-fbdev-devel] " Antonino Daplas
2003-02-21 9:09 ` Geert Uytterhoeven
2003-02-21 10:46 ` Antonino Daplas
2003-02-21 11:02 ` [Linux-fbdev-devel] " Geert Uytterhoeven
2003-02-21 1:45 ` David S. Miller
2003-02-21 9:04 ` [Linux-fbdev-devel] " Geert Uytterhoeven
2003-02-21 0:24 ` Antonino Daplas
2003-03-03 20:35 ` Petr Vandrovec [this message]
2003-03-03 21:25 ` [Linux-fbdev-devel] " Geert Uytterhoeven
2003-03-03 21:32 ` Antonino Daplas
2003-03-05 20:23 ` James Simmons
2003-03-06 1:18 ` Antonino Daplas
2003-03-04 21:29 ` Jurriaan
2003-03-04 21:46 ` Petr Vandrovec
2003-03-09 21:29 ` Petr Vandrovec
2003-03-09 22:27 ` Antonino Daplas
2003-03-09 22:54 ` Petr Vandrovec
2003-03-09 23:44 ` Antonino Daplas
2003-03-13 22:23 ` fb_imageblit semantic Petr Vandrovec
2003-03-14 9:22 ` Geert Uytterhoeven
2003-03-11 15:31 ` [Linux-fbdev-devel] Re: FBdev updates James Simmons
2003-03-16 22:10 ` Nicholas Wourms
2003-03-05 20:22 ` James Simmons
2003-03-06 7:35 ` Sven Luther
2003-03-06 8:05 ` [Linux-fbdev-devel] " Antonino Daplas
2003-03-06 8:25 ` Sven Luther
2003-03-28 14:19 ` 2.5.66 fbdev performance (was Re: Re: FBdev updates) Petr Vandrovec
2003-03-28 18:50 ` [Linux-fbdev-devel] " Antonino Daplas
2003-02-20 15:10 ` FBdev updates Ivan Kokshaysky
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=20030303203500.GA2916@vana.vc.cvut.cz \
--to=vandrove@vc.cvut.cz \
--cc=adaplas@pol.net \
--cc=jsimmons@infradead.org \
--cc=linux-fbdev-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).