summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerassetstats.cpp
AgeCommit message (Collapse)Author
2010-11-29ESC-154 ESC-156 Now using region hash rather than region uuid as identifier.Monty Brandenberg
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.
2010-11-24ESC-154 ESC-155 Viewer metrics fixes for min/max merged values, floating ↵Monty Brandenberg
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.
2010-11-23ESC-154 ESC-156 Integrating metrics collector into viewer.Monty Brandenberg
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.
2010-11-23ESC-154 ESC-156 Data collection and control for viewer metricsMonty Brandenberg
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).
2010-11-22ESC-154 ESC-156 Metrics integration into viewer's threadsMonty Brandenberg
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.
2010-11-19ESC-155 Multi-threaded umbrella collector for stats aggregationMonty Brandenberg
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.
2010-11-18ESC-154 ESC-155 ESC-156Monty Brandenberg
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.
2010-11-10Need precompiled header include for windows.Monty Brandenberg
2010-11-10ESC-110 ESC-111Monty Brandenberg
Cleanup passes on the two threaded collectors with better comments and more complete unit tests.
2010-10-29ESC-111 Texture interfacesMonty Brandenberg
Mainly expand the categories to include protocol and location/temp nature of texture asset.
2010-10-28ESC-109 Write single-thread asset stats collector for wearable.Monty Brandenberg
Code-complete with unit tests and foundation for other collectors. Interestingly, sim and viewer have two different ideas about asset type enumeration (compatible, one's just longer). Both are missing mesh though that's to be expected.