<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Adventures in X Programming</title>
	<atom:link href="http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/</link>
	<description>Game Development and Programming</description>
	<pubDate>Thu, 20 Nov 2008 08:05:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
		<item>
		<title>By: Bookmarks about Programming</title>
		<link>http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/#comment-192</link>
		<dc:creator>Bookmarks about Programming</dc:creator>
		<pubDate>Thu, 25 Sep 2008 19:30:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericbutler.net/blog/?p=8#comment-192</guid>
		<description>[...] - bookmarked by 4 members originally found by shortkat1 on 2008-09-08  Adventures in X Programming  http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/ - bookmarked by 5 members [...]</description>
		<content:encoded><![CDATA[<p>[...] - bookmarked by 4 members originally found by shortkat1 on 2008-09-08  Adventures in X Programming  <a href="http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/"  rel="nofollow">http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/</a> - bookmarked by 5 members [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anant</title>
		<link>http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/#comment-24</link>
		<dc:creator>Anant</dc:creator>
		<pubDate>Sun, 06 Jul 2008 15:23:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericbutler.net/blog/?p=8#comment-24</guid>
		<description>I think it would be good to have this integrated into Cairo, and let the application decide whether they want to use shm or not. Depending on what the application is, this may or may not be useful, but you should leave the option open to cases where it does make a significant difference.</description>
		<content:encoded><![CDATA[<p>I think it would be good to have this integrated into Cairo, and let the application decide whether they want to use shm or not. Depending on what the application is, this may or may not be useful, but you should leave the option open to cases where it does make a significant difference.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Boris</title>
		<link>http://www.ericbutler.net/blog/2008/07/adventures-in-x-programming/#comment-23</link>
		<dc:creator>Boris</dc:creator>
		<pubDate>Sun, 06 Jul 2008 05:54:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.ericbutler.net/blog/?p=8#comment-23</guid>
		<description>Eric, my X fu is weak, so bear with me for a bit here.  Is it possible to keep doing what we do now (the XPutImage) until we get the callback from X (or whatever method it uses to communicate this information) indicating that the XShm call succeeded, then switch to the shm thing.  This means more memory usage between the Shm call and us knowing that it succeeded than we use now, but that might be ok...

In other words, we'd have three stages in the life of an image:

1)  Image is not all decoded, needs to be drawn, not in shared memory, use XPutImage.
2)  Image is not all decoded, in shared memory, use XShm
3)  Image decoded, optimize.

Or would we never hit stage 2 in practice?

Another interesting question here is how often we in fact end up having to draw an image that is only partially decoded and whether we can reasonably reduce the number of times this happens (in other words, try hard to only draw images that have been optimized to pixmaps).  Would that have similar performance benefits without the obvious pain of the XSync hit?

I should also note that the XSync hit will always be worse (a LOT worse) on a non-local X, so it's something we should, imo, either avoid or make optional (e.g. disable the Shm thing based on a pref) if possible.</description>
		<content:encoded><![CDATA[<p>Eric, my X fu is weak, so bear with me for a bit here.  Is it possible to keep doing what we do now (the XPutImage) until we get the callback from X (or whatever method it uses to communicate this information) indicating that the XShm call succeeded, then switch to the shm thing.  This means more memory usage between the Shm call and us knowing that it succeeded than we use now, but that might be ok&#8230;</p>
<p>In other words, we&#8217;d have three stages in the life of an image:</p>
<p>1)  Image is not all decoded, needs to be drawn, not in shared memory, use XPutImage.<br />
2)  Image is not all decoded, in shared memory, use XShm<br />
3)  Image decoded, optimize.</p>
<p>Or would we never hit stage 2 in practice?</p>
<p>Another interesting question here is how often we in fact end up having to draw an image that is only partially decoded and whether we can reasonably reduce the number of times this happens (in other words, try hard to only draw images that have been optimized to pixmaps).  Would that have similar performance benefits without the obvious pain of the XSync hit?</p>
<p>I should also note that the XSync hit will always be worse (a LOT worse) on a non-local X, so it&#8217;s something we should, imo, either avoid or make optional (e.g. disable the Shm thing based on a pref) if possible.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
