<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<div dir="auto">
<div dir="auto"><span style="font-size: 12pt;">On April 30, 2021 18:00:58 "Dixit, Ashutosh" <ashutosh.dixit@intel.com> wrote:</span></div><div id="aqm-original" style="color: black;">
<div><br></div>
<blockquote type="cite" class="gmail_quote" style="margin: 0 0 0 0.75ex; border-left: 1px solid #808080; padding-left: 0.75ex;">
<div dir="auto">On Fri, 30 Apr 2021 15:26:09 -0700, Umesh Nerlige Ramappa wrote:</div>
<blockquote type="cite" class="gmail_quote" style="margin: 0 0 0 0.75ex; border-left: 1px solid #0099CC; padding-left: 0.75ex;">
<div dir="auto"><br></div>
<div dir="auto">Looks like the engine can be dropped since all timestamps are in sync. I</div>
<div dir="auto">just have one more question here. The timestamp itself is 36 bits.  Should</div>
<div dir="auto">the uapi also report the timestamp width to the user OR should I just</div>
<div dir="auto">return the lower 32 bits of the timestamp?</div></blockquote></blockquote></div><div dir="auto"><br></div><div dir="auto">Yeah, I think reporting the timestamp width is a good idea since we're reporting the period/frequency here.</div><div dir="auto"><br></div><div id="aqm-original" style="color: black;" dir="auto"><blockquote type="cite" class="gmail_quote" style="margin: 0 0 0 0.75ex; border-left: 1px solid #808080; padding-left: 0.75ex;"><blockquote type="cite" class="gmail_quote" style="margin: 0 0 0 0.75ex; border-left: 1px solid #0099CC; padding-left: 0.75ex;"><div dir="auto"></div></blockquote>
<div dir="auto">How would exposing only the lower 32 bits of the timestamp work?</div>
<div dir="auto"><br></div>
<div dir="auto">The way to avoid exposing the width would be to expose the timestamp as a</div>
<div dir="auto">regular 64 bit value. In the kernel engine state, have a variable for the</div>
<div dir="auto">counter and keep on accumulating that (on each query) to full 64 bits in</div>
<div dir="auto">spite of the 36 bit HW counter overflow.</div></blockquote></div><div dir="auto"><br></div><div dir="auto">That's doesn't actually work since you can query the 64-bit timestamp value from the GPU. The way this is handled in Vulkan is that the number of timestamp bits is reported to the application as a queue property.</div><div dir="auto"><br></div><div dir="auto">--Jason</div><div id="aqm-original" style="color: black;" dir="auto"><blockquote type="cite" class="gmail_quote" style="margin: 0 0 0 0.75ex; border-left: 1px solid #808080; padding-left: 0.75ex;">
</blockquote>
</div><div dir="auto"><br></div>
</div></body>
</html>