Session recorder enabled by GROUP2_CLIENT_PERF=1.
Definition ClientPerfRecorder.hpp:177
void writeFramesCsv() const
Definition ClientPerfRecorder.cpp:249
std::string baseDir_
Definition ClientPerfRecorder.hpp:193
std::uint64_t framesBeyondInitialReserve_
Definition ClientPerfRecorder.hpp:192
bool isEnabled() const noexcept
Definition ClientPerfRecorder.hpp:184
bool isRecording() const noexcept
Definition ClientPerfRecorder.hpp:185
void start()
Definition ClientPerfRecorder.cpp:206
std::vector< ClientPerfFrame > frames_
Definition ClientPerfRecorder.hpp:195
std::string sessionDir_
Definition ClientPerfRecorder.hpp:194
bool recording_
Definition ClientPerfRecorder.hpp:190
bool enabled_
Definition ClientPerfRecorder.hpp:189
void configureFromEnv(const char *basePath)
Definition ClientPerfRecorder.cpp:186
void writeSummary() const
Definition ClientPerfRecorder.cpp:264
const std::string & sessionDir() const noexcept
Definition ClientPerfRecorder.hpp:186
void record(const ClientPerfFrame &frame)
Definition ClientPerfRecorder.cpp:240
std::size_t reserveFrames_
Definition ClientPerfRecorder.hpp:191
void stop()
Definition ClientPerfRecorder.cpp:229
One rendered client frame worth of timing and workload counters.
Definition ClientPerfRecorder.hpp:17
std::uint32_t rendererIndexedDraws
Definition ClientPerfRecorder.hpp:123
float entityCmdsMs
Definition ClientPerfRecorder.hpp:43
std::uint32_t perfDeepestCapsuleCalls
Definition ClientPerfRecorder.hpp:155
float refreshPlayersMs
Definition ClientPerfRecorder.hpp:30
std::uint32_t perfDeepestCapsuleTriMeshTris
Definition ClientPerfRecorder.hpp:158
float measuredPhysicsHz
Definition ClientPerfRecorder.hpp:71
std::uint32_t impactParticles
Definition ClientPerfRecorder.hpp:90
std::uint32_t perfStaticBroadphaseQueries
Definition ClientPerfRecorder.hpp:148
std::uint32_t animatedSampled
Definition ClientPerfRecorder.hpp:82
std::uint32_t perfClosestPointWallAttachmentCalls
Definition ClientPerfRecorder.hpp:166
std::uint32_t reconcileRequestedTicks
Definition ClientPerfRecorder.hpp:60
std::uint32_t imguiIndices
Definition ClientPerfRecorder.hpp:128
float dispatchMs
Definition ClientPerfRecorder.hpp:38
float preambleMs
Definition ClientPerfRecorder.hpp:23
std::uint32_t perfSweepCapsuleTriMeshNodes
Definition ClientPerfRecorder.hpp:153
std::uint32_t perfWallDetectCalls
Definition ClientPerfRecorder.hpp:138
float cameraMs
Definition ClientPerfRecorder.hpp:36
float drawFrameMs
Definition ClientPerfRecorder.hpp:50
std::uint32_t snapshotApplied
Definition ClientPerfRecorder.hpp:59
std::uint32_t ribbonVertices
Definition ClientPerfRecorder.hpp:92
float snapshotApplyMs
Definition ClientPerfRecorder.hpp:28
std::uint32_t animatedDrawn
Definition ClientPerfRecorder.hpp:83
float recvKBps
Definition ClientPerfRecorder.hpp:109
std::uint32_t rendererEntityCmds
Definition ClientPerfRecorder.hpp:116
std::uint32_t animatedCandidates
Definition ClientPerfRecorder.hpp:81
double timestampMs
Definition ClientPerfRecorder.hpp:19
float networkStatsMs
Definition ClientPerfRecorder.hpp:25
std::uint32_t perfSweepAabbAllCalls
Definition ClientPerfRecorder.hpp:150
float frameLimiterMs
Definition ClientPerfRecorder.hpp:54
float particlesMs
Definition ClientPerfRecorder.hpp:39
std::uint32_t pointLights
Definition ClientPerfRecorder.hpp:87
float refreshRespawnsMs
Definition ClientPerfRecorder.hpp:32
std::uint32_t reconcileReplayedTicks
Definition ClientPerfRecorder.hpp:61
std::uint32_t perfCollisionPlayers
Definition ClientPerfRecorder.hpp:133
std::uint32_t rendererWeaponDrawn
Definition ClientPerfRecorder.hpp:120
std::uint32_t swapchainWidth
Definition ClientPerfRecorder.hpp:113
std::uint32_t perfWallAttachmentPrevTriangleHits
Definition ClientPerfRecorder.hpp:145
std::uint32_t fireFields
Definition ClientPerfRecorder.hpp:80
float drawRecordMs
Definition ClientPerfRecorder.hpp:52
std::uint32_t perfMovementPlayers
Definition ClientPerfRecorder.hpp:131
std::uint32_t rendererPointLights
Definition ClientPerfRecorder.hpp:118
std::uint32_t tracerParticles
Definition ClientPerfRecorder.hpp:91
std::uint32_t playerEntities
Definition ClientPerfRecorder.hpp:76
std::uint32_t voiceSourcesActive
Definition ClientPerfRecorder.hpp:99
std::uint32_t skinnedInstances
Definition ClientPerfRecorder.hpp:84
std::uint32_t smokeParticles
Definition ClientPerfRecorder.hpp:95
std::uint32_t arcVertices
Definition ClientPerfRecorder.hpp:94
std::uint32_t perfClosestPointMeshTris
Definition ClientPerfRecorder.hpp:161
std::uint32_t perfSweepCapsuleTriMeshCalls
Definition ClientPerfRecorder.hpp:152
std::uint32_t perfClosestPointWallProbeCalls
Definition ClientPerfRecorder.hpp:163
std::uint32_t rendererWorldInstances
Definition ClientPerfRecorder.hpp:115
std::uint32_t reconcileMissingTicks
Definition ClientPerfRecorder.hpp:62
float refreshProjectilesMs
Definition ClientPerfRecorder.hpp:31
std::uint32_t rendererSkinnedInstances
Definition ClientPerfRecorder.hpp:119
std::uint32_t perfKccCaIterations
Definition ClientPerfRecorder.hpp:136
std::uint32_t perfClosestPointTriangleCalls
Definition ClientPerfRecorder.hpp:162
std::uint32_t rendererMeshDraws
Definition ClientPerfRecorder.hpp:122
std::uint32_t perfClosestPointMeshNodes
Definition ClientPerfRecorder.hpp:160
std::uint32_t audioSourcesActive
Definition ClientPerfRecorder.hpp:98
float reconcileErrorPosition
Definition ClientPerfRecorder.hpp:68
std::uint64_t audioStolenSources
Definition ClientPerfRecorder.hpp:105
float registryUpdateKB
Definition ClientPerfRecorder.hpp:111
std::uint32_t perfKccSweepHits
Definition ClientPerfRecorder.hpp:137
std::uint32_t reconcileReplayForced
Definition ClientPerfRecorder.hpp:64
std::uint32_t clientPredictTick
Definition ClientPerfRecorder.hpp:66
std::uint32_t perfWallAttachmentBroadphaseFallbacks
Definition ClientPerfRecorder.hpp:147
std::uint32_t beamPointLights
Definition ClientPerfRecorder.hpp:88
float hudMs
Definition ClientPerfRecorder.hpp:47
std::uint32_t perfSweepCapsuleAllCalls
Definition ClientPerfRecorder.hpp:151
std::uint64_t audioDroppedByLimit
Definition ClientPerfRecorder.hpp:104
std::uint32_t perfClosestPointWallAttachmentTris
Definition ClientPerfRecorder.hpp:168
std::uint32_t renderableEntities
Definition ClientPerfRecorder.hpp:78
float drawSubmitMs
Definition ClientPerfRecorder.hpp:53
std::uint32_t reconcileSkippedExact
Definition ClientPerfRecorder.hpp:63
std::uint32_t entityRenderCmds
Definition ClientPerfRecorder.hpp:86
std::uint32_t perfWallAttachmentNeighborHits
Definition ClientPerfRecorder.hpp:146
float rttMs
Definition ClientPerfRecorder.hpp:107
float recorderFpsMs
Definition ClientPerfRecorder.hpp:45
float refreshPowerupsMs
Definition ClientPerfRecorder.hpp:34
float reconcileErrorVelocity
Definition ClientPerfRecorder.hpp:69
std::uint32_t imguiVertices
Definition ClientPerfRecorder.hpp:127
float imguiMs
Definition ClientPerfRecorder.hpp:46
std::uint32_t physicsTicks
Definition ClientPerfRecorder.hpp:56
std::uint32_t perfWallSphereFallbacks
Definition ClientPerfRecorder.hpp:141
std::uint32_t perfClosestPointWallProbeTris
Definition ClientPerfRecorder.hpp:165
std::uint32_t projectileEntities
Definition ClientPerfRecorder.hpp:79
std::uint32_t perfWallAttachmentMeshes
Definition ClientPerfRecorder.hpp:143
std::uint32_t perfDeepestCapsuleTriMeshCalls
Definition ClientPerfRecorder.hpp:156
std::uint32_t perfClosestPointWallAttachmentNodes
Definition ClientPerfRecorder.hpp:167
std::uint64_t frameNumber
Definition ClientPerfRecorder.hpp:18
std::uint32_t swapchainHeight
Definition ClientPerfRecorder.hpp:114
float audioMs
Definition ClientPerfRecorder.hpp:40
float sendKBps
Definition ClientPerfRecorder.hpp:110
std::uint32_t perfKccBumpHits
Definition ClientPerfRecorder.hpp:135
std::uint64_t audioDroppedByCooldown
Definition ClientPerfRecorder.hpp:103
std::uint32_t perfStaticBroadphaseMeshes
Definition ClientPerfRecorder.hpp:149
std::uint32_t rendererModelDraws
Definition ClientPerfRecorder.hpp:121
std::uint32_t perfDeepestCapsuleTriMeshNodes
Definition ClientPerfRecorder.hpp:157
std::uint32_t decals
Definition ClientPerfRecorder.hpp:96
std::uint32_t perfWallMeshProbeMeshes
Definition ClientPerfRecorder.hpp:140
float pauseMenuMs
Definition ClientPerfRecorder.hpp:48
float inputMs
Definition ClientPerfRecorder.hpp:24
std::uint32_t perfSweepCapsuleTriMeshTris
Definition ClientPerfRecorder.hpp:154
std::uint32_t reconcileMissingHistory
Definition ClientPerfRecorder.hpp:65
float accumulatorMs
Definition ClientPerfRecorder.hpp:70
float fps1pLow
Definition ClientPerfRecorder.hpp:73
float physicsMs
Definition ClientPerfRecorder.hpp:26
float cpuFrameMs
Definition ClientPerfRecorder.hpp:21
std::uint32_t perfMovementCalls
Definition ClientPerfRecorder.hpp:130
std::uint64_t audioEventsPosted
Definition ClientPerfRecorder.hpp:100
std::uint64_t audioCommandsGenerated
Definition ClientPerfRecorder.hpp:101
std::uint32_t perfClosestPointWallProbeNodes
Definition ClientPerfRecorder.hpp:164
std::uint32_t rendererTriangles
Definition ClientPerfRecorder.hpp:124
std::uint32_t hitscanBeams
Definition ClientPerfRecorder.hpp:93
std::uint32_t boneMatrices
Definition ClientPerfRecorder.hpp:85
float animationMs
Definition ClientPerfRecorder.hpp:42
std::uint32_t perfCollisionCalls
Definition ClientPerfRecorder.hpp:132
float viewmodelMs
Definition ClientPerfRecorder.hpp:44
std::uint32_t perfWallMeshProbes
Definition ClientPerfRecorder.hpp:139
std::uint32_t serverAckedClientTick
Definition ClientPerfRecorder.hpp:67
std::uint32_t snapshotApplyCount
Definition ClientPerfRecorder.hpp:58
std::uint32_t imguiDrawLists
Definition ClientPerfRecorder.hpp:126
float fps5pLow
Definition ClientPerfRecorder.hpp:74
float avgRttMs
Definition ClientPerfRecorder.hpp:108
float cameraResolveMs
Definition ClientPerfRecorder.hpp:35
float drawAcquireMs
Definition ClientPerfRecorder.hpp:51
std::uint32_t tickCount
Definition ClientPerfRecorder.hpp:57
float interpolationMs
Definition ClientPerfRecorder.hpp:41
float networkPollMs
Definition ClientPerfRecorder.hpp:27
std::uint32_t rendererEntityDraws
Definition ClientPerfRecorder.hpp:117
std::uint64_t audioSourcesStarted
Definition ClientPerfRecorder.hpp:102
float refreshDroppedWeaponsMs
Definition ClientPerfRecorder.hpp:33
float reconciliationMs
Definition ClientPerfRecorder.hpp:29
std::uint32_t perfWallDetectSkippedByGate
Definition ClientPerfRecorder.hpp:144
float fpsCurrent
Definition ClientPerfRecorder.hpp:72
float wallFrameMs
Definition ClientPerfRecorder.hpp:20
std::uint32_t perfClosestPointMeshCalls
Definition ClientPerfRecorder.hpp:159
std::uint32_t perfWallAttachmentCalls
Definition ClientPerfRecorder.hpp:142
std::uint32_t localPlayers
Definition ClientPerfRecorder.hpp:77
float imguiRenderMs
Definition ClientPerfRecorder.hpp:49
float localVfxMs
Definition ClientPerfRecorder.hpp:37
std::uint32_t perfKccCalls
Definition ClientPerfRecorder.hpp:134