<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>Intel Software Network Blogs</title>
<link>http://software.intel.com/en-us/blogs</link>
<description></description>
<item>
<title>Intel Threading Challenge 2010: One Down, Three to Go</title>
<link>http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/YwdL6NbMJWo/</link>
<guid isPermaLink="true" >http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/YwdL6NbMJWo/</guid>
<description>&lt;div id=&quot;body&quot; readability=&quot;55.141977760127&quot;&gt;


&lt;h3&gt;By &lt;a href=&quot;http://software.intel.com/en-us/blogs/author/clay-breshears/&quot;&gt;Clay Breshears (Intel)&lt;/a&gt; (152 posts) on August 31, 2010 at 2:15 pm&lt;/h3&gt;

&lt;p&gt;The first problem in Phase 2 of the 2010 Intel Threading Challenge contest has closed.  I'm very pleased that we had over 20 entries across the two problem classes from around the world.  Right now the judging staff is preparing to begin compiling and running the enter applications against the chosen data sets.&lt;/p&gt;
&lt;p&gt;The biggest change for this contest is the use of the &lt;a href=&quot;http://software.intel.com/en-us/articles/intel-many-core-testing-lab/&quot;&gt;Intel(R) Manycore Testing Lab&lt;/a&gt;. The shared platforms allow contestants to have access to hardware and software that is the same as that used by the judges when evaluating the entered codes. Contestants are now able to tune their entries to the exact machine specs rather than having to code &quot;in the dark&quot; and hope that their solution will execute well when the judges test it. For the judges, the hope is that entries will compile and run without any modifications. (In the past, working through differences in systems, libraries used, and compiler versions between the diverse set of development platforms used and the platforms used for scoring took many hours.)&lt;/p&gt;
&lt;p&gt;As with previous problems, the clever participants were able to think beyond the scope envisioned by the judges as the problem descriptions were written up. This led to some long discussions clarifications of the original problem intentions within the ISN forums devoted to the problems. We expect it all worked out well enough for all participants. The judges have taken these discussions to heart and, hopefully, have been able to anticipate better the loopholes that might be found in the current and upcoming problems.&lt;/p&gt;
&lt;p&gt;Best of luck to those that submitted an entry for this first problem of Phase 2.  If you missed the deadline for the first problem, it is not too late to get started. The second problem has been posted and will end at noon (PDT) on 20 SEP 2010. Each problem awards prizes to the top three point total entries and the grand prize will be given to the contestant with the highest combined point total from their top three scoring entries. Go to the &lt;a href=&quot;http://www.intel.com/go/threadingchallenge2010&quot;&gt;Threading Challenge 2010 page&lt;/a&gt; for details on the problems and how to enter.&lt;/p&gt;
&lt;h5&gt;Categories: &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/academic/&quot; title=&quot;View all posts in Academic&quot; rel=&quot;category tag&quot;&gt;Academic&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/isn/&quot; title=&quot;View all posts in Intel® Software Network 2.0&quot; rel=&quot;category tag&quot;&gt;Intel® Software Network 2.0&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/parallel/&quot; title=&quot;View all posts in Parallel Programming&quot; rel=&quot;category tag&quot;&gt;Parallel Programming&lt;/a&gt;&lt;/h5&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Comments (0)&lt;/h3&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Trackbacks (0)&lt;/h3&gt;

&lt;br /&gt;&lt;h3 class=&quot;pagesection&quot;&gt;Leave a comment  &lt;a target=&quot;_blank&quot; href=&quot;http://software.intel.com/en-us/articles/comments-help-guide/&quot;&gt;&lt;img src=&quot;/media/images/help.gif&quot; border=&quot;0&quot; class=&quot;c4&quot; /&gt;&lt;/a&gt;&lt;/h3&gt;



&lt;/div&gt;&lt;p&gt;&lt;em&gt;This entry passed through the &lt;a href=&quot;http://fivefilters.org/content-only/&quot;&gt;Full-Text RSS&lt;/a&gt; service &amp;mdash; if this is your content and you're reading it on someone else's site, please read our FAQ page at &lt;a href=&quot;http://fivefilters.org/content-only/faq.php&quot;&gt;fivefilters.org/content-only/faq.php&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://fivefilters.org&quot;&gt;Five Filters&lt;/a&gt; featured article: &lt;a href=&quot;http://medialens.org/alerts/10/100720_peace_envoy_blair.php&quot;&gt;&quot;Peace Envoy&quot; Blair Gets an Easy Ride in the Independent&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description>
<pubDate>Tue, 31 Aug 2010 22:15:58 +0000</pubDate>
<dc:creator>Clay Breshears (Intel)</dc:creator>
</item>
<item>
<title>A Sea Change in Computer Science Education</title>
<link>http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/BOgIjFc-Wi4/</link>
<guid isPermaLink="true" >http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/BOgIjFc-Wi4/</guid>
<description>&lt;div id=&quot;body&quot; readability=&quot;55.264182194617&quot;&gt;


&lt;h3&gt;By &lt;a href=&quot;http://software.intel.com/en-us/blogs/author/paul-steinberg/&quot;&gt;Paul Steinberg (Intel)&lt;/a&gt; (15 posts) on August 30, 2010 at 3:39 pm&lt;/h3&gt;

&lt;p&gt;After decades of &lt;em&gt;sturm und drang&lt;/em&gt; over whether or not to include parallelism in the undergraduate computer science curriculum, we can announce definitively that battle is over. Parallelism is here, and it already abides.&lt;br /&gt;Fortunately, we are not left staring into the abyss. Academia, Industry and Developers are cooperating to help define what the new landscape (or seascape) should look like. While the details are still coming into focus, certain aspects now dominate the discussion:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;We should get beyond thinking about teaching “parallel programming” -- it’s all just programming.&lt;/li&gt;
&lt;li&gt;Parallelism must be introduced early into the curriculum - no later than second year, and it must inform all relevant courses.&lt;/li&gt;
&lt;li&gt;New focus must be paid to architecture - but not the same architecture we’ve been teaching for years.&lt;/li&gt;
&lt;li&gt;Design patterns will take on increasing importance.&lt;/li&gt;
&lt;li&gt;Parallel models are no longer in their infancy - some are mature and can be widely adopted.&lt;/li&gt;
&lt;li&gt;Hiring managers are looking for general knowledge of parallelism more than specific tool sets.&lt;/li&gt;
&lt;li&gt;As educators, we must prepare our students to make the decisions that industry demands - the tools, models, and patterns will lead our way forward.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Agree? Disagree? Good.&lt;br /&gt;We’re going to be having a conversation about this at the IDF education panel “Navigating in a Sea of Cores” on Monday, September 13th. We have representatives from industry and from academia on the panel, and expect to have a lively discussion there continuing through lunch afterwards.&lt;/p&gt;
&lt;p&gt;http://idfcommunity.intel.com/planner/SessionCatalog.aspx?track=(ACA).&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://secure.idfregistration.com/IDF2010/&quot;&gt;Free passes are available to educators&lt;/a&gt; -Enter the code ACAWEB1 when you register.&lt;/p&gt;
&lt;p&gt;For those of you who can’t attend, or for those who want to dry-lab the discussion, we’re also going to have a series of blog posts by some of the contributors. We’ll also be adding links to those further discussions here, so you can just check back to keep up to date!&lt;/p&gt;
&lt;h5&gt;Categories: &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/academic/&quot; title=&quot;View all posts in Academic&quot; rel=&quot;category tag&quot;&gt;Academic&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/parallel/&quot; title=&quot;View all posts in Parallel Programming&quot; rel=&quot;category tag&quot;&gt;Parallel Programming&lt;/a&gt;&lt;/h5&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Comments (4)&lt;/h3&gt;









&lt;h3 class=&quot;pagesection&quot;&gt;Trackbacks (1)&lt;/h3&gt;

&lt;br /&gt;&lt;h3 class=&quot;pagesection&quot;&gt;Leave a comment  &lt;a target=&quot;_blank&quot; href=&quot;http://software.intel.com/en-us/articles/comments-help-guide/&quot;&gt;&lt;img src=&quot;/media/images/help.gif&quot; border=&quot;0&quot; class=&quot;c11&quot; /&gt;&lt;/a&gt;&lt;/h3&gt;



&lt;/div&gt;&lt;p&gt;&lt;em&gt;This entry passed through the &lt;a href=&quot;http://fivefilters.org/content-only/&quot;&gt;Full-Text RSS&lt;/a&gt; service &amp;mdash; if this is your content and you're reading it on someone else's site, please read our FAQ page at &lt;a href=&quot;http://fivefilters.org/content-only/faq.php&quot;&gt;fivefilters.org/content-only/faq.php&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://fivefilters.org&quot;&gt;Five Filters&lt;/a&gt; featured article: &lt;a href=&quot;http://medialens.org/alerts/10/100720_peace_envoy_blair.php&quot;&gt;&quot;Peace Envoy&quot; Blair Gets an Easy Ride in the Independent&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description>
<pubDate>Mon, 30 Aug 2010 23:39:23 +0000</pubDate>
<dc:creator>Paul Steinberg (Intel)</dc:creator>
</item>
<item>
<title>nulstein v2 plog - back to sequential !</title>
<link>http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/GDd6NyNXzxc/</link>
<guid isPermaLink="true" >http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/GDd6NyNXzxc/</guid>
<description>&lt;div id=&quot;body&quot; readability=&quot;97.556580396476&quot;&gt;


&lt;h3&gt;By &lt;a href=&quot;http://software.intel.com/en-us/blogs/author/jrme-muffat-mridol/&quot;&gt;Jérôme Muffat-Méridol (Intel)&lt;/a&gt; (10 posts) on August 30, 2010 at 2:03 am&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;http://software.intel.com/en-us/blogs/wordpress/wp-content/uploads/2010/08/Slide51.jpg&quot; alt=&quot;nulstein v2 - slide 05&quot; width=&quot;700&quot; height=&quot;525&quot; class=&quot;alignnone size-full wp-image-18178&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;(note: this is slide 5 of the &lt;a href=&quot;http://software.intel.com/en-us/blogs/2010/08/20/nulstein-v2-plog-presenting-through-a-blog/&quot;&gt;nulstein plog&lt;/a&gt;)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In an Agatha Christie novel, this slide would really go at the end of the talk, everything would finally get revealed only in the end, leaving the reader to play detective, picking up clues as the story unfolds... But that's not what I want, this slide goes here, like in a good old Columbo episode: you get to see what happened straight away, and we'll go over everything again to understand the details and make everything right again.&lt;/p&gt;
&lt;p&gt;Having found the &lt;a href=&quot;http://software.intel.com/en-us/blogs/2010/08/27/nulstein-v2-plog-divide-and-surrender/&quot; target=&quot;_blank&quot;&gt;functional decomposition too complex&lt;/a&gt; for my taste, I went back a few steps, trying to split the work up along a different edge. At the time, I was looking at Google's &lt;a href=&quot;http://labs.google.com/papers/mapreduce.html&quot; target=&quot;_blank&quot;&gt;map-reduce&lt;/a&gt; and also at the &lt;a href=&quot;http://software.intel.com/en-us/articles/rasterization-on-larrabee/&quot; target=&quot;_blank&quot;&gt;Larrabee rendererer&lt;/a&gt;, and one thing really struck me then: what Abrash describes can be seen as a system that &lt;em&gt;maps&lt;/em&gt; triangles to tiles and then &lt;em&gt;reduces&lt;/em&gt; these to bitmaps... And to generalize this: it is okay to break a process in sequential steps, as long as each step exhibits good parallelism.&lt;/p&gt;
&lt;p&gt;Isn't that great: sequential is okay, after all!&lt;/p&gt;
&lt;p&gt;This lead me to break the update in two parts: a read-only part and a write-only part. When all that gets done is reading, there is no need for locks, everybody can do it at once. When all that gets done is changing own state, again there is no contention possible and no arbitration is required. Of course, there are a few more nuts and bolts required to make this work, but here you have it: split that update in two phases, and everything can get updated in parallel much more easily.&lt;/p&gt;
&lt;p&gt;Breaking the draw phase down is quite easy too, collect information about what everything wants to draw, sort that and do the actual render in multiple deferred render-contexts (as provided by DirectX 11). Here, it can almost be seen as straight map-reduce: a set of objects is processed to generate set of intermediate key/value pairs, which gets reduced into a set of command lists, ready to render.&lt;/p&gt;
&lt;p&gt;The unexpected part for me, when carrying out development, was that I would still have one thread &lt;em&gt;just&lt;/em&gt; talking to DX and very busy doing that. That's the part I was trying to kill and, as it turned out, it did survive and stop being a problem.&lt;/p&gt;
&lt;p&gt;There are five slides before we really dive into the details of how this works, which should turn into a couple of weeks worth of blogging, so I'd like to invite everyone who is interested to start playing in their mind with the idea of two-stage update (all read and, later, all write). Look for things that don't look like they should work, look for ways to address those problems, try and see what in your game would stop working if it had to be written like that, and try to think if there would be any way to fix it. That's the great thing about making this talk a plog: you get to really think about what I present while I'm presenting it. The unfortunate thing is that our comments system seems to be down at the moment and we can't interact properly. So, if anybody wants to feedback, feel free, you can twitter &lt;a href=&quot;http://twitter.com/jmuffat&quot;&gt;@jmuffat&lt;/a&gt; or email jerome dot muffat dash meridol at intel dot com.&lt;/p&gt;
&lt;p&gt;Next time, demo! : to be continued&lt;br /&gt;Spoiler (slides+source code): &lt;a href=&quot;http://software.intel.com/en-us/articles/nulstein/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;h5&gt;Categories: &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/parallel/&quot; title=&quot;View all posts in Parallel Programming&quot; rel=&quot;category tag&quot;&gt;Parallel Programming&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/visual-computing/&quot; title=&quot;View all posts in Visual Computing&quot; rel=&quot;category tag&quot;&gt;Visual Computing&lt;/a&gt;&lt;/h5&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Comments (0)&lt;/h3&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Trackbacks (1)&lt;/h3&gt;

&lt;br /&gt;&lt;h3 class=&quot;pagesection&quot;&gt;Leave a comment  &lt;a target=&quot;_blank&quot; href=&quot;http://software.intel.com/en-us/articles/comments-help-guide/&quot;&gt;&lt;img src=&quot;/media/images/help.gif&quot; border=&quot;0&quot; class=&quot;c4&quot; /&gt;&lt;/a&gt;&lt;/h3&gt;



&lt;/div&gt;&lt;p&gt;&lt;em&gt;This entry passed through the &lt;a href=&quot;http://fivefilters.org/content-only/&quot;&gt;Full-Text RSS&lt;/a&gt; service &amp;mdash; if this is your content and you're reading it on someone else's site, please read our FAQ page at &lt;a href=&quot;http://fivefilters.org/content-only/faq.php&quot;&gt;fivefilters.org/content-only/faq.php&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://fivefilters.org&quot;&gt;Five Filters&lt;/a&gt; featured article: &lt;a href=&quot;http://medialens.org/alerts/10/100720_peace_envoy_blair.php&quot;&gt;&quot;Peace Envoy&quot; Blair Gets an Easy Ride in the Independent&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description>
<pubDate>Mon, 30 Aug 2010 10:03:46 +0000</pubDate>
<dc:creator>Jérôme Muffat-Méridol (Intel)</dc:creator>
</item>
<item>
<title>Seismic Duck goes Open Source</title>
<link>http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/7fyqYsIVLWs/</link>
<guid isPermaLink="true" >http://feedproxy.google.com/~r/IntelSoftwareNetworkBlog/~3/7fyqYsIVLWs/</guid>
<description>&lt;div id=&quot;body&quot; readability=&quot;35.768744734625&quot;&gt;


&lt;h3&gt;By &lt;a href=&quot;http://software.intel.com/en-us/blogs/author/arch-robison/&quot;&gt;Arch Robison (Intel)&lt;/a&gt; (24 posts) on August 28, 2010 at 7:42 pm&lt;/h3&gt;

&lt;p&gt;Now you can read the source code for my &lt;a href=&quot;http://home.comcast.net/~arch.robison/seismic_duck.html&quot;&gt;Seismic Duck&lt;/a&gt; game on &lt;a href=&quot;https://sourceforge.net/projects/seismic-duck/&quot;&gt;Source Forge&lt;/a&gt;.  I open-sourced the code for several reasons:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;My &lt;a href=&quot;http://software.intel.com/en-us/blogs/2010/04/21/parallelism-patterns-in-seismic-duck-part-1-background&quot;&gt;blogs&lt;/a&gt; on parallelizing it with SSE and TBB omit details of interest.  The blogs chiefly concern the seismic wave propagation code in &lt;a href=&quot;https://seismic-duck.svn.sourceforge.net/svnroot/seismic-duck/trunk/Source/Wavefield.cpp&quot;&gt;Source/Wavefield.cpp&lt;/a&gt; .&lt;/li&gt;
&lt;li&gt;Games about reflection seismology are not runaway best sellers.&lt;/li&gt;
&lt;li&gt;It's limited to Windows.  I'd like to find volunteers to port it to other platforms.   Mac OS is of particular interest, since it is common in educational settings.   The OS-specific parts are about 600 lines of C++.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;The code is my own hobby, not Intel's.   As such, comments are  sparse.  I'll expand them as questions arise.  If you are interested in porting it to new platforms, please contact me and I'll help as best I can.&lt;/p&gt;
&lt;h5&gt;Categories: &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/open-source/&quot; title=&quot;View all posts in Open Source&quot; rel=&quot;category tag&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/parallel/&quot; title=&quot;View all posts in Parallel Programming&quot; rel=&quot;category tag&quot;&gt;Parallel Programming&lt;/a&gt;, &lt;a href=&quot;http://software.intel.com/en-us/blogs/category/intel-threading-building-blocks/&quot; title=&quot;View all posts in Threading Building Blocks&quot; rel=&quot;category tag&quot;&gt;Threading Building Blocks&lt;/a&gt;&lt;/h5&gt;

&lt;h3 class=&quot;pagesection&quot;&gt;Comments (4)&lt;/h3&gt;









&lt;h3 class=&quot;pagesection&quot;&gt;Trackbacks (0)&lt;/h3&gt;

&lt;br /&gt;&lt;h3 class=&quot;pagesection&quot;&gt;Leave a comment  &lt;a target=&quot;_blank&quot; href=&quot;http://software.intel.com/en-us/articles/comments-help-guide/&quot;&gt;&lt;img src=&quot;/media/images/help.gif&quot; border=&quot;0&quot; class=&quot;c11&quot; /&gt;&lt;/a&gt;&lt;/h3&gt;



&lt;/div&gt;&lt;p&gt;&lt;em&gt;This entry passed through the &lt;a href=&quot;http://fivefilters.org/content-only/&quot;&gt;Full-Text RSS&lt;/a&gt; service &amp;mdash; if this is your content and you're reading it on someone else's site, please read our FAQ page at &lt;a href=&quot;http://fivefilters.org/content-only/faq.php&quot;&gt;fivefilters.org/content-only/faq.php&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://fivefilters.org&quot;&gt;Five Filters&lt;/a&gt; featured article: &lt;a href=&quot;http://medialens.org/alerts/10/100720_peace_envoy_blair.php&quot;&gt;&quot;Peace Envoy&quot; Blair Gets an Easy Ride in the Independent&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;</description>
<pubDate>Sun, 29 Aug 2010 03:42:29 +0000</pubDate>
<dc:creator>Arch Robison (Intel)</dc:creator>
</item>
</channel>
</rss>