From: "Nicolai Hähnle" <nicolai.haehnle-5C7GfCeVMHo@public.gmane.org>
To: "Cyr, Aric" <Aric.Cyr-5C7GfCeVMHo@public.gmane.org>,
"Koenig,
Christian" <Christian.Koenig-5C7GfCeVMHo@public.gmane.org>,
"Wentland, Harry" <Harry.Wentland-5C7GfCeVMHo@public.gmane.org>,
"Michel Dänzer" <michel-otUistvHUpPR7s880joybQ@public.gmane.org>,
"Manasi Navare"
<manasi.d.navare-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: Daniel Vetter <daniel.vetter-/w4YWyX8dFk@public.gmane.org>,
"Daenzer, Michel" <Michel.Daenzer-5C7GfCeVMHo@public.gmane.org>,
amd-gfx mailing list
<amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
dri-devel
<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
"Deucher,
Alexander" <Alexander.Deucher-5C7GfCeVMHo@public.gmane.org>,
"Koo, Anthony" <Anthony.Koo-5C7GfCeVMHo@public.gmane.org>
Subject: Re: RFC for a render API to support adaptive sync and VRR
Date: Tue, 10 Apr 2018 18:37:34 +0200 [thread overview]
Message-ID: <54baa87e-33a9-bd69-a309-d61176eb4e8d@amd.com> (raw)
In-Reply-To: <MWHPR12MB1837488A047C03E955282A4182BE0-Gy0DoCVfaSXe1Hf+mWOIywdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
On 10.04.2018 18:26, Cyr, Aric wrote:
> That presentation time doesn’t need to come to kernel as such and
> actually is fine as-is completely decoupled from adaptive sync. As long
> as the video player provides the new target_frame_duration_ns on the
> flip, then the driver/HW will target the correct refresh rate to match
> the source content. This simply means that more often than not the
> video presents will align very close to the monitor’s refresh rate,
> resulting in a smooth video experience. For example, if you have 24Hz
> content, and an adaptive sync monitor with a range of 40-60Hz, once the
> target_frame_duration_ns is provided, driver can configure the monitor
> to a fixed refresh rate of 48Hz causing all video presents to be
> frame-doubled in hardware without further application intervention.
What about multi-monitor displays, where you want to play an animation
that spans multiple monitors. You really want all monitors to flip at
the same time.
I understand where you're coming from, but the perspective of refusing a
target presentation time is a rather selfish one of "we're the display,
we're the most important, everybody else has to adjust to us" (e.g. to
get perfect sync between video and audio). I admit I'm phrasing it in a
bit of an extreme way, but perhaps this phrasing helps to see why that's
just not a very good attitude to have.
All devices (whether video or audio or whatever) should be able to
receive a target presentation time.
If the application can make your life a bit easier by providing the
targetted refresh rate as additional *hint-only* parameter (like in your
24 Hz --> 48 Hz doubling example), then maybe we should indeed consider
that.
Cheers,
Nicolai
>
>
> For video games we have a similar situation where a frame is rendered
> for a certain world time and in the ideal case we would actually display
> the frame at this world time.
>
> That seems like it would be a poorly written game that flips like that,
> unless they are explicitly trying to throttle the framerate for some
> reason. When a game presents a completed frame, they’d like that to
> happen as soon as possible. This is why non-VSYNC modes of flipping
> exist and many games leverage this. Adaptive sync gives you the lower
> latency of immediate flips without the tearing imposed by using
> non-VSYNC flipping.
>
>
> I mean we have the guys from Valve on this mailing list so I think we
> should just get the feedback from them and see what they prefer.
>
> We have thousands of Steam games on other OSes that work great already,
> but we’d certainly be interested in any additional feedback. My guess
> is they prefer to “do nothing” and let driver/HW manage it, otherwise
> you exempt all existing games from supporting adaptive sync without a
> rewrite or update.
>
>
> Regards,
> Christian.
>
>
> -Aric
>
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
next prev parent reply other threads:[~2018-04-10 16:37 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <c79421ce-9408-5cd6-5de3-0fa521146e4b@amd.com>
[not found] ` <c79421ce-9408-5cd6-5de3-0fa521146e4b-5C7GfCeVMHo@public.gmane.org>
2018-04-09 20:00 ` RFC for a render API to support adaptive sync and VRR Harry Wentland
[not found] ` <435ebd04-0435-5a6a-9f1e-e4c4fc629aa9-5C7GfCeVMHo@public.gmane.org>
2018-04-09 21:45 ` Manasi Navare
[not found] ` <20180409214554.GB13967-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2018-04-10 6:45 ` Christian König
2018-04-10 7:37 ` Michel Dänzer
[not found] ` <b75e31f7-ce59-de97-5445-cb4c03ff7336-otUistvHUpPR7s880joybQ@public.gmane.org>
2018-04-10 15:08 ` Harry Wentland
[not found] ` <ae9992e5-43ab-9636-13e1-8a5c692480b5-5C7GfCeVMHo@public.gmane.org>
2018-04-10 15:28 ` Christian König
2018-04-10 15:35 ` Cyr, Aric
2018-04-10 15:43 ` Christian König
[not found] ` <fc53ce53-f02c-891d-4aa5-e9a11cbe3007-5C7GfCeVMHo@public.gmane.org>
2018-04-10 16:26 ` Cyr, Aric
[not found] ` <MWHPR12MB1837488A047C03E955282A4182BE0-Gy0DoCVfaSXe1Hf+mWOIywdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2018-04-10 16:37 ` Nicolai Hähnle [this message]
[not found] ` <54baa87e-33a9-bd69-a309-d61176eb4e8d-5C7GfCeVMHo@public.gmane.org>
2018-04-10 17:52 ` Harry Wentland
[not found] ` <063d6dff-2b97-ef01-12bb-8a24125a58ec@daenzer.net>
2018-04-10 17:13 ` Cyr, Aric
[not found] ` <65006f34-39b9-5aca-e0c0-77a591b69c3a@daenzer.net>
[not found] ` <65006f34-39b9-5aca-e0c0-77a591b69c3a-otUistvHUpPR7s880joybQ@public.gmane.org>
2018-04-10 17:25 ` Cyr, Aric
[not found] ` <f85e3590-b283-843b-12d0-5f6f0c4c0952@amd.com>
2018-04-10 21:45 ` Cyr, Aric
2018-04-11 6:57 ` Nicolai Hähnle
[not found] ` <72c1d357-db72-b181-9421-04f99b3bbf2f-5C7GfCeVMHo@public.gmane.org>
2018-04-11 9:50 ` Michel Dänzer
[not found] ` <2005817c-09c0-aebe-bb96-9e22d6f16df5-otUistvHUpPR7s880joybQ@public.gmane.org>
2018-04-11 23:30 ` Cyr, Aric
[not found] ` <MWHPR12MB1837F8120B126FA3A4CE899982BD0-Gy0DoCVfaSXe1Hf+mWOIywdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2018-04-12 8:48 ` Michel Dänzer
2018-04-12 11:39 ` Nicolai Hähnle
[not found] ` <a5b5c31f-e7c5-8ae0-1239-06bfa86b939b-5C7GfCeVMHo@public.gmane.org>
2018-04-12 14:57 ` Michel Dänzer
2018-04-12 17:39 ` Harry Wentland
2018-04-11 10:28 ` Michel Dänzer
2018-04-11 15:45 ` Michel Dänzer
[not found] ` <MWHPR12MB1837C57016A470A5199E855282BE0-Gy0DoCVfaSXe1Hf+mWOIywdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2018-04-10 17:13 ` Michel Dänzer
2018-04-12 21:38 ` Stéphane Marchesin
2018-04-13 19:24 ` Harry Wentland
2018-04-18 3:58 ` Keith Packard
2018-04-18 7:39 ` Daniel Vetter
2018-04-20 20:32 ` Manasi Navare
[not found] ` <20180420203240.GA9472-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2018-04-21 10:30 ` Daniel Stone
2018-04-23 14:40 ` Harry Wentland
2018-04-23 21:19 ` Manasi Navare
[not found] ` <20180423211944.GC9472-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2018-04-24 12:09 ` Daniel Vetter
2018-04-24 14:20 ` Cyr, Aric
[not found] ` <20180424120946.GW31310-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2018-04-24 14:28 ` Harry Wentland
[not found] ` <b9c33eeb-1db8-f782-cfbe-411d94fecb67-5C7GfCeVMHo@public.gmane.org>
2018-04-24 21:57 ` Daniel Vetter
[not found] ` <CAKMK7uHzLRUwZSFbMb4qDzXBODVSQVTTw6BxgmvJdES4gJmBDg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-08-17 10:20 ` Ernst Sjöstrand
2018-04-10 15:03 ` Harry Wentland
2018-04-10 21:36 ` Manasi Navare
2018-04-10 22:00 ` Cyr, Aric
2018-04-13 16:04 ` Daniel Vetter
[not found] ` <20180413160453.GC31310-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2018-04-13 19:20 ` Harry Wentland
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=54baa87e-33a9-bd69-a309-d61176eb4e8d@amd.com \
--to=nicolai.haehnle-5c7gfcevmho@public.gmane.org \
--cc=Alexander.Deucher-5C7GfCeVMHo@public.gmane.org \
--cc=Anthony.Koo-5C7GfCeVMHo@public.gmane.org \
--cc=Aric.Cyr-5C7GfCeVMHo@public.gmane.org \
--cc=Christian.Koenig-5C7GfCeVMHo@public.gmane.org \
--cc=Harry.Wentland-5C7GfCeVMHo@public.gmane.org \
--cc=Michel.Daenzer-5C7GfCeVMHo@public.gmane.org \
--cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=daniel.vetter-/w4YWyX8dFk@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=manasi.d.navare-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=michel-otUistvHUpPR7s880joybQ@public.gmane.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