On the Intel side, vblank can be controlled through driconf, I'm guessing something similar is planned here?
Announcement
Collapse
No announcement yet.
ATI Radeon KMS vs. UMS With Ubuntu 10.04
Collapse
X
-
This isn't really "sync to vblank" as far as I know; it's a milder version that minimizes tearing but which does not limit the frame rate to the monitor refresh rate. I think it's the same mechanism that agd5f added to the Xv (and optionally EXA) code in radeon a year or so ago.
In other words "this isn't vblank so the vblank control shouldn't control it" -- that said I guess it might be nice to have *some* way to turn it on and off. Not sure if there is any standard way to configure drm code yet, or if driconf is an appropriate solution (ie I don't remember if driconf is read by the userspace or kernel bits of DRI).Test signature
Comment
-
Originally posted by RealNC View PostShouldn't VSync be controllable from user space? There's a "VSync" checkbox in KDE's settings, for example, that's supposed to only work with DRI2.
Comment
-
Originally posted by agd5f View PostPart of the problem is due to vline waiting for buffer swaps in the dri2 paths. This avoids tearing at the expense of performance (you can't really see more frames than the monitor can display, but...). This should be alleviated with page-flipping support. Try this ddx patch:
How much of a performance hit are you attributing to this? Are you suggesting the driver is effectively frame limiting at the moment?
Comment
-
I did a similar comparison but with my RV530 and also using latest libdrm and mesa from git. I noticed two UMS -> KMS regression:- Ubuntu bug 533784: this is already fixed in 2.6.34-rc1, Ubuntu should only backport the patches;
- texture corruption on many games. Examples:
- torcs: note the missing/corrupted text at left corners and also the FPS text:
- doom3: darker image:
- torcs: note the missing/corrupted text at left corners and also the FPS text:
Are these known issues or I am the only one experiencing these (in this case I will report as new bug)?
Comment
-
Originally posted by agd5f View PostPart of the problem is due to vline waiting for buffer swaps in the dri2 paths. This avoids tearing at the expense of performance (you can't really see more frames than the monitor can display, but...). This should be alleviated with page-flipping support. Try this ddx patch:
Code:diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c index 103972f..7ddcda0 100644 --- a/src/radeon_dri2.c +++ b/src/radeon_dri2.c @@ -313,7 +313,7 @@ radeon_dri2_copy_region(DrawablePtr drawable, } vsync = info->accel_state->vsync; - info->accel_state->vsync = TRUE; + //info->accel_state->vsync = TRUE; (*gc->ops->CopyArea)(&src_pixmap->drawable, &dst_pixmap->drawable, gc, 0, 0, drawable->width, drawable->height, 0, 0);
## VGA ##
AMD: X1950XTX, HD3870, HD5870
Intel: GMA45, HD3000 (Core i5 2500K)
Comment
-
Originally posted by agd5f View PostIt's a different thing. There are GL(X) extensions used for synchronization that would be used in that case.
Note that this is with unredirected GL. That is, a game running in full-screen mode without a compositor in between.
For what it's worth, in Windows 7 games can choose whether they want vsync or not in fullscreen mode.
Comment
-
Is there any tear-free setup available in Linux?
I thought that the page flip ioctl changes in .33 were supposed to fix this problem. Has it, but have none of the drivers yet come out that support it? Does anyone know if any of the blobs will hook into the changes I mentioned? It's really a bit frustrating to move a window slooooowly and still see tearing even with Nvidia's driver...
Best/Liam
Comment
Comment