[sldev] Memory usage observations - somewhere to focus

Tateru Nino tateru.nino at gmail.com
Thu Apr 12 23:27:26 PDT 2007


Okay, so my PC is a bit on the sick side. The last couple or five days 
it's been inexplicably slow and clunky. Of course as it slows down and 
can't keep up, the odds of losing a circuit increase dramatically. Take 
a snapshot? Lose a circuit. Slow teleport? Lose a circuit - there's a 
ferocious amount of disk activity happens during the 15-60 second 
teleportation sequence (is that the texture memory cache clearing out?).

Anyway, in the event of a lost circuit or crash from the shudderingly 
slow performance, it can take an easy five minutes to log out the viewer.
Then I discovered something interesting.

Starting the viewer up took a really long time, and after logging back 
in, performance was no better. The whole machine was suffering with high 
levels of paging activity. Numerous times I lost my circuit again. Rinse 
and repeat.

And then I decided to spend a few minutes doing something else - so I 
closed the viewer I had laboriously started, without logging in.
Then I changed my mind and started the viewer up again. Fast! Logged in! 
Fast response, better frame rates, no thrashing on the pagefile.

Several experiments later:
If you lose your circuit or crash, performance will be terrible the next 
time you run the viewer. Instead, start the viewer, and quit it without 
logging in. Then start the viewer again and log in normally. Problem solved.

Theory:
The cache-consistency tests are allocating a pile of memory that is 
unreleased (and possibly quite fragmented) until the runtime terminates. 
When the viewer starts up with a 'clean' cache (clean, not cleared), 
that impediment is removed.

How to break your circuit (in Windows) without unplugging your network 
cable for easy reproduction:
Pull down the File menu. Select UPLOAD. The file selector pops up. 
Ignore it for 60 seconds. Then cancel or select anything and OK. Your 
circuit should now be broken. Usually 20 seconds is enough, but some 
people require a little more time.

Thoughts, anyone? Could cache-consistency checks be migrated into a 
one-shot launcher?

-- 
Tateru Nino
http://dwellonit.blogspot.com/



More information about the SLDev mailing list