Age | Commit message (Collapse) | Author |
|
|
|
|
|
added a Mesh status line to the texture fetch console. Mesh is
often in competition with textures and so the mesh information
seems appropriate there. Do get a nice feel for progress and
you definitely see when the throttles kick in.
|
|
|
|
|
|
Most of the merge was clean, a couple conflicts.
Brought over a couple patches manually for llpolymesh.
|
|
|
|
alignment issue in llAppearance.
|
|
This was yet another refresh from v-d because of significant changes
to lltexturefetch that would not have been resolvable by casual
application of any merge tool. There are still a few questions
outstanding but this is the initial, optimistic merge.
|
|
|
|
|
|
LLViewerTexLayerSetBuffer
|
|
|
|
|
|
|
|
|
|
|
|
Big delta was converting the new texture debugger support code
to the new library. Viewer manifest should probably get an eyeball
before release.
|
|
|
|
|
|
log on exit.
With much trial-and-error, cleaned up the banner on the texture console and made everything
mostly fit. Added global cache read, cache write and resource wait count events to the
console display to show if cache is working. On clean exit, emit a log line to report
stats to log file (intended for automated tests, maybe):
LLTextureFetch::endThread: CacheReads: 2618, CacheWrites: 117, ResWaits: 0, TotalHTTPReq: 117
|
|
LLProxy support, HttpOptions starting to work, HTTP resource waiting fixed.
Non-LLThread-based threads need to do some registration or LLMutex locks taken out in these
threads will not work as expected (SH-3154). We'll get a better solution later, this fixes
some things for now. Tracing of operations now supported. Global and per-request (via
HttpOptions) tracing levels of [0..3]. The 2 and 3 levels use libcurl's VERBOSE mode
combined with CURLOPT_DEBUGFUNCTION to stream high levels of detail into the log. *Very*
laggy but useful. Simple GET request supported (no Range: header). Really just a
degenrate case of a ranged get but supplied an API anyway. Global option to use the
LLProxy interface to setup CURL handles for either socks5 or http proxy usage. This
isn't really the most encapsulated way to do this but a better solution will have to
come later. The wantHeaders and tracing options are now supported in HttpOptions giving
per-request controls. Big refactoring of the HTTP resource waiter in lltexturefetch.
What I was doing before wasn't correct. Instead, I'm implementing the resource wait
after the Semaphore model (though not using system semaphores). So instead of having
a sequence like: SEND_HTTP_REQ -> WAIT_HTTP_RESOURCE -> SEND_HTTP_REQ, we now
do WAIT_HTTP_RESOURCE -> WAIT_HTTP_RESOURCE2 (actual wait) -> SEND_HTTP_REQ. Works
well but the prioritized filling of the corehttp library needs some performance
work later.
|
|
Went through all the code and tried to document lock and thread usage
in the module. There's a huge comment block introducing all of this
at the beginning and I believe it's correct (though not quite complete).
Keep it updated, people. Added a new state, WAIT_HTTP_RESOURCE, that's
sort of a side-state of SEND_HTTP_REQ. If we hit a high-water mark
for HTTP requests, the extra are shunted to the new state once. Once
levels fall to a low-water mark, we run through a wait list of UUIDs,
sort the valid ones by priority and release them for service. This
keeps the HTTP layer busy while leaving the active queue shallow enough
that requests can still be re-prioritzed cheaply. Priority model
changed. The new state uses the PRIORITY_LOW mask, the old users
of _LOW are now at PRIORITY_NORMAL and sleepers woken up after an
external event are kicked off at PRIORITY_HIGH. This combination
along with the new state should avoid priority inversion and keep
things running without resorting to an infinite pipeline. New
state displays as "HTW" with green text in the texture console.
Request cancelation and worker run-down should now be more
correct but this edge case may need more attention.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
accounting for how much memory is taken up by LLRenderTarget, fix crash on login in bindGLIndices (work around driver bug that doesn't respect VAO state WRT to index buffers), remove some unused render targets, remove some unused shaders, make it possible to run a fullscreen session
|
|
|
|
changed ordering of template loading relative to constructor setting of params
moved a lot of constructor-set params to template files
reviewed by Leslie
|
|
|
|
|
|
|
|
between viewer 2.x and 1.23.
|
|
|
|
EXT-8445 Reduce baked texture timeout fro 120sec to 60sec default
Also did some minor infrastructure cleanup, added code comments, etc. There is now separate logic for determining how to handle update (versus upload) requests.
Also made a trivial change to llvoavatar to properly encapsulate mAppearanceAnimating.
Also reduced the baked texture timeout to 60s (in settings.xml)
|
|
More informative logic added in to track when an upload is actually happening.
Did some minor reformatting.
|
|
Added color, emphasis, and more information to texture view.
|
|
EXT-7504 WIP Force decloud after timeout using lower res textures
Better formatting for baked texture information.
Also added exponential timeout for sending low res baked textures.
|
|
Added more information into the texture debug view.
|
|
Code cleanup.
Some minor changes in logic for when low res texture is used.
Added more metrics to notifications and texture debug output.
|
|
EXT-7526 FIXED Add baked texture information to texture view
First attempt at low res textures after timeout.
Added debug setting to control whether low res texture timeout is used.
Added baked texture load information to texture view debug display.
Trivial name changes to some variables.
|
|
|
|
reviewed by Palmer
|
|
view " << mName << " during UI draw() phase" caused in lltextureview.cpp (from the texture console).
|
|
This fix should be able to improve the speed of loading texturs from cache noticeably (30% or more). More fix to come.
|
|
* Important fix in lltexturefetch.cpp where a 'partial' resonse was incorrectly setting mHaveAllData.
|