Painfully slow rendering on Xvnc and other X servers with out XRender extension

RESOLVED WORKSFORME

Status

()

RESOLVED WORKSFORME
11 years ago
10 years ago

People

(Reporter: jim_nance, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(URL)

(Reporter)

Description

11 years ago
The Cairo back end that Firefox is now using is optimized for X servers implementing the XRender extension.  It will work with out this extension, but performance suffers, particularly when running over a network.  The details of this problem are available in freedesktop.org bug number 11529.

The Xvnc server does not implement XRender, which causes severe performance degradation, especially if Firefox and Xvnc are not running on the same machine.  Xvnc is a popular package, but does not seem to be actively developed, at least on the server side.

The root of the problem seems to be that in the absence of XRender, cairo must use a sequence of XGetImage/XPutImage calls for every image it draws on the screen.  These operations magnify the effect of network latency.

I believe this could be worked around by rendering the page to a pixmap and sending the finished page to the X server instead of constructing it there piece by piece.  This would obviously not be a win for the general case, so it would need to either be autodeteced or be a preference.  I do not know if the code lends itself to that or not.
(Reporter)

Updated

11 years ago
Blocks: 334720
(Reporter)

Comment 1

11 years ago
May be related to 386440 & 299727
Component: General → GFX: Thebes
Product: Firefox → Core
QA Contact: general → thebes
Target Milestone: Firefox 3 → ---
(Reporter)

Comment 2

11 years ago
I don't know what changed in Firefox 3 Beta 4, but rendering to a VNC X server is MUCH faster.

Comment 3

10 years ago
As the reporter says, the problem seems to be no longer there. Marking as FIXED until someone proves otherwise.
Status: NEW → RESOLVED
Last Resolved: 10 years ago
Resolution: --- → FIXED

Comment 4

10 years ago
No patch / bug given as the code fix.
Resolution: FIXED → WORKSFORME
You need to log in before you can comment on or make changes to this bug.