Age | Commit message (Collapse) | Author |
|
|
|
added convenience types for units F32Seconds, etc.
|
|
console
timing of scene load recording extension now guaranteed > requested time step
removed double add of recorded data
removed spam
|
|
various fixes to lltrace
start() on started recording no longer resets
fixed various instances of unit forgetfullness in lltrace
recording split now has gapless timing
scene monitor now guarantees min sample time
renamed a bunch of stats
added names to debug thread view on windows
|
|
|
|
console
fixed some lltrace logic errors
more consistent syncing of timestamps of sample values in recording stack
selection of primary buffers was completely incorrect
assignment of recordings got wrong play state due to implicit
operator = defined in base class
fixed asset stats only working up to the first send
|
|
removed LLTrace unit typedefs
|
|
|
|
changed Units macros and argument order to make it more clear
optimized units for integer types
fixed merging of periodicrecordings...should eliminate duplicate entries in sceneloadmonitor history
|
|
|
|
made recordings auto-update when executing query while active
|
|
fixed copy construction behavior of Recordings to not zero out data
split measurement into event and sample, with sample representing
a continuous function
|
|
merge at some point.
|
|
|
|
LLTrace clearer
Count becomes CountStatHandle
Count.sum becomes sum(Count, value), etc.
|
|
fixed LLExtendableRecording to actually accumulator recording time period
renamed and updated LLStopWatchControlsMixin::initTo to setPlayState
|
|
fix for linux build issues
|
|
fixed crash when sending viewer asset stats
|
|
hunting down bad values and crashes
|
|
|
|
Finished making LLUnit implicitly convertible to/from scalar integer values
cleaned up test code
|
|
fixed trace data gathering and routing from background thread
simplified slave->master thread communication (eliminated redundant recording and proxy object)
improved performance of fast timer data gathering (slow iterators)
|
|
fixed copy behavior of recordings and accumulator buffers
|
|
improvements to predicate API
default rules encapsulated in LLInitParam
removed empty flag from viewer asset stats
|
|
removed spam and dead code
|
|
finished most of conversion of llviewerassetstats
ported some param block fixes from viewer-chui
converted viewer asset stats to param block format
|
|
created param block skeleton for asset stats
removed most of llviewerassetstats logic
|
|
started conversion of llviewerassetstats
removed old, dead LLViewerStats code
made units tracing require units declaration
clean up of units handling
|
|
|
|
further cleanup of LLStat
removed llfloaterlagmeter
|
|
|
|
simplifies llvoavatar and allows adding such tracking to classes that live outside the avatar lifetime
|
|
summary metrics out of per-region info. Removed phase stats from avatar appearance change msg.
|
|
|
|
|
|
|
|
|
|
|
|
Changed assert to 50 since that's the new asset count. Added OTHER metrics for mesh and dummy asset types.
|
|
First, introduced a compact payload format that allows blocks of
metrics to be dropped from the viewer->collector payload compressing
1200 bytes of LLSD into about 300, give-or-take. Then converted
to using LLSD arrays in the payload to enumerate the regions
encountered. This simplifies much data handling from the viewer
all the way into the final formatter of the metrics on the grid.
|
|
representation transferring ownership, doing data aggregation
in a very pedantic way. That's just adding unneeded cost and
complication. Used the same objects to transport data as are
collecting it and everything got simpler, faster, easier to
read with fewer gotchas. Bit myself *again* doing the min/max/mean
merges but the unittests where there to pick me up again. Added
a per-region FPS metric while I was at it. This is much asked
for and there was a convenient place to sample the value.
|
|
Metrics were crediting inactive regions (those not current but
contributing to the sample) with additional time at the end of
the sample interval. Corrected.
|
|
In the viewer, the region's UUID is acquired very late and isn't generally
used as the canonical region identifier. The U64 region hash is a better
and more consistently used identifier so I'm moving over to using that as
the region key. Don't have a proper reserved invalid region hash which is
unfortunate, but then, so much is.
|
|
timestamps.
The min/max response time calculations needed to be sensitive to the response
counts to know if their was actual data. Failure to do so introduced a
gratuitous min/max test against zero values which tended to corrupt the
mins. Unit tests added to test for this condition. Finished conversion
of times to floating point seconds. Removed two logging events used to
debug the cross-thread messaging. Looks like a code completion point.
|
|
After discussions, renamed 'QAModeMetricsSubmetrics' to 'QAModeMetrics'
and confirmed that LLCachedControl<> is the way to go. Moved the
resulting flag out of LLViewerAssetStats (where it didn't belong)
and it lives in both LLAppViewer and LLTextureFetch where it does
belong.
|
|
Detect QAMode (and new QAModeMetricsSubmode) settings which
enable logging of metrics report locally and a faster cycle
time to reduce test waiting. Do this only in the main thread
and propagate the result via collector constructors (will
likely move that out and put it in llappviewer/lltexturefetch
which is more correct scope). Managed to deadlock myself with
a recursive mutex (sheesh).
|
|
Removed declared but undefined interfaces from LLTextureFetch family.
Had inserted the cross-thread command processor into some of
LLTextureFetchWorker's processing which was unnatural and
probably wrong. Moved it to LLTextureFetch which turned out to
be far, far more natural. Better documentation on the asLLSD()
format. Refined LLSD stats merger logic and enhanced unit
tests to verify same.
|
|
Code complete with the intelligence to merge counts, mins,
maxes and means with reasonable defences. Added QAMode
controls to the viewer so that we can QA this more quickly
by reducing the timing interval and sending the metrics
body to local logging as well as to the caps service.
|
|
Asset fetch requests wrapped to allow for measurements.
Asset fetch enqueues, dequeues and completion times recorded
to asset stats collector. Texture fetch operations (http
and udp) recorded to asset stats collector. Stats collector
time vallue switched from F32 to U64 which is the more common
type in the viewer. Cross-thread mechanism introduced to
communicate region changes and generate global statistics
messages. Facility to deliver metrics via Capabilities
sketched in but needs additional work. Documentation and
diagrams added.
|
|
|