> Any chance you could share specific numbers? When run some Vulkan application, the FPS jumps from ~80 to ~1000 with this patch for PresentOptionAsync.
Regards, Jammy -----Original Message----- From: Michel Dänzer [mailto:[email protected]] Sent: Wednesday, November 04, 2015 11:23 AM To: Zhou, Jammy Cc: [email protected] Subject: Re: [PATCH xf86-video-amdgpu] Call present_event_notify directly if target_msc <= crtc_msc (v2) On 03.11.2015 15:43, Zhou, Jammy wrote: >> If crtc_msc >= msc, the DRM_IOCTL_WAIT_VBLANK ioctl should generate >> the userspace event immediately > Yes, that works. But the round trip of the vblank handling makes the > performance worse. Any chance you could share specific numbers? Otherwise, it's hard for me to imagine how this could make a significant difference. > -----Original Message----- > From: Michel Dänzer [mailto:[email protected]] > Sent: Monday, November 02, 2015 5:44 PM > To: Zhou, Jammy > Cc: [email protected] > Subject: Re: [PATCH xf86-video-amdgpu] Call present_event_notify > directly if target_msc <= crtc_msc (v2) > > On 29.10.2015 14:34, Jammy Zhou wrote: >> Do present immediately in this case. >> >> v2: fix the overflow >> >> Change-Id: I25b9212169ccbf572b88c033dc09c0ac5cfa4812 >> Signed-off-by: Jammy Zhou <[email protected]> >> --- >> src/amdgpu_present.c | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/src/amdgpu_present.c b/src/amdgpu_present.c index >> 5e5ed72..b9cc1c7 100644 >> --- a/src/amdgpu_present.c >> +++ b/src/amdgpu_present.c >> @@ -160,6 +160,16 @@ amdgpu_present_queue_vblank(RRCrtcPtr crtc, uint64_t >> event_id, uint64_t msc) >> struct amdgpu_drm_queue_entry *queue; >> drmVBlank vbl; >> int ret; >> + uint64_t crtc_ust, crtc_msc; >> + >> + ret = amdgpu_present_get_ust_msc(crtc, &crtc_ust, &crtc_msc); >> + if (ret != Success) >> + return ret; >> + >> + if (crtc_msc >= msc) { >> + present_event_notify(event_id, crtc_ust, crtc_msc); >> + return Success; >> + } > > If crtc_msc >= msc, the DRM_IOCTL_WAIT_VBLANK ioctl should generate the > userspace event immediately, so I'm not sure anymore why this patch would > make any difference. Can you provide more details about what exactly happens > with and without this patch? > > -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer _______________________________________________ xorg-driver-ati mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-driver-ati
