CmdrCupcake (Sovereign Engineer) has been looking at texture thrashing. He found what is eating texture memory and leads to textures cycling through rendering to full load sharp images then going blurry and apparently reloading and getting sharp again only to repeat.
While it was not immediately obvious the addition of CHUI and its addition of avatar icons to the chat discussions seems to be the trigger for the current texture thrashing. These images are loaded into the viewer as UI textures. There are a ton of these textures used for chat, group chat, and friends lists. These chat textures consume memory.
Since these are considered UI textures the viewer never releases the memory and marks them as No Delete. The viewer holds them in video memory forever, well, for the duration of the login secession.
CmdrCupcake, in testing, found this could burn up 1gb of video ram once a number of group chats were opened. The memory is only released when the viewer is closed.
Because of the viewers limit on video memory use the amount of video one actually has does little, if anything, to reduce the problem. Both 3rd party devs and the Lab have tried changing the video memory limit but that creates other problems and thus is not a workable solution.
Using compact chat does not reduce the video memory load. Even using hidden chat icons will consume memory. The viewer allocates space for the icons whether they are shown or not.
Large friends list can also cause the UI memory to be overloaded with memory allocated for the the icons. So, some people with large friends lists may see texture thrashing as soon as they log into SL and without opening any chat secessions. For others thrashing may not show up for some time, my case. As more chat groups are opened it is more likely thrashing will be triggered.
This is a simple explanation and incomplete. So, while this is the root of texture thrashing now, there are other ways to overload texture memory and initiate texture thrashing.
So, it would seem the only solution for a user work-around would be to reduce friends lists (not at all desirable) and keep group chats closed to avoid loading more icons as new people join chat. Also, not desirable. Restarting the viewer will reset the memory and probably reduce thrashing for a time.
Now that the problem is known, developers will be looking to build a solution. The solution is going to be in how these chat icons are handled memory-wise. Adding CHUI (Chat Hub User Interface) was no small change. So, it may be some time before we see a solution worked out… or not. It may be easy and quick. But, the changes apparently need to be inside some rather complex sections of code. I expect that to take some time, but maybe not. So, we’ll have to wait and see how it goes.