[Opensim-dev] Profiler installed on osgrid plazas server and profiler dump now available

Stefan Andersson stefan at tribalmedia.se
Wed Apr 9 16:15:28 UTC 2008


Justin,
 
overall, I think we might have a problem with our approach of 'dumping' data on the outgoing queues.
 
With 'dumping', I mean, for example, responding to an asset request by creating and placing all the assets packets on the outgoing queue in one operation.
 
If the asset operation is being aborted (for an array of perfectly reasonable reasons, AFAIK it's actually part of the protocol that the viewer can cancel a texture download, if it's no longer 'interesting', or if it wants another level of detail) the packets are still there, kind of orphaned, and definitively wasting bandwith.
 
With 'sweeping' I mean making timer-paced sweeps to look for updates, then 'dump' them directly on the outgoing queues.
 
If a queue becomes throttled, a second sweep will place another update on the queue, even if there's actually already one waiting to get thru. Again, wasting bandwith.
 
I believe we need to move away from 'sweeping' and 'dumping', towards something more asynchronous and handshaking.
 
I was toying with the idea of registering callbacks for acked/nacked packets; that would actually make it possible to choose to remove the packet from the queue or  re-create the packet with new information.
 
Also, A texture transfer could send like 10 initial packets, then wait for ack/nack to send new ones.
 
/Stefan



> Date: Fri, 22 Feb 2008 22:00:00 +0000> From: jjustincc at googlemail.com> To: opensim-dev at lists.berlios.de> Subject: [Opensim-dev] Profiler installed on osgrid plazas server and profiler dump now available> > This afternoon (with a bit of haxoring) I installed the mono heap-shot > profiler on the OSGrid plazas server in pursuit of current memory > leaks. heap-shot will take a dump while in operation when it receives a > signal. More details on it can be found here.> > http://www.mono-project.com/HeapShot> > Now that it's installed it's very easy to run, if anyone with access to > the plazas wants to take further dumps.> > I started the profile on Wright Plaza with just me on it. > Interestingly, that was enough to cause memory to continuously grow. > This was associated with continuous requests for the same assets (which > do not exist) on the console. This in itself, though bad, should not be > enough to cause the memory leak. I took several dumps, the smallest of > which (along with the log file) can be downloaded from> > http://opensimulator.org/dump/OpenSim-at-595mb-one-avatar-with-scripts-wright.zip> > On a very preliminary analysis of the dump, it looked like the major > problem is data building up in the outgoing texture packet queue. This > is why I created extra statistical information which prints out the > number of packets in the different queue types for each agent (which can > be seen by typing 'show stats' on the console). Hopefully this should > reveal whether this is really where the issue is (I'm not yet convinced > I'm interpreting the dump information correctly).> > I very probably won't have any time now to work on this until next week > - I thought I would make the data available for general interest and in > case anyone wanted to take a shot at it.> > --> justincc> _______________________________________________> Opensim-dev mailing list> Opensim-dev at lists.berlios.de> https://lists.berlios.de/mailman/listinfo/opensim-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080409/34c56349/attachment-0001.html>


More information about the Opensim-dev mailing list