All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 38800] New: glXSwapBuffersMscOML is slow on AMD Fusion but not on Intel 945 w/Atom
Date: Thu, 30 Jun 2011 03:48:11 -0700 (PDT)	[thread overview]
Message-ID: <bug-38800-502@http.bugs.freedesktop.org/> (raw)

https://bugs.freedesktop.org/show_bug.cgi?id=38800

           Summary: glXSwapBuffersMscOML is slow on AMD Fusion but not on
                    Intel 945 w/Atom
           Product: Mesa
           Version: unspecified
          Platform: x86 (IA32)
        OS/Version: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/Gallium/r600
        AssignedTo: dri-devel@lists.freedesktop.org
        ReportedBy: simon.farnsworth@onelan.co.uk


Created an attachment (id=48588)
 --> (https://bugs.freedesktop.org/attachment.cgi?id=48588)
My test program to demonstrate the performance issues

I'm trying to get an in-house OpenGL compositor up to the same performance on
AMD Fusion as it currently achieves on Intel graphics, and I've found that
glXSwapBuffersMscOML is slower (with a trivial test program) on AMD than it is
on Intel.

I've attached my test program (swapbufferstest.c), which I've been compiling
with:

gcc -O2 -ggdb -Wall -Werror -o swapbufferstest swapbufferstest.c -lX11 -lGL
-lGLEW -lGLU

I'm running identical Fedora 15 based software stacks on an Intel Atom D510
(integrated GMA 950 class graphics) and on an AMD Fusion board (GPU PCI ID
[1002:9802]).

On Intel, I get output like:
# ./swapbufferstest 
Screen is 1920x1200
Longest frame time 17.308969 ms
Biggest delta 3 frames, averaging 1.034188 frames per swap
Average swap interval 17.118282 ms
121 frames, 117 swaps

On AMD, I get:
# ./swapbufferstest 
Screen is 1920x1200
Longest frame time 16.751312 ms
Biggest delta 3 frames, averaging 3.000000 frames per swap
Average swap interval 49.326561 ms
123 frames, 41 swaps

I've confirmed that I've got a direct rendering context in both cases; on
Intel, I've been able to confirm that I'm doing page-flipping, but I can't yet
work out how to do that on the AMD driver; however, only hitting one frame in 3
doesn't seem right to me, especially since it's not reaching 10% CPU load. I
can't however see whether I'm actually hitting the pageflip codepath, or
whether I'm in a slow path.

Versions of interesting components are:

kernel-PAE-2.6.38.8-91.fc15.i686
mesa-dri-drivers-7.11-0.11.20110525.0.fc15.i686
libdrm-2.4.26-1.fc15.i686
xorg-x11-server-Xorg-1.10.2-1.fc15.i686
xorg-x11-drv-ati-6.14.1-1.20110504gita6d2dba6.fc15.i686
xorg-x11-drv-intel-2.15.0-3.fc15.i686

I'm able to rebuild RPMs with extra patches if needed for testing, and I have
both systems to hand for testing as needed.

I'll attach dmesg and Xorg.log from the AMD system to this bug.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

             reply	other threads:[~2011-06-30 10:48 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-30 10:48 bugzilla-daemon [this message]
2011-06-30 10:53 ` [Bug 38800] glXSwapBuffersMscOML is slow on AMD Fusion but not on Intel 945 w/Atom bugzilla-daemon
2011-06-30 10:53 ` bugzilla-daemon
2011-06-30 10:54 ` [Bug 38800] New: " Simon Farnsworth
2011-06-30 12:20 ` [Bug 38800] " bugzilla-daemon
2011-06-30 15:09 ` bugzilla-daemon
2011-06-30 17:10 ` bugzilla-daemon
2011-07-01 16:54 ` bugzilla-daemon
2011-07-01 16:57 ` bugzilla-daemon
2011-07-04 11:22 ` bugzilla-daemon
2011-07-04 13:27 ` bugzilla-daemon
2011-07-04 16:19 ` bugzilla-daemon
2011-07-04 16:30 ` bugzilla-daemon
2011-07-05 12:18 ` bugzilla-daemon
2011-07-05 12:24 ` bugzilla-daemon
2011-07-05 16:01 ` bugzilla-daemon
2011-07-05 16:56 ` bugzilla-daemon
2011-07-05 17:37 ` bugzilla-daemon
2011-07-05 17:57 ` bugzilla-daemon
2011-07-06 10:15 ` bugzilla-daemon
2011-07-06 10:19 ` bugzilla-daemon
2011-07-06 14:24 ` bugzilla-daemon
2011-07-06 20:54 ` bugzilla-daemon
2011-07-06 21:13 ` bugzilla-daemon
2011-07-06 21:25 ` bugzilla-daemon
2011-07-06 21:35 ` bugzilla-daemon
2011-07-06 21:52 ` bugzilla-daemon
2011-07-07  1:02 ` bugzilla-daemon
2011-07-07  1:43 ` bugzilla-daemon
2011-07-07  3:07 ` bugzilla-daemon
2011-07-07  8:47 ` bugzilla-daemon
2011-07-07 13:36 ` bugzilla-daemon
2011-07-07 13:49 ` bugzilla-daemon
2011-07-07 14:11 ` bugzilla-daemon
2011-07-07 17:46 ` bugzilla-daemon
2011-07-07 19:06 ` bugzilla-daemon
2011-07-07 20:39 ` bugzilla-daemon
2011-07-07 21:06 ` bugzilla-daemon
2011-07-07 21:25 ` bugzilla-daemon
2011-07-07 21:51 ` bugzilla-daemon
2011-07-08  9:41 ` bugzilla-daemon
2011-07-08 10:05 ` bugzilla-daemon
2011-07-08 11:32 ` bugzilla-daemon
2011-07-08 12:18 ` bugzilla-daemon
2011-07-08 14:12 ` bugzilla-daemon
2011-07-08 14:17 ` bugzilla-daemon
2011-07-08 14:20 ` bugzilla-daemon
2011-07-08 14:22 ` bugzilla-daemon
2011-07-08 14:25 ` bugzilla-daemon
2011-07-08 14:51 ` bugzilla-daemon
2011-07-08 18:16 ` bugzilla-daemon
2011-07-08 18:21 ` bugzilla-daemon
2011-07-11 21:28 ` bugzilla-daemon
2011-07-14 21:19 ` 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-38800-502@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.