[Mesa-dev] [PATCH] r600g tiling final

Jerome Glisse j.glisse at gmail.com
Fri Feb 3 11:47:21 PST 2012


Hi,

So tiling work is i believe done. I have run piglit accross wide range
of hw and sw combination. Bottom line is new mesa on top of either old
kernel or old ddx won't regress anything. New mesa on top of proper
kernel will get you 2D tiling for texture and anything allocated by
mesa, and if you have proper DDX with option ColorTiling2D enabled you
will also get 2D tiling for front buffer and depth/stencil buffer.

For libdrm you need the lastest master. I will do a libdrm release
on monday. Afterward i will commit mesa & ddx with proper autoconf
voodoo to check for the new libdrm.

kernel patches :
http://people.freedesktop.org/~glisse/tiling/0001-drm-radeon-kms-add-support-for-streamout-v7.patch
http://people.freedesktop.org/~glisse/tiling/0001-drm-radeon-add-support-for-evergreen-ni-tiling-infor.patch

mesa patch:
http://people.freedesktop.org/~glisse/tiling/0001-r600g-add-support-for-common-surface-allocator-for-t.patch

ddx patch:
http://people.freedesktop.org/~glisse/tiling/0001-r600-evergreen-use-common-surface-allocator-for-tili.patch

Link to piglit test:
http://people.freedesktop.org/~glisse/tiling/cayman/changes.html
http://people.freedesktop.org/~glisse/tiling/cedar/changes.html
http://people.freedesktop.org/~glisse/tiling/redwood/changes.html
http://people.freedesktop.org/~glisse/tiling/juniper/changes.html
http://people.freedesktop.org/~glisse/tiling/fusion/changes.html
http://people.freedesktop.org/~glisse/tiling/rv770/changes.html
http://people.freedesktop.org/~glisse/tiling/rv710/changes.html
http://people.freedesktop.org/~glisse/tiling/rv635/changes.html
http://people.freedesktop.org/~glisse/tiling/rv610/changes.html

first column GPU name is unpatched mesa,unpatched ddx,unpatched kernel

second column surf0-ddx0 is patched mesa,patched ddx with 2d tiling
disabled and new mesa code path disabled (basicly check that nothing
regress in old code path).

third column patched mesa, unpatched ddx using new mesa code path.
This check that mesa on top of old userspace doesn't break anything.

fourth column patched mesa, patched ddx, unpatched kernel. This check
that new mesa on top of old kernel works properly.

fith column is everything is patched and 2D tiling is enabled everywhere.


Note that few test just randomly switch from pass to fail (fbo-sys-blit*,
read-front, ...).

I also tested a lot the old userspace on top of new kernel for evergreen
to make sure that the command checker doesn't regress anything. While it
reject some command stream thus were wrong and never successfully completed.
Leading to no regression in piglit (basicly second column).

Fusion doesn't have unpatched kernel run as things keep locking up for me
with unpatched kernel.

Cheers,
Jerome


More information about the mesa-dev mailing list