summaryrefslogtreecommitdiff
path: root/indra/newview/lltexturefetch.h
AgeCommit message (Collapse)Author
2010-12-16ESC-237 No static init of LLAtomics and move TFRequest out of unnamed namespace.Monty Brandenberg
Linux startup crash appears to be due to static/global C++ init of LLAtomic types. The initializer with explicit value makes some runtime calls and it looks like these assume, at least on Linux, that apr_initialize() has been called. So move the static POST count to a member and provide accessors and increment/decrement. Command queue was built on a pointer to a class in anonymous namespace and that's not quite valid. Made it a nested class (really a nested forward declaration) while keeping the derived classes in anonymous.
2010-12-10Decided to refactor a bit. Was using LLSD as an internal dataMonty Brandenberg
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.
2010-12-02ESC-211 Metrics data sink - fix delivery by viewerMonty Brandenberg
The TextureFetch thread was still stalling out due to a different path that determines whether there is work or not in the thread (uses getPending()) and that had to be harmonized with the changes to runCondition(). I'm not happy with this solution but a refactor of the LLThread tree isn't in the cards right now.
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-156 Metrics integration across threadsMonty Brandenberg
Using unpause() method in derived class rather than wake() in furthest base class solved the stalling problem. I still think too many levels of the LLTextureFetch hierarchy are keeping thread state, however. The LLViewerRegion instance an agent enters doesn't necessarily have its region_id yet, that only comes after the handshake, if any. So add a few more metrics insertion points to propagate region into metrics. Finally, try to launch a final metrics report when a quit is initiated.
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-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-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-08-24Backed out changeset c3d41f18ce2bTofu Linden
back-out the back-out for this branch. yay.
2010-08-24Backed out changeset a62bf7c0af21Tofu Linden
Backing out this merge that I pushed (prematurely) to the wrong place.
2010-08-24merge heads. whew.Tofu Linden
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-08-11fix for EXT-7399: 2.0.2 with http textures loads textures slower than 1.23.5 andXiaohong Bao
EXT-7397: decoding textures get stuck in REQ status
2010-08-04more fix for EXT-7397: decoding textures get stuck in REQ statusXiaohong Bao
2010-08-03fix for EXT-7399: 2.0.2 with http textures loads textures slower than 1.23.5Xiaohong Bao
and EXT-7397: decoding textures get stuck in REQ status
2010-05-04EXT-7080 Partial FIXED: Outfit texture updates are not transmitted (in ↵Xiaohong Bao
either direction) when HTTP Textures is enabled Fixed baked textures downloading. Uploading will be fixed on the server side.
2010-03-04fix for EXT-5683: viewer crashes at llcommon/llworkerthread.cpp(323): ERROR: ↵Xiaohong Bao
LLWorkerClass::checkWork: ASSERT(workreq).
2010-02-08partial fix for EXT-4352. fixed mutex deadlocks and turned on the ↵Xiaohong Bao
multi-threaded texture fetching.
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao
2009-07-10merge QAR-1579: texture-cleanup-1.Xiaohong Bao
2009-06-21merge -r 122421-124917 viewer-2.0.0-2 -> viewer-2.0.0-3Steven Bennetts
ignore-dead-branch
2009-01-08Result of svn merge -r107256:107258 ↵Aaron Brashears
svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165
2008-06-26QAR-628 merge string-cleanup-5 -r 90476:90508 -> releaseSteven Bennetts
dataserver-is-deprecated
2008-04-01merge release@83343 skinning-1-merge@83714 -> releaseSteven Bennetts
QAR-424
2007-10-04Result of svn merge -r71162:71205 ↵Aaron Brashears
svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code.
2007-03-21svn merge -r 59178:59364 ↵Josh Bell
svn+ssh://svn.lindenlab.com/svn/linden/branches/maintenance --> release
2007-03-09svn merge -r 58902:58986 ↵Josh Bell
svn+ssh://svn.lindenlab.com/svn/linden/branches/maintenance --> release
2007-03-02merge release@58699 beta-1-14-0@58707 -> releaseSteven Bennetts
2007-01-02Print done when done.James Cook