1 # Copyright (C) 2016 Intel Corporation. All Rights Reserved.
3 # Permission is hereby granted, free of charge, to any person obtaining a
4 # copy of this software and associated documentation files (the "Software"),
5 # to deal in the Software without restriction, including without limitation
6 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
7 # and/or sell copies of the Software, and to permit persons to whom the
8 # Software is furnished to do so, subject to the following conditions:
10 # The above copyright notice and this permission notice (including the next
11 # paragraph) shall be included in all copies or substantial portions of the
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
22 # Provides definitions for events.
28 APIDrawWakeAllThreads,
54 FECullZeroAreaAndBackface,
57 FEProcessInvalidateTiles,
77 BESingleSampleBackend,
85 WorkerWaitForThreadEvent,
100 event ThreadStartApiEvent
104 event ThreadStartWorkerEvent
108 event DrawInstancedEvent
112 uint32_t numVertices;
114 uint32_t numInstances;
115 uint32_t startInstance;
118 event DrawIndexedInstancedEvent
125 uint32_t numInstances;
126 uint32_t startInstance;
132 uint32_t threadGroupCountX;
133 uint32_t threadGroupCountY;
134 uint32_t threadGroupCountZ;
143 ///@brief API Stat: Split draw event for DrawInstanced. In certain cases, Rasty can split draws up into smaller draws.
144 event DrawInstancedSplitEvent
149 ///@brief API Stat: Split draw event for DrawIndexedInstanced.
150 event DrawIndexedInstancedSplitEvent
155 ///@brief API Stat: Synchonization event.
161 ///@brief API Stat: Invalidate hot tiles (i.e. tile cache)
162 event SwrInvalidateTilesEvent
167 ///@brief API Stat: Invalidate and discard hot tiles within pixel region
168 event SwrDiscardRectEvent
173 ///@brief API Stat: Flush tiles out to memory that is typically owned by driver (e.g. Flush RT cache)
174 event SwrStoreTilesEvent
179 event FrontendStatsEvent
183 uint64_t IaPrimitives;
184 uint64_t VsInvocations;
185 uint64_t HsInvocations;
186 uint64_t DsInvocations;
187 uint64_t GsInvocations;
188 uint64_t GsPrimitives;
189 uint64_t CInvocations;
190 uint64_t CPrimitives;
191 uint64_t SoPrimStorageNeeded0;
192 uint64_t SoPrimStorageNeeded1;
193 uint64_t SoPrimStorageNeeded2;
194 uint64_t SoPrimStorageNeeded3;
195 uint64_t SoNumPrimsWritten0;
196 uint64_t SoNumPrimsWritten1;
197 uint64_t SoNumPrimsWritten2;
198 uint64_t SoNumPrimsWritten3;
201 event BackendStatsEvent
204 uint64_t DepthPassCount;
205 uint64_t PsInvocations;
206 uint64_t CsInvocations;
210 event EarlyDepthStencilInfoSingleSample
212 uint64_t depthPassMask;
213 uint64_t stencilPassMask;
214 uint64_t coverageMask;
217 event EarlyDepthStencilInfoSampleRate
219 uint64_t depthPassMask;
220 uint64_t stencilPassMask;
221 uint64_t coverageMask;
224 event EarlyDepthStencilInfoNullPS
226 uint64_t depthPassMask;
227 uint64_t stencilPassMask;
228 uint64_t coverageMask;
231 event LateDepthStencilInfoSingleSample
233 uint64_t depthPassMask;
234 uint64_t stencilPassMask;
235 uint64_t coverageMask;
238 event LateDepthStencilInfoSampleRate
240 uint64_t depthPassMask;
241 uint64_t stencilPassMask;
242 uint64_t coverageMask;
245 event LateDepthStencilInfoNullPS
247 uint64_t depthPassMask;
248 uint64_t stencilPassMask;
249 uint64_t coverageMask;
252 event EarlyDepthInfoPixelRate
254 uint64_t depthPassCount;
255 uint64_t activeLanes;
259 event LateDepthInfoPixelRate
261 uint64_t depthPassCount;
262 uint64_t activeLanes;
266 event BackendDrawEndEvent
271 event FrontendDrawEndEvent
276 event EarlyZSingleSample
284 event LateZSingleSample
292 event EarlyStencilSingleSample
300 event LateStencilSingleSample
308 event EarlyZSampleRate
316 event LateZSampleRate
324 event EarlyStencilSampleRate
332 event LateStencilSampleRate
348 event EarlyStencilNullPS
356 event EarlyZPixelRate
407 uint64_t inputPrimCount;
408 uint64_t primGeneratedCount;
415 uint64_t inputPrimCount;
421 uint64_t primGeneratedCount;
430 event ClipVertexCount
432 uint64_t vertsPerPrim;