An idea to somewhat reduce lag in crowded areas
|
|
Zeenith Paulse
Registered User
Join date: 18 Feb 2008
Posts: 97
|
06-16-2008 09:07
Hey everyone. Haven't been here in a while because of computer not being usable.
Ok, so it's obvious that because some areas have too many prims, there will be lag regardless of the graphics card due to the network streaming everything.
So here's my idea.... What if for areas with extremly high prim counts, users are given the option to download the area onto their hard drive. This way, the game can start loading the area off of the drive incase lag accurs This would make it easier on you network when playing the game.
Now I'm aware that sometimes things get updated and some times people are actually moving things around. But the world on the hard drive can be synced wtih the online version so that the offline one will update in real time as well... I know this may be harder done than said, but it's just a thought.
This may not be fore all areas, but may be only certain ones if the owner allows it. Maybe the user will have to pay a price. The user can't edit the world or anything, but it'll just make it easier on the computer and the net because nothing, or not as nearly as much will have to be streamed, therefore increasing framerate.
Well, taht's my idea. Don't tare it down too much.
_____________________
My second life photos. http://s229.photobucket.com/albums/ee136/Dreamcube017/Second%20Life/?action=view¤t=78111448.pbw Please comment. 
|
|
Ghosty Kips
Elora's Llama
Join date: 2 May 2008
Posts: 2,386
|
06-16-2008 09:15
From: Zeenith Paulse So here's my idea.... What if for areas with extremly high prim counts, users are given the option to download the area onto their hard drive. This way, the game can start loading the area off of the drive incase lag accurs This would make it easier on you network when playing the game. I was just thinking about this the other day, as I'm an ex-Ultima Online player, and that's very close to how it works. The actual landscape (along with all items, but that's not the point here) is already on the hard drive and doesn't need to be streamed. When there's a change to the scenery, the player's topography is patched so things are the same for everyone. There might have to be some limitations, such as changes to topography not being allowed for a given amount of time before this sort of download could be allowed - else players would be going through it all the time. Its the basis for a good idea, though.
_____________________
-- Why aren't you doing something more useful, like playing WoW?
|
|
Zeenith Paulse
Registered User
Join date: 18 Feb 2008
Posts: 97
|
06-16-2008 09:27
Yeah, I know I've seen people bulding things rigth there on the spot. I mean, you can turn the "hard drive stream" or "stream from disk" off and just play from the net like normal, but yeah, there'd have to be some limits on how ofter the owner could move things around... the only places that probably couldn't stream from disk were sandboxes. But I mean like... there's this one club I go too a lot that looks really cool, but there's so much stuff in the area and in the sim in general that it just makes ai a bit laggy. If I could have the game pull the sim off my HDD instead, I'm sure that'd fix it.
_____________________
My second life photos. http://s229.photobucket.com/albums/ee136/Dreamcube017/Second%20Life/?action=view¤t=78111448.pbw Please comment. 
|
|
Imnotgoing Sideways
Can't outlaw cute! =^-^=
Join date: 17 Nov 2007
Posts: 4,694
|
06-16-2008 09:35
It already exists... It's called the cache.
Most all of the unchanging data about the region you're in is stored in the cache in effort to save bandwith both server side and client side. While cache management is deeply flawed, it is functional and the majority of bandwith spent in a region that is cached is completely dependent on physics and downloading un-cached textures. (^_^)
A larger cache will arguably reduce network lag for someone who stays in a region for a long time, but can lead to local instability as the file size does become difficult for the client to manage without lagging a bit or corrupting data. (^_^)
Oop... My inner-geek seeps out again... (@_@) ...... (^_^)y
|
|
Kidd Krasner
Registered User
Join date: 1 Jan 2007
Posts: 1,938
|
06-16-2008 09:39
The cache system already does this to an extent, because it caches textures. I don't think it caches objects in the environment, but usually the textures are the bulk of the information.
It's not clear whether caching more types of information will help. My gut feel is that the cache itself needs to be sped up first.
|
|
Aree Lulibub
Registered User
Join date: 21 Jan 2007
Posts: 198
|
06-16-2008 09:40
It's my understanding that if the builder of a prim crowded sim would make as many of the prims phantom that it would greatly reduce lag because the server wouldn't have to make physics calculations and such. I'm not techy but this is what I've heard. 
|
|
Imnotgoing Sideways
Can't outlaw cute! =^-^=
Join date: 17 Nov 2007
Posts: 4,694
|
06-16-2008 10:02
From: Kidd Krasner The cache system already does this to an extent, because it caches textures. I don't think it caches objects in the environment, but usually the textures are the bulk of the information.
It's not clear whether caching more types of information will help. My gut feel is that the cache itself needs to be sped up first. Physics information "objects" kinda has to stay server side because it's the server that calculates the physics to be sent to all clients at once. If objects were calculated client side, that calculation would still have to be pushed up and piped through the server to all the other clients within view. That would make for increased bandwith usage, not decreased. (^_^)y
|
|
Qie Niangao
Coin-operated
Join date: 24 May 2006
Posts: 7,138
|
06-16-2008 16:48
I agree that caching is the solution here, and speeding up the existing cache could be a big win, as Kidd says. It could also be that a caching algorithm with user adjustments could be useful to many folks... something like: "For as long as I'm in this region, the stuff I see should be retained preferentially to other stuff" so that the next time you visit, more stuff might load faster. Indeed, if the cache were allowed to grow very large, with managed "stages" on disk and in RAM, it could be helpful to be able to "pre-heat" the RAM cache by pulling in a Region-specific block of disk-based cache.
_____________________
Archived for Your Protection
|
|
Viktoria Dovgal
…
Join date: 29 Jul 2007
Posts: 3,593
|
06-16-2008 16:55
There is a lot of talk about the cache going on the the SL OS community right now. Some f the notes are up at https://wiki.secondlife.com/wiki/SLDEV_Discussion_-_Texture_Cache_Plan_of_AttackThe big scary expensive part of rendering stuff is still the textures, particularly that it takes a lot of horsepower to unsquish those JPEG 2000 images (whether grabbed from cache or the wire).
|
|
Saucey Barbecue
I Nommed yer Girlfriend
Join date: 10 May 2006
Posts: 254
|
06-16-2008 17:00
Why then is it, that if I relog into an area I've JUST left, I hafta watch as textures and sclupties hafta slowly re-res? I have my cache set IIRC set to 'pproximent'ly 3/4 of the scale.
As far as I can tell.... The cache exists ONLY to cache PROBLEMS, and must be cleared in order to correct 'em!
_____________________
From: Troy Vogel Working in SL as builder is like dating someone with an erectile dysfunction... It's a persistent problem, it will probably never go away, yet we keep on hoping, it's never their fault and we have to always show understanding, be supportive....
|
|
Viktoria Dovgal
…
Join date: 29 Jul 2007
Posts: 3,593
|
06-16-2008 17:06
From: Saucey Barbecue Why then is it, that if I relog into an area I've JUST left, I hafta watch as textures and sclupties hafta slowly re-res? I have my cache set IIRC set to 'pproximent'ly 3/4 of the scale. You have two things going on there. First is that the stuff in the cache is still compressed, so you have to go through that expensive decompression all over again. A second problem that isn't so apparent is that textures can look like they're all there when really they aren't quite finished. That's because they're using progressive JPEG. If the cache is missing even a little tiny bit off the end, currently it starts over.
|
|
Amity Slade
Registered User
Join date: 14 Feb 2007
Posts: 2,183
|
06-16-2008 17:07
I don't know absolutely, but I think in crowded places, more of your lag is coming from the avatars who go in and out, rather than the place itself.
Every avatar is bringing in huge texture files (skin and clothes), prim attachements (hair and jewelry), and many animation files (from AOs or dances). When it comes to the prim attachments, keep in mind that avatars have no limit to the amount of prims they can bring to an area, the way that land is limited to the amount of prims that can be rezzed on it.
Every time an avatar enters your area, or least within rendering range of your avatar, all of their textures and prims and animations are going to start loading on your computer.
But probably contributing more to your lag problems in crowded areas is not the time it takes to transfer others' textures and prims and animation to your computer, but the fact that they all get stuck in your cache. As avatars come, they dump a lot of things in your cache, and as avatars go, all that stuff remains in your cache. This goes on until eventually your cache becomes so bloated that it saps your computer's resources.
It's an interesting idea to be able to let a user choose to keep certain resources from often-visited areas into a permanent cache, and it would probably improve performance in those areas to a certain extent. But among all the problems that contribute to lag, it may not be a huge help.
|
|
Imnotgoing Sideways
Can't outlaw cute! =^-^=
Join date: 17 Nov 2007
Posts: 4,694
|
06-16-2008 17:08
From: Saucey Barbecue Why then is it, that if I relog into an area I've JUST left, I hafta watch as textures and sclupties hafta slowly re-res? I have my cache set IIRC set to 'pproximent'ly 3/4 of the scale... Simply because too many people put too many 1024x1024 textures on too many faces of too many prims. By the time you set your cache high enough to store all that crud it's already unmanageable by the client. (=_=)y
|
|
Kitty Barnett
Registered User
Join date: 10 May 2006
Posts: 5,586
|
06-16-2008 17:09
Does rezzing really take that long for everyone?  Unless the sim is lagging or the grid is just acting up I'll have enough rezzed to see most everything within 10 seconds and be able to start walking (with the minimap for avies that haven't rezzed in yet) or camming, after 30 seconds everything's rezzed except for smaller prims, after a minute everything is really about fully rezzed. Other avies are an exception and only usually seem to start rezzing in for me after all the prims and most of the textures that take up the most screen pixels. If I'll be somewhere for an hour or even 30 minutes then waiting 1-2 minutes for a whole rez doesn't really seem like much of a problem. It's the performance *after* rezzing that would seem the most important  . (It's not really related to puter at all either, things don't rez any faster/slower than they did on my old puter)
|
|
Amy Stork
Way past use by date
Join date: 26 Feb 2006
Posts: 646
|
06-17-2008 01:18
I tend to spend most of my time in one sim so rezzing is generally fast - even with draw set at 256 and all the sliders up full whack. As I am currently on a 3g widget rather than broadband I woul have expected there to be some delay in loading. The AV's that visit do sometimes take a while to emerge from their cloud of steam though so this is likely the hair and skins texturing When I leave the sim to visit others It's definitely alot slower than it used to be on broadband which points at the cache issues scenario described. My solution to this is never to leave my sim unless absolutely essesntial 
|
|
Oryx Tempel
Registered User
Join date: 8 Nov 2006
Posts: 7,663
|
06-17-2008 08:56
I think probably a lot of this issue is bandwidth. If I do a speed test on my internet connection, of course it's lightning fast to my local server, but if I test down to San Francisco or Dallas (isn't it Dallas?) where the LL servers are, I get a big drop in download speeds, by about half of what is available locally, with Dallas being lower than San Fran. If I TP to a sim that lives on a Dallas server, it's going to be slower to send me info than a comparable server in SF. Rezzing does seem to have slowed in general over the last two weeks for me, though.
|
|
Kokoro Fasching
Pixie Dust and Sugar
Join date: 23 Dec 2005
Posts: 949
|
06-17-2008 09:23
If you plan to stay in one area for a length of time, something that helps is going into the debug settings, and increasing your cache size to 10 gb or more.
As Immy said though, once you leave that area, it is best to clear cache/relog to empty it out - I can usually go about 4 days at a 15 gb cache before I start to get items that won't texture properly.
Also, very very important to make sure you defrag your system nightly with a cache this large. When the cache gets large and fragmented, you will suffer from the turn/pause/crash bug more often.
|
|
Vampaerus Wysznik
bad lurker
Join date: 12 Apr 2008
Posts: 1,011
|
06-18-2008 01:01
One way of bringing the existing cache closer to the OPs request would be adding a TTL ("time to live"  parameter to cache entries. The short and dirty would be to give all av-attachment-schtuff very short ttl's and any ground-based prims much higher ttl's. Down the road, it would be really cool if the land/prim owner could set the ttl parameter thus making "semi-permanent" structures with a very high ttl. Another issue which has puzzled me alot, for a program which requires 1GB of RAM a 1.5GB max value for the hdd cache seems quite pointless. I find it difficult to imagine blowing thru 1.5GB worth of textures, but with the heterogeneous content creation, and if 1024^2 textures are as common as people insinuate...it could be done. Perhaps the slider should have a higher max setting. Folks with quad cores and sata2 raids could easily use it (tho not I, hence it's a user param).
_____________________
Small scale web hosting for your SL or RL. Payable monthly in L$.
|