[Opensim-dev] Profiling complex scenes

Lake, Dan dan.lake at intel.com
Wed Mar 18 17:16:08 UTC 2009


Justin,
  Thanks for taking a look at the wiki. The timer patch should be complete, as long as there is no need for multiple timers per (localID,objectID) pair. I could enter it into Mantis if it looks ready to go. The other patch may be similar to existing code which is either commented out or not working properly. There are comments in various places in SceneGraph and related code to the effect of "A dictionary would be nice here". The patch was meant to be an example of what may be possible, but not complete or necessarily the most efficient placement of the dictionary. 

~Dan

Dan lake
Network Software Engineer 
Network Technology Lab
Corporate Technology Group

503.712.8318
dan.lake at intel.com


-----Original Message-----
From: opensim-dev-bounces at lists.berlios.de [mailto:opensim-dev-bounces at lists.berlios.de] On Behalf Of Justin Clark-Casey
Sent: Wednesday, March 18, 2009 8:29 AM
To: opensim-dev at lists.berlios.de
Subject: Re: [Opensim-dev] Profiling complex scenes

Lake, Dan wrote:
> I work at Intel for Mic Bowman. He mentioned a while back that we are 
> developing some workloads for understanding the scalability bottlenecks 
> in OpenSim. I recently created a test which generates 2000 scripted 
> objects which rotate and change color at random intervals. The workload 
> consumed multiple CPU cores with only a single client viewer connected 
> and the frame rate dropped to absolute zero with 10 clients connected. I 
> was then able to reduce the CPU utilization by >80% with a few added 
> lines of code in SceneGraph.cs and Timer.cs. If you are interested in a 
> complete analysis of this workload, please visit the OpenSim profiling 
> wiki page at 
> http://sciencesim.com/wiki/doku.php/opensim/performance_profiling. I 
> will continue to post interesting profiling results from our workloads 
> and ideas about scaling OpenSim based on those results. Your comments or 
> feedback are appreciated.

Nice work, Dan, very useful stuff.

Is the scenegraph_dictionary.patch code not already present in EntityManager (albeit possibly unused, I've not looked 
closely)?  If not, would it be better incorporated into there and do you plan on extending the patch into a complete 
implementation (e.g. localID -> SOP mapping removal as well)?

timer_dictionary.patch on the other hand looks like a complete implementation.  Is this a patch that could usefully be 
applied in its current state?

> 
>                                                                                                                                                                                            
> 
> 
> *Dan lake*
> 
> Network Software Engineer
> 
> Network Technology Lab
> 
> Corporate Technology Group
> 
> ( 503.712.8318
> 
> * dan.lake at intel.com
> 
>  
> 
>  
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev


-- 
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-dev mailing list
Opensim-dev at lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-dev



More information about the Opensim-dev mailing list