<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Tic-tac-toe in Erlang &#8212; parallel processing</title>
	<atom:link href="http://nealabq.com/blog/2009/02/16/tic-tac-toe-in-erlang-parallel-processing/feed/" rel="self" type="application/rss+xml" />
	<link>http://nealabq.com/blog/2009/02/16/tic-tac-toe-in-erlang-parallel-processing/</link>
	<description>Probing dark corners while dodging the grues</description>
	<lastBuildDate>Thu, 22 Jul 2010 01:02:34 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: Neal</title>
		<link>http://nealabq.com/blog/2009/02/16/tic-tac-toe-in-erlang-parallel-processing/comment-page-1/#comment-70</link>
		<dc:creator>Neal</dc:creator>
		<pubDate>Tue, 17 Mar 2009 17:21:30 +0000</pubDate>
		<guid isPermaLink="false">http://nealabq.com/blog/?p=1008#comment-70</guid>
		<description>Thanks. I didn&#039;t know about +P. That&#039;ll be interesting to play with.

Hmm, and I must not have 80,000 simultaneous process running, like I guessed. Maybe 30,000.

And yes, these processes spend almost all their lives just waiting for cycles. I&#039;m running this on a somewhat underpowered machine with only 2 cores and 1G memory.

The massively parallel runs were a little slower (about 25%) than the serial runs. So spawning all those processes, although not terribly expensive, is still enough to use up any gains from having 2 cores.

And I&#039;m not even sure I&#039;m using 2 cores. When I start the Erlang shell it says:

Erlang (BEAM) emulator version 5.6.5 [smp:2] [async-threads:0]

Does this mean everything is running in a single operating-system thread? Sounds like it.</description>
		<content:encoded><![CDATA[<p>Thanks. I didn&#8217;t know about +P. That&#8217;ll be interesting to play with.</p>
<p>Hmm, and I must not have 80,000 simultaneous process running, like I guessed. Maybe 30,000.</p>
<p>And yes, these processes spend almost all their lives just waiting for cycles. I&#8217;m running this on a somewhat underpowered machine with only 2 cores and 1G memory.</p>
<p>The massively parallel runs were a little slower (about 25%) than the serial runs. So spawning all those processes, although not terribly expensive, is still enough to use up any gains from having 2 cores.</p>
<p>And I&#8217;m not even sure I&#8217;m using 2 cores. When I start the Erlang shell it says:</p>
<p>Erlang (BEAM) emulator version 5.6.5 [smp:2] [async-threads:0]</p>
<p>Does this mean everything is running in a single operating-system thread? Sounds like it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nikolas Bowe</title>
		<link>http://nealabq.com/blog/2009/02/16/tic-tac-toe-in-erlang-parallel-processing/comment-page-1/#comment-69</link>
		<dc:creator>Nikolas Bowe</dc:creator>
		<pubDate>Mon, 16 Mar 2009 14:02:10 +0000</pubDate>
		<guid isPermaLink="false">http://nealabq.com/blog/?p=1008#comment-69</guid>
		<description>Hi. This is an interesting series on tic-tac-toe in Erlang. Thanks.

Whats the performance difference on your machine between the parallel version and the non parallel one for a board with 2 marks?

In this example processes spend a lot of the time waiting, so I think you might be better off spawning fewer processes and making them do more work. Maybe only spawn processes for the 9 initial moves. Its not particularly intelligent and doesnt scale past 9 cores but its dead easy to implement.

Note: You can increase the process limit by using the +P command line switch to erl. The default is 32768 processes.</description>
		<content:encoded><![CDATA[<p>Hi. This is an interesting series on tic-tac-toe in Erlang. Thanks.</p>
<p>Whats the performance difference on your machine between the parallel version and the non parallel one for a board with 2 marks?</p>
<p>In this example processes spend a lot of the time waiting, so I think you might be better off spawning fewer processes and making them do more work. Maybe only spawn processes for the 9 initial moves. Its not particularly intelligent and doesnt scale past 9 cores but its dead easy to implement.</p>
<p>Note: You can increase the process limit by using the +P command line switch to erl. The default is 32768 processes.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
