Use native graphics system

Allan Sandfeld Jensen kde at carewolf.com
Tue Jan 10 12:01:22 GMT 2012


On Tuesday 10 January 2012, Michael Pyne wrote:
> On Monday, January 09, 2012 19:53:42 Tommi Tervo wrote:
> > On Sun, Jan 8, 2012 at 9:43 AM, Peter Penz <peter.penz19 at gmail.com> wrote:
> > > Am 08.01.2012 um 03:04 schrieb Thiago Macieira <thiago at kde.org>:
> > >> If there were problems with the raster graphics system, which had been
> > >> enabled in Qt 4.8 for over 12 months before the release, why weren't
> > >> they reported? Or are the reports still unfixed?
> > > 
> > > I don't know what Tommi means with "rendering glitches, etc" - my
> > > (reverted) patch was only based on my obviously wrong assumption that
> > > smooth scaling of pixmaps is always slow with the raster
> > > graphicssystem.
> > 
> > I was hoping that SadEagle would have commented also, I remember him
> > complaining about this issue, we'll lose accelerated image processing?
> > when using raster backend.
> > 
> > Raster is many times slower on my laptop than native (OSS radeon
> > driver).  Web page scrolling is abrupt and causing e.g. following
> 
> > bugs:
> I've also experienced the "issue" with kde-asciiquarium, which continuously
> move pixmaps around... under raster the application is basically just one
> continuous memcpy(), while it performed much better under native.
> 
> I put "issue" in quotes as it's more an artifact of the kde-asciiquarium
> technique than an actual technical issue. If KHTML's implementation causes
> it to hit the raster slow paths then it would not be surprising that
> raster is slow. Whether that is inherent to the KHTML design is another
> story, but it's definitely true that there are at least some things
> (however uncommon) that are slower in raster than in native.

Well. We used to program from an assumption that QImage -> QPixmap was 
expensive but blit was practically free. This is the case with native on X11, 
but with raster, QImage -> QPixmap is practically free, but blit is 
surprisingly slow. I have no idea why blit is so expensive in raster, but 
KHTML paints 10-20x slower on raster than it does on X11, and the only special 
thing KHTML really does is avoid QImage -> QPixmap conversions and simply try 
to only move QPixmaps tiles around when possible.

I assume raster is being a bit too stupid and repaints the application to X11 
on every scroll event. But even though it is a software-renderer it should 
still be possible to make it smart enough to just tell X11 to move the pixmap 
server-side. Something is not quite right.

`Allan




More information about the kfm-devel mailing list