<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Adam Frisby &#187; wright plaza</title>
	<atom:link href="http://www.adamfrisby.com/blog/tag/wright-plaza/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.adamfrisby.com/blog</link>
	<description>ZOMGWTFHAI</description>
	<lastBuildDate>Sat, 26 Dec 2009 07:02:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>85.</title>
		<link>http://www.adamfrisby.com/blog/2009/10/85-users/</link>
		<comments>http://www.adamfrisby.com/blog/2009/10/85-users/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 23:39:26 +0000</pubDate>
		<dc:creator>Adam Frisby</dc:creator>
				<category><![CDATA[OSGrid]]></category>
		<category><![CDATA[OpenSim]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[load test]]></category>
		<category><![CDATA[osgrid]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[wright plaza]]></category>

		<guid isPermaLink="false">http://www.adamfrisby.com/blog/?p=478</guid>
		<description><![CDATA[OK, so we didn&#8217;t quite get to 100 as originally planned &#8211; but this time it wasn&#8217;t OpenSim&#8217;s fault. Yes, by the end you could tell the sim was straining &#8211; and at about 65 avatars, the physics engine finally choked on trying to solve a 15 avatar capsule interpenetration (or at least, my interpretation [...]]]></description>
			<content:encoded><![CDATA[<p>OK, so we didn&#8217;t quite get to 100 as originally planned &#8211; but this time it wasn&#8217;t OpenSim&#8217;s fault. Yes, by the end you could tell the sim <em>was</em> straining &#8211; and at about 65 avatars, the physics engine finally choked on trying to solve a 15 avatar capsule interpenetration (or at least, my interpretation of the bug &#8211; analysis pending); but it kept on accepting logins and people kept arriving &#8211; and very quickly we hit 70, &#8230; 75, &#8230; 80 then peaked at <strong>85</strong> before running out of people, slipping back to 79 and manually shutting the sim down to grab the all important debug dump.</p>
<p><a href="http://www.adamfrisby.com/blog/wp-content/uploads/loadtest2.jpg"><img class="alignnone size-thumbnail wp-image-480" title="85 Avatars in Wright Plaza" src="http://www.adamfrisby.com/blog/wp-content/uploads/loadtest2-680x251.jpg" alt="85 Avatars in Wright Plaza" width="680" height="251" /></a></p>
<p>It&#8217;s important to note here &#8211; these were real clients, using SL-derived viewers. By comparison libsl is a lot friendlier on the packet engine than the full viewer, so bots tend to be a less effective test. (Plus users introduce randomness that bots cant quite emulate). Wright Plaza with 85 avatars and their attachments weighs in at a healthy 15,400 prims &#8211; so there was no shortage of texture of prim data to be sent to each client &#8211; it&#8217;s actually probably one of the nastiest sims to do load tests in &#8211; which makes it great for this. Furthermore the hardware it is located on isn&#8217;t exactly top of the line, or even middle-of-the-line.</p>
<p>The short news is &#8211; we&#8217;ve made some really impressive progress in the the last week. <a href="http://www.metaverseink.com/blog/?p=25">Earlier we got up to 50</a> &#8211; which was tweaked, tailored and adjusted to get us to where 100 or even 150 isn&#8217;t really that out of the question anymore. There&#8217;s three big causes for this &#8211; first, abandoning OpenJpeg for decoding J2K textures made some <em>very noticable</em> improvements to stability (it&#8217;s in progress to abandon it for Encoding too); this means we&#8217;re not crashing on the way up &#8211; which means we can hit higher concurrencies more reliably. Second &#8211; John Hurliman from Intel rewrote our throttle routines and some low-level packeting code, which delivered a big boost to packet performance. Third &#8211; multiple efforts to reduce memory use in key places, has at least halved operating memory requirements &#8211; at 85 concurrent, memory was peaking at a mere 1.7gb (~20mb/user).</p>
<p>A result of these improvements has been memory IO is no longer such a major bottleneck &#8211; we&#8217;re actually beggining to hit the point where CPU usage is nearly becoming a more important bottleneck (we were hitting 90% CPU at peak &#8212; although the physics interpenetration mentioned above might be distorting this, since it could lead to run-away CPU use) &#8211; which is a refreshing change, since it is a lot easier to optimise around, and the tools for CPU use profiling are a lot better than those for memory IO profiling &#8211; and produce a lot more meaningful information.</p>
<p>We&#8217;d like to continue these load tests &#8211; the information the devs have gotten in the last week has been absolutely invaluable. Having a big pool of testers able to jump in on a moments notice has resulted in getting performance fixes tested and integrated a lot faster than usual &#8211; it&#8217;s also helped stability, each crash has been diagnosed and debugged in series as it is encountered. It&#8217;d be very easy to say that performance &amp; stability wise, more has happened in the last week than the last 6 months &#8211; and we still need your help to keep going. We&#8217;re going to be continuing these load tests next week &#8211; there will probably be another major effort at getting 100+ avatars in a sim next Friday (same time, 1PM PST). If you want to know when the next test is planned, and help out &#8211; either hang around in #opensim on Freenode, or follow <a href="http://twitter.com/osgrid">@osgrid</a> or <a href="http://twitter.com/adamfrisby">@adamfrisby</a> where I&#8217;ll announce them they come.</p>
<p>Next stop, 150.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adamfrisby.com/blog/2009/10/85-users/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Post 85: Wherein Adam loses his Wright Plaza build permissions.</title>
		<link>http://www.adamfrisby.com/blog/2009/05/post-85-wherein-adam-loses-his-wright-plaza-build-permissions/</link>
		<comments>http://www.adamfrisby.com/blog/2009/05/post-85-wherein-adam-loses-his-wright-plaza-build-permissions/#comments</comments>
		<pubDate>Sun, 24 May 2009 10:05:39 +0000</pubDate>
		<dc:creator>Adam Frisby</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[osgrid]]></category>
		<category><![CDATA[wright plaza]]></category>

		<guid isPermaLink="false">http://www.adamfrisby.com/blog/?p=306</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-308" title="osgrid_lolwut2" src="http://www.adamfrisby.com/blog/wp-content/uploads/osgrid_lolwut2.jpg" alt="osgrid_lolwut2" width="660" height="338" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.adamfrisby.com/blog/2009/05/post-85-wherein-adam-loses-his-wright-plaza-build-permissions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xenki Renderer: Now less broken(tm).</title>
		<link>http://www.adamfrisby.com/blog/2008/08/xenki-renderer-now-less-brokentm/</link>
		<comments>http://www.adamfrisby.com/blog/2008/08/xenki-renderer-now-less-brokentm/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 13:26:49 +0000</pubDate>
		<dc:creator>Adam Frisby</dc:creator>
				<category><![CDATA[Xenki]]></category>
		<category><![CDATA[OpenSim]]></category>
		<category><![CDATA[osgrid]]></category>
		<category><![CDATA[viewer]]></category>
		<category><![CDATA[wpf]]></category>
		<category><![CDATA[wright plaza]]></category>

		<guid isPermaLink="false">http://gwala.net/blog/?p=29</guid>
		<description><![CDATA[So, I&#8217;m sitting here banging my head this morning over two issues. One, why the heck is terrain never deviating from zero height, and secondly why things werent looking quite right &#8211; as you could see in the previous posts it was clearly rendering prims but things were &#8216;missing&#8217; or not quite right. Turns out [...]]]></description>
			<content:encoded><![CDATA[<p>So, I&#8217;m sitting here banging my head this morning over two issues. One, why the heck is terrain never deviating from zero height, and secondly why things werent looking quite right &#8211; as you could see in the previous posts it was clearly rendering prims but things were &#8216;missing&#8217; or not quite right. Turns out the answer was both.</p>
<h3>First, Terrain.</h3>
<p>Yesterday I got the heightfield behaving properly, but couldnt understand why it was never being set when placed onto the live feed coming from the network stack. Answer turned out I was doing something stupid and had typo&#8217;d on a variable name for my indexer. Once that was fixed, we were rendering scenes like the one below.</p>
<p><img src="http://www.gwala.net/xenki_terrain.png" alt="" width="500" height="301" /></p>
<p>It&#8217;s beggining to look a lot prettier, but as you may have noticed, the prims dont appear to line up in any recognisable pattern. While there is definetely a pattern there &#8211; something is very off.</p>
<h3>Second, Objects &#8211; Part A.</h3>
<p>Showing this one to Easy [Babcock] in the office, we quickly worked out that infact objects were never being rotated &#8211; every object had exactly the same identical zero rotation. After a few minutes debugging, this turns out to be related to the conversion from a Quaternion to a Euler rotation for WPF. Switching from Vector3 to Media.Quaternion internally solved the problem nicely.</p>
<p>Here&#8217;s a view of Abbotts aerodrome with the fix inplace.</p>
<p><img src="http://www.gwala.net/xenki_abbotts.png" alt="" width="500" height="301" /></p>
<p>Much better, although there&#8217;s still some clumps missing.</p>
<h3>Second, Objects &#8211; Part B.</h3>
<p>So, it&#8217;s looking like we&#8217;ve almost got this rendering correctly. At least object shape and rotation is being displayed correctly, although there&#8217;s still something lacking. It turns out that most of the bits missing corresponded nicely with camera view &#8211; so I&#8217;ve fixed this by telling libsl to &#8216;rove&#8217; the camera position around the sim to download the entire thing. The above screenshot had this fix inplace.</p>
<p>This solved at least terrain loading completely and most objects.</p>
<p>Loading it up on OSGrid in Wright Plaza &#8211; everything seems to actually render properly now, at least so far as primitives go &#8211; we&#8217;re missing sculpties right now which form a large component of Wright Plaza&#8217;s design.</p>
<p><img src="http://www.gwala.net/xenki_wrightplaza2.png" alt="" width="500" height="301" /></p>
<h3>Second, Objects &#8211; Part C!? Huh?</h3>
<p>Panning our Camera around a little, we notice something a little bit &#8230; odd. Namely that around 0,0,0 there&#8217;s a large congregation of primitives. I&#8217;ve been noticing this already and had discarded it as possibly being neighbouring sims in which case, I&#8217;ll just knock them out later.</p>
<p>But it turns out, there&#8217;s valuable prims being thrown there &#8211; it looks to me like maybe the child primitives in link sets having their &#8220;Position&#8221; being relative to the parent primitive rather than the sim (in OpenSim we have both .Position and .AbsolutePosition to seperate these).</p>
<p><img src="http://www.gwala.net/xenki_vegacongregation.png" alt="" width="500" height="301" /></p>
<p>So, I&#8217;m going to be working on that for the rest of this afternoon &#8211; after which I&#8217;m going to play with either texture rendering, or getting Meshmeriser to work so we can discard the dependency on the black-box GPL&#8217;d rendering library.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.adamfrisby.com/blog/2008/08/xenki-renderer-now-less-brokentm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
