From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 44499] r280 and xbmc - choppy menu and video playback
Date: Tue, 17 Jan 2012 16:50:18 +0000 [thread overview]
Message-ID: <bug-44499-502-vDM6RYTXA5@http.bugs.freedesktop.org/> (raw)
In-Reply-To: <bug-44499-502@http.bugs.freedesktop.org/>
https://bugs.freedesktop.org/show_bug.cgi?id=44499
--- Comment #10 from Roland Scheidegger <sroland@vmware.com> 2012-01-17 08:50:18 PST ---
Not sure what fog test that is, but this and blender show some unaccelerated
meta ops. For blender, it's caused by glDrawPixels to z buffer (which will
always result in fallback for r200), for fog it's glBitmap (which could be
accelerated in theory, presumably some gl state causes the fallback).
The problem might be that in earlier drivers not the whole buffer was mapped
(that is, copied/untiled etc. back from video memory), only the spans affected
by such swrast operations. But nowadays the whole buffers are mapped. So the
cost of something like glDrawPixels of a single pixel to the depth buffer is
very high (most likely approximately the same as a glDrawPixels affecting every
pixel in the buffer).
I don't know how this could be solved. Generally apps should avoid these
operations.
For glDrawPixels to the depth buffer, the chip can't handle outputting depth
values from a pixel shader(*). One idea to accelerate this might be to output
one vertex per pixel set up appropriately, for only a few pixels that sure
would be way faster (might even be faster for all pixels), at least I think it
should work. But meta ops can't do that.
For the glBitmap case, it's possible the state preventing acceleration to
happen could be incorporated into the code, but it might not be worth the
trouble.
I can't tell though if xbmc really hits any of these fallbacks. Its slowness
could be due to some entirely different reason.
(*)Actually it can as this is a d3d8 feature. The driver definitely can't, and
even if it could the precision would be insufficient for this feature to be
really useful. Not to mention you'd need a custom r200 shader.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
next prev parent reply other threads:[~2012-01-17 16:50 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-05 17:58 [Bug 44499] New: r280 and xbmc - choppy menu and video playback bugzilla-daemon
2012-01-05 18:01 ` [Bug 44499] " bugzilla-daemon
2012-01-05 18:02 ` bugzilla-daemon
2012-01-05 18:25 ` bugzilla-daemon
2012-01-05 18:26 ` bugzilla-daemon
2012-01-05 18:28 ` bugzilla-daemon
2012-01-05 18:35 ` bugzilla-daemon
2012-01-13 15:14 ` bugzilla-daemon
2012-01-16 16:37 ` bugzilla-daemon
2012-01-17 0:36 ` bugzilla-daemon
2012-01-17 16:50 ` bugzilla-daemon [this message]
2012-12-09 23:47 ` bugzilla-daemon
2012-12-20 11:00 ` bugzilla-daemon
2012-12-20 11:08 ` bugzilla-daemon
2012-12-20 11:30 ` bugzilla-daemon
2012-12-24 13:26 ` bugzilla-daemon
2012-12-24 13:56 ` bugzilla-daemon
2014-02-25 16:46 ` bugzilla-daemon
2014-03-01 15:01 ` bugzilla-daemon
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=bug-44499-502-vDM6RYTXA5@http.bugs.freedesktop.org/ \
--to=bugzilla-daemon@freedesktop.org \
--cc=dri-devel@lists.freedesktop.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