[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