ProcPutImage calls exaDoMoveOutPixmap, 4x slowdown

Eric Anholt eric at anholt.net
Wed Oct 15 12:43:37 PDT 2008


On Tue, 2008-10-14 at 16:49 +0200, Maarten Maathuis wrote:
> On Tue, Oct 14, 2008 at 4:02 PM, Clemens Eisserer <linuxhippy at gmail.com> wrote:
> > Hello,
> >
> > I've a use-case where the client uploads 32x32 A8 images to an
> > 256x256x8 pixmap  which is later used as mask in a composition
> > operation.
> > The test-case is able to render with 40fps on xserver-1.3/intel-2.1.1
> > however with the latest GIT of both I only get ~10-15fps.
> > Unfourtunatly I've not been able to create a stand-alone testcase
> > which triggers this problem :-/
> >
> > Using sysprof I can see a lot of time is spent moving data arround,
> > very strange is that PutImage seems to cause a readback:
> > ProcPutImage->ExaCheckPutImage->exaPrepareAccessReg->exaDoMigration->exaDoMoveOutPixmap->exaCopyDirty->exaWaitSync->I830EXASync
> > In Composite I see the re-uploading again.
> >
> > Any idea why ProcPutImage could to fallback (there's plenty of free vram)?
> > Are there tools / settings which could help me to identify the problem?
> >
> > Thank you in advance, Clemens
> > _______________________________________________
> > xorg mailing list
> > xorg at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/xorg
> >
> 
> I think this is because intel does not provide an UploadToScreen hook
> (because it has no vram). It hasn't made (visible) effort to
> reintegrate UXA in EXA, because you can obviously be bit smarter than
> what is currently being done. I've got an idea or two on how to
> improve this, but intel should be more than capable in dealing with
> this.

Migrating out for a write-only operation is just broken, and is the
thing that should be fixed there.

-- 
Eric Anholt
eric at anholt.net                         eric.anholt at intel.com


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
URL: <http://lists.x.org/archives/xorg/attachments/20081015/7e7f41f2/attachment.pgp>


More information about the xorg mailing list