<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<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/"
	>

<channel>
	<title>Intel® Software Network Blogs &#187; Events</title>
	<link>http://softwareblogs.intel.com</link>
	<description></description>
	<pubDate>Sat, 17 May 2008 04:17:38 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>Reaching out to the Academic Community</title>
		<link>http://softwareblogs.intel.com/2008/05/09/reaching-out-to-the-academic-community/</link>
		<comments>http://softwareblogs.intel.com/2008/05/09/reaching-out-to-the-academic-community/#comments</comments>
		<pubDate>Fri, 09 May 2008 20:38:20 +0000</pubDate>
		<dc:creator>Paul Steinberg (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Graphics]]></category>

		<category><![CDATA[Multicore]]></category>

		<category><![CDATA[Social Media &amp; Virtual Worlds]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[Threading Building Blocks]]></category>

		<category><![CDATA[University Curriculum]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/05/09/reaching-out-to-the-academic-community/</guid>
		<description><![CDATA[I am happy to launch my first Blog post as a member of Intel's Software College and Academic Community.  Much of this first post is  introductionary &#38; I am looking for your feedback.
 I am working with some of the brightest folks here at Intel, our subject matter experts and architects, such as Clay Breshears, Michael Wrinn, Bob [...]]]></description>
			<content:encoded><![CDATA[<p>I am happy to launch my first Blog post as a member of Intel's Software College and Academic Community.  Much of this first post is  introductionary &amp; I am looking for your feedback.</p>
<p> I am working with some of the brightest folks here at Intel, our subject matter experts and architects, such as <a href="http://softwareblogs.intel.com/author/clay-breshears/">Clay Breshears</a>, <a href="http://softwareblogs.intel.com/author/michael-wrinn/">Michael Wrinn</a>, <a href="http://softwareblogs.intel.com/author/robert-chesebrough/">Bob Chesebrough </a>and <a href="http://softwareblogs.intel.com/2007/06/28/tim-mattson-on-parallel-computing-at-the-researchintel-blog/">Tim Mattson</a> (amongst others).  I will also be working closely with the indomitable <a href="http://softwareblogs.intel.com/2008/04/28/the-academic-community-has-a-new-face-to-support-you/">Wolfgang Rosenberg</a>, manager of the <a href="http://softwarecollege.intel.com/academic/">Intel Academic Community. </a></p>
<p>My job is to reach out to educators and researchers around the world, to connect them with Intel experts and to help foster development of a curriculum to educate the next generation of programmers and engineers on the newest compute platforms.</p>
<p><strong>Hopefully, this blog will go a long way to opening up channels of communication</strong> </p>
<p>We have a number of events and initiatives planned for this year. </p>
<p>We have already started our monthly <a href="http://softwarecommunity.intel.com/articles/eng/3760.htm"><strong>Academic Community Curriculum Webinar Series.</strong></a>  During these webinars, we discuss the newest curriculum topics.  It is a great way to speak directly with our course architects.  I moderate the series and I very much look forward to speaking with you there soon.</p>
<p><strong>The next in the series is on May 15 on multi-core design patterns.  Please Register below.</strong></p>
<p><img border="0" width="1" src="http://softwareblogs.intel.com/wordpress/wp-admin/" height="1" /><a href="http://w.on24.com/r.htm?e=106752&amp;s=1&amp;k=C24BFCF31A05EC4A82F51D6234DA4D71&amp;partnerref=MyBlog"><img border="0" width="312" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/Webinar.jpg" height="200" /></a></p>
<p> <a href="http://w.on24.com/r.htm?e=106752&amp;s=1&amp;k=C24BFCF31A05EC4A82F51D6234DA4D71&amp;partnerref=MyBlog">Register or view past event here</a>.</p>
<p>------------------------------------------</p>
<p>We are creating quite a few short <a href="http://softwarecommunity.intel.com/videos/home.aspx?fn=1484&amp;Category=MultiCore"><strong>videos</strong></a> supporting our academic efforts.</p>
<p><img border="0" width="1" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/vids.jpg" height="1" /><img border="0" width="393" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/vids.jpg" height="167" /></p>
<p> I'm in the process now of filming a series on threading topics with an emphasis on game development and visual computing.  So far only the first title on <a href="http://softwarecommunity.intel.com/videos/home.aspx?fn=1485">Optimizing for DirectX</a> is posted, but the rest will be available soon.</p>
<p><strong>Is this type of content useful?  Are there better ways to scale out our knowledge and build conversation?  I'd like to hear that from you.</strong></p>
<p> I've asked around internally as to how folks like to consume information.  As you might imagine, there were a wide-range of responses.  Tim Mattson just rolled his eyes when I started to talk about videos and webinars.  While he is a great presenter, his own preference is to just download the PowerPoint or code and have done with it.</p>
<p>Others, myself included, prefer a richer content set.  For me, nothing beats the immediacy of a live event.  That is one reason we have our monthly webinars.  I am also quite interested in convening smaller conversations, perhaps using something like Communicator or Live Meeting, to discuss specific topics or curriculum ideas.  Let me know by responding to this blog.</p>
<p> ---------------------------------------------</p>
<p>Finally, I've become very interested in different forms of new media.  I'm often available on <a href="http://www.twitter.com">Twitter</a> -find me as @psteinb.</p>
<p>I am the owner of the <a href="http://tinyurl.com/34chl9">Intel Software Second Life Island. </a></p>
<p><a href="http://tinyurl.com/34chl9"> <img border="0" width="159" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/psteinb/PeretzVerySmall.JPG" height="119" /></a></p>
<p>IM me on Second Life as Peretz Stine.</p>
<p>Check out our <a href="http://www.youtube.com/watch?v=iWfIJWaCzrA">launch video.</a></p>
<p><a href="http://www.youtube.com/watch?v=iWfIJWaCzrA"><img border="0" width="256" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/psteinb/launchSM.jpg" height="210" /></a></p>
<p><img border="0" width="1" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/Peretz.bmp" height="1" />Over the last year, we ran an event series on our Second Life island dedicated to engaging engineers and professionals around the world in conversation on this unique environment.  That program, sadly, is ended, but you can still view much of it <a href="http://softwarecommunity.intel.com/articles/eng/3712.htm">here:</a></p>
<p><a href="http://softwarecommunity.intel.com/articles/eng/3712.htm"><img border="0" width="401" src="http://softwarecommunity.intel.com/UserFiles/en-us/Image/psteinb/IntelMetaverse2.jpg" height="338" /></a></p>
<p>Are you interested in meeting on Second Life or other virtual worlds?  It can be arranged.</p>
<p> Well that's enough for now -you have you orders -tell me how best to foster dialogue.  I'll be working as hard as I can, but you are the whole point.  Let's start the conversation.</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/05/09/reaching-out-to-the-academic-community/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New Intel Mash Maker Videos from IDF Shanghai</title>
		<link>http://softwareblogs.intel.com/2008/04/24/new-intel-mash-maker-videos-from-idf-shanghai/</link>
		<comments>http://softwareblogs.intel.com/2008/04/24/new-intel-mash-maker-videos-from-idf-shanghai/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 22:33:32 +0000</pubDate>
		<dc:creator>Amelia Barton (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[idf]]></category>

		<category><![CDATA[mash maker]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/24/new-intel-mash-maker-videos-from-idf-shanghai/</guid>
		<description><![CDATA[We've posted two brand new Intel Mash Maker videos from IDF Shanghai on our Take Five Video site.  Take a look, they are on the "Community Tab" under Video Categories.]]></description>
			<content:encoded><![CDATA[<p>We've posted new Mash Maker videos on our <a href="http://softwarecommunity.intel.com/videos">Take Five Video</a> site.  They are hiding a bit on the community tab. If you click on the blue arrow to the right in the gray box at the middle of the page, then click on the image below "Community," you'll  find lots of Mash Maker Videos including our top video:</p>
<p><a href="http://softwarecommunity.intel.com/videos/home.aspx?fn=1433"><strong>Mash Maker Overview </strong></a></p>
<p>And two brand new ones from IDF Shanghai:</p>
<p><a href="http://softwarecommunity.intel.com/videos/home.aspx?fn=1471"><strong>Mash Maker Demo at IDF Shanghai</strong> </a></p>
<p><strong><a href="http://softwarecommunity.intel.com/videos/home.aspx?fn=1483">Intel Mash Maker: Mashups for the Masses IDF Shanghai Session</a>  </strong></p>
<p>We posted this session in 4 parts, be sure to click on "See Next in series" to see the whole thing.</p>
<p>Thanks to Josh Bancroft for making the trip for us to Shanghai, and bringing back these videos.  Granted is isn't quite like being there...</p>
<p>Mash Maker info is at <a href="http://mashmaker.intel.com/">http://mashmaker.intel.com</a>.   And <a href="http://softwareblogs.intel.com/author/robert-ennals/">Robert Ennals </a>is the expert to blog with.</p>
<p>What do you think?  Should we bring more IDF sessions to you?</p>
<p>Amy</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/24/new-intel-mash-maker-videos-from-idf-shanghai/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Getting into PC gaming?  You're not alone.</title>
		<link>http://softwareblogs.intel.com/2008/04/23/getting-into-pc-gaming-youre-not-alone/</link>
		<comments>http://softwareblogs.intel.com/2008/04/23/getting-into-pc-gaming-youre-not-alone/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 06:49:17 +0000</pubDate>
		<dc:creator>Gina Bovara (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Gaming]]></category>

		<category><![CDATA[Graphics]]></category>

		<category><![CDATA[crysis]]></category>

		<category><![CDATA[game demo]]></category>

		<category><![CDATA[game-on]]></category>

		<category><![CDATA[games]]></category>

		<category><![CDATA[GDC]]></category>

		<category><![CDATA[pc games]]></category>

		<category><![CDATA[siggraph]]></category>

		<category><![CDATA[unreal tournament]]></category>

		<category><![CDATA[UT3]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/23/getting-into-pc-gaming-youre-not-alone/</guid>
		<description><![CDATA[It seems that lately everyone has been getting into my favorite hobby ... PC gaming! 
It's so cool to have this interest becoming more mainstream - I can actually talk with people who play the games I play and I don't get weird looks like I'm from Mars.  Well, of course sometimes I still do - but that's because [...]]]></description>
			<content:encoded><![CDATA[<p><strong>It seems that lately everyone has been getting into my favorite hobby ... PC gaming!</strong> </p>
<p>It's so cool to have this interest becoming more mainstream - I can actually talk with people who play the games I play and I don't get weird looks like I'm from Mars.  Well, of course sometimes I still do - but that's because I'm a geek and not just because I play PC games.</p>
<p>Gamers are always so interesting to speak with since most of them build their own machines with the best &amp; fastest components to ensure they have the ultimate gaming experience.  I have several rigs that I've built myself - my main one has an Intel<span style="font-size: 11pt; line-height: 115%; font-family: 'Calibri','sans-serif'">®</span> Core<span style="font-size: 11pt; line-height: 115%; font-family: 'Calibri','sans-serif'">™</span>2 Extreme processor (<a target="_blank" href="http://www.intel.com/products/processor/core2xe">QX6700</a>) and the performance just blows me away (and I'm not just saying that because I work at Intel!).  </p>
<p>Never in my wildest dreams could I have imagined how far this industry would come -- I still remember my first gaming PC (an <a target="_blank" href="http://en.wikipedia.org/wiki/Atari_800XL">Atari 800XL</a>) where I played <a target="_blank" href="http://en.wikipedia.org/wiki/David%27s_Midnight_Magic">David's Midnight Magic</a> late into the night!</p>
<p><strong>Gamers - and game developers - shouldn't miss some of the cool things that Intel is offering right now for game fanatics!:</strong></p>
<ul>
<li>For starters we have our "<a target="_blank" href="http://www.makesomethingunreal.com">$1,000,000 Intel Make Something Unreal</a>" contest where you can submit your mods for <a target="_blank" href="http://www.unrealtournament3.com/us/index.html">Unreal Tournament 3</a> (UT3).  I am a total noob to UT3, but one of these weekends I will try my hand at some example mods and post here in my blog for everyone to laugh at. </li>
<li>Along the same lines, we also have an <a target="_blank" href="http://icmc.crymod.com/">Intel Crysis Mapping contest </a>with some cool PC component prizes (Intel<span style="font-size: 11pt; line-height: 115%; font-family: 'Calibri','sans-serif'">®</span> processors &amp; motherboards) and a chance to win a trip to the Crytek headquarters.</li>
<li>For aspiring game developers, check out our <a target="_blank" href="http://www.intel.com/software/gamedemo2008">Intel Game Demo Contest</a> -- your game could be the next big hit that I stay up waaay too late playing!</li>
<li>Just need a fix on the latest gaming news?  Make sure you check out our new <a target="_blank" href="http://game-on.intel.com/eng/index.aspx">Intel Game On portal</a>.</li>
<li>And finally, our in-person gaming events in the second half of this year will be loads of fun.  I hope you'll make plans to join us at <a target="_blank" href="http://www.siggraph.org/s2008/">SIGGRAPH</a> and <a target="_blank" href="http://www.gdcaustin.net/">GDC Austin</a> to say hello!</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/23/getting-into-pc-gaming-youre-not-alone/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PGAS versus MPI and what should we teach undergraduates??</title>
		<link>http://softwareblogs.intel.com/2008/04/22/pgas-versus-mpi-and-what-should-we-teach-undergraduates/</link>
		<comments>http://softwareblogs.intel.com/2008/04/22/pgas-versus-mpi-and-what-should-we-teach-undergraduates/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 16:34:38 +0000</pubDate>
		<dc:creator>Robert Chesebrough (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Multicore]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[University Curriculum]]></category>

		<category><![CDATA[IPDPS]]></category>

		<category><![CDATA[MapReduce]]></category>

		<category><![CDATA[PGAS]]></category>

		<category><![CDATA[Scheme]]></category>

		<category><![CDATA[Titanium]]></category>

		<category><![CDATA[Undergarduate parallelism]]></category>

		<category><![CDATA[Unified Parallel C]]></category>

		<category><![CDATA[UPC]]></category>

		<category><![CDATA[Yelick]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/22/pgas-versus-mpi-and-what-should-we-teach-undergraduates/</guid>
		<description><![CDATA[One of the highlights of this 22nd annual IPDPS conference was the Wednesday night panelist discussion. The discussion probed the general topic of what the current parallel programming experts (eps IPDPS faculty &#38; researchers) can teach to a new generation who will just now be cutting their teeth on MC processors and growing up in [...]]]></description>
			<content:encoded><![CDATA[<p><font face="Times New Roman">One of the highlights of this 22nd annual IPDPS conference was the Wednesday night panelist discussion. The discussion probed the general topic of what the current parallel programming experts (eps IPDPS faculty &amp; researchers) can teach to a new generation who will just now be cutting their teeth on MC processors and growing up in a non sequential programming landscape. The discussion was recorded for IEEE TV but I have not seen it posted yet on either the IPDPS site or the IEEE TV site. So for lack of being able to review the panelists discussion again in detail I have relied on my cryptic notes, scribbled furiously during the discussion. The panel consisted of several of the "earth movers" - those prominent professors or researchers in parallel computing - who have participated in massively parallel computing or more appropriately, shaped massively parallel computing landscape. I want to cover each of the panelists opinions about the future, but must start somewhere - so let me begin with Katherine Yelick's presentation.</font><font face="Times New Roman">Kathy Yelick is NERSC Division Director, Lawrence Berkeley National Lab and EECS Department, University of California at Berkeley. She received her Bachelors (1985), Masters (1985), and PhD (1991) degrees in Electrical Engineering and Computer Science from the Massachusetts Institute of Technology. Her research interests include parallel computing, memory hierarchy optimizations, programming languages and compilers. </font><font face="Times New Roman">In this panel discussion, Kathy laid out a path whereby CS students would likely be split into two types of specialties: 1) an efficiency layer - Performance oriented parallel programmers who understand cache locality and lower level parallelism mechanics and who write abstraction layers &amp; libraries upon which the rest of developer community stands<br />
2) a productivity layer - who use the lower level parallel abstractions and libraries to and who focus on application domain<br />
In Katherine's model - she would hope that ~10% of the developers who have to be deeply involved in the efficiency layer, while the majority (90%) of developers would be trained as application domain folks</font><font face="Times New Roman">Katherine stated that it would be a disaster if the split between efficiency programmers and application programmers urns out to be more like 50/50% rather than the 10/90% split proposed and believes universities should begin prepping CS students along these two disciplines and hopefully - the numeric proportion will fall to the 10/90.</font><font face="Times New Roman">She laid a case for tackling large many core application going forward with Parallel Global Addressable Systems (PGAS) languages - like Unified parallel C (UPC), Titanium, CAF etc as opposed to continued efforts in MPI. They case she laid out was similar or better performance with PGAS with substantially fewer lines of source code. It turns out UPC was discussed frequently in the sessions I attended and I am considering whether Intel Software College should add a module on UPC or Titanium etc for our University program - Thoughts?</font><font face="Times New Roman">She said there are gaps in current training at the undergraduate level that need correction. Essentially these gaps are 1) there is currently a lack of deep understanding of performance &amp; algorithmic complexity, 2) there is currently a lack of understanding of algorithms<br />
3) there is a lack of sophisticated understanding of concurrency, synchronization, non determinism, load balance etc - presumably - these gaps are less of an issue for the application domain folks but are of critical importance ot efficiency programmers of the future. This is an area where many of our Intel Software college already has some material in the pipeline and its was good to get implicit validation that our plans align with the Berkeley vision.</font><font face="Times New Roman">Katherine roughly laid out the Berkley approach, where they have begun teaching parallelism to more entry level programming students. They have incorporated cluster computing fundamentals into the introductory computer science curriculum at UC Berkeley. In that course, they have developed coursework and programming problems centered around Google's MapReduce. They used a language called Scheme to write and run MapReduce programs and can tackle parallel problems on a cluster using a special interface. Students can begin addressing data-parallel problems about two thirds of the way into this course. </font><font face="Times New Roman">They are targeting more concurrency in their systems course and now have a capstone course for seniors who will be moving off into the efficiency programming type of endeavors. At the higher level, they will be focusing on 13 Berkley "motif" or what has been called the Berkeley 13 dwarfs. These are 13 categories of applications that have similar target kernels underlying their operation. Efficiently parallelize the kernels and you solve a whole class of applications in that share that kernel or motif.</font><font face="Times New Roman">This Berkley approach is one that Intel Software College is pursuing to help seed our faculty training. We are working with a couple of the Berkley faculty teaching the Berkley motifs exploration course together with design patterns. We plan to incorporate findings and lablets and instructor materials from this course to our wiki in the June time frame.</font><font face="Times New Roman">As part of those postings we will also be posting materials we have created or materials we have received on other parallel techniques: Design Patterns, MPI, functional language examples (Erlang), Software Transactional Memory, etc.</font><font face="Times New Roman">So next time I'll recap a few more of the panelist discussions and how they may impact our curriculum postings.</font><font face="Times New Roman">If you have examples of what YOU are teaching in YOUR undergraduate courses to teach parallelism - I'd love to hear from you - please respond to my blog or better yet - post your materials for use by many universities to our wiki!</font><font face="Times New Roman">bye for now </font><font face="Times New Roman"> </font></p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/22/pgas-versus-mpi-and-what-should-we-teach-undergraduates/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Functional Languages versus threading</title>
		<link>http://softwareblogs.intel.com/2008/04/22/functional-languages-versus-threading/</link>
		<comments>http://softwareblogs.intel.com/2008/04/22/functional-languages-versus-threading/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 16:26:56 +0000</pubDate>
		<dc:creator>Robert Chesebrough (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Multicore]]></category>

		<category><![CDATA[Open Source]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[University Curriculum]]></category>

		<category><![CDATA[]]></category>

		<category><![CDATA[Erlang]]></category>

		<category><![CDATA[Functional Language]]></category>

		<category><![CDATA[HASKEL]]></category>

		<category><![CDATA[LISP]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/22/functional-languages-versus-threading/</guid>
		<description><![CDATA[I had responded to some questions in my other post (view from 22nd annual IPDPS - http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/) about functional languages.  It was suggested by Clay B that I should make a seperate post along the functional language topic - so here goes. 
I asked Dr Dennis (Prf Emeritus CS at MIT) his thoughts on what should [...]]]></description>
			<content:encoded><![CDATA[<p>I had responded to some questions in my other post (view from 22nd annual IPDPS - <a href="http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/">http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/</a>) about functional languages.  It was suggested by Clay B that I should make a seperate post along the functional language topic - so here goes. </p>
<p>I asked Dr Dennis (Prf Emeritus CS at MIT) his thoughts on what should be taught to undergrads to prepare them for a many core future. This was a lunchtable conversation and not a true curriculum planning session - but none the less - Dr Denis did not hesitate to mention functional languages as one of the first things that should be taught. I don't think he was implying that a functional language is the magic bullet or one size fits all solution to bringing new developers to the discipline.</p>
<p>The reasons he articulted for teaching a functional language are that:<br />
1) it is a model for parallel prgramming that avoids the sunchroonization hazards associated with threading - data races etc.<br />
2) version of parallel languages are already being taught in many schools already so there s a low barrier to entry<br />
3) Examples of functional languages can already be found in industry</p>
<p>I would argue that there will still be a need to teach students about threading (but not with as high a priority). If you teach them about threading, you have to teach them about the associated hazards. This does not contradict that we should also teach them a functional language.</p>
<p>On other fronts here at IPDPS I talked to Keshav Pingali from the University of Texas, and Vivek Sarkar from Rice University who were panelists here Wednesday night. These panelists discussed how the current parallel computation community could pass their learnings on to a new generation of develpoers just starting out in multicore. After the panel discussion, Michael Wrinn &amp; I were able to get their take on essentially the same question I asked of Dr Dennis. They indicated that there still is some value in teaching functional programming to the new crop of developers. Keshav in particular indicated that his early exposure to functional languages has influenced his coding style in positive ways - years later. They acknowledged that some implentations of functional languages have been poor performers on sequential machines in the past and so they have not really caught on in industry (Erlang is the excetion to this statement) and also they cited some difficulties with cache locality &amp; dealing with multidmensional arrays from a developers perspective. However, they also indicated that several groups have been adding extensions to these lanuages, I think Haskell was mentioned, to allow for improved handling of arrays and to address locaility issues.</p>
<p>So here are my musings after havng these discussions. Warning controvesial road ahead - use caution when entering - Here's a controversial perspective on appropriateness of functional languages as we move into many core land. Maybe the locaility issues that caused functional languages to be discounted wont be so significant in a time when we are utilizing hundreds of cores. Why? In sequential programming days and in early days of multicore - 2 cores could possibily give you a 2X speedup. But the tax we pay for poor cache locality might be hypothetically ~10X - the number thrown around here in our conversations with these disinguished professors from Texas. So any language that could gain you 2X by parallelism - but lose you 10X thru poor locality probably would die a natural death. BUT - improve cache locality fo these languages and apply to many more cores. Suppose in future we have 100 cores and that compilers for the functional languages get a second look and get needed optimizations so that we reduce cache locality issues to be a 50% penalty rather than 10X (50% penalty means we run at 1.5X speedup). Now assume that we approach 100X due to parallelism but pay 1.5X tax. Thats a net gain ~66X speedup. Compiler writers might be persuaded to optimize a functional language if there was a decent pay off. 66X might do it. If the industry had frozen in a past instant of time at only 2 cores and if compiler writers at that time thought that they might be able to reduce locality penalty to 50% would it have been a worthwhile endeavor? 2X gain/1.5X loss 1.3X net - that a 30% gain in performance - not so clear that compiler writers would be enthusiastic to do all the work required because the potential pay off would not be that large. But maybe for 66X gain thay may consider it.</p>
<p>Caveat - I know I am assuming no overhead here and we likley wont scale perfectly or anywhere near it at 100 cores etc. But if there are no synchronization hazards - and we reduce the locality penalties maybe these things will scale better than we imagine - does anyone have a quantitaive way to address this? Quick - can someone whip out an equation from Hannesy &amp; Patterson?</p>
<p>My point is that perhaps we should keep an open mind ot the possiblity of functional languages and hope that the "economy scale" and clever compiler writers might be able to bring a solution. The payoff ultimately would be fundamentally easier approaches to parallelism.</p>
<p>Who knows?</p>
<p>bobc</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/22/functional-languages-versus-threading/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Go Parallel - Intel Software Conferences in India</title>
		<link>http://softwareblogs.intel.com/2008/04/21/go-parallel-intel-software-conferences-in-india/</link>
		<comments>http://softwareblogs.intel.com/2008/04/21/go-parallel-intel-software-conferences-in-india/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 03:28:06 +0000</pubDate>
		<dc:creator>Preethi Raj (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Multicore]]></category>

		<category><![CDATA[Threading Building Blocks]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/21/go-parallel-intel-software-conferences-in-india/</guid>
		<description><![CDATA[We hope the Intel Software Conference - Go Parallel has been useful to you and will aid you in your pursuit to "think parallel".
Share your experiences and feedback with us. Blog and tell us what you think.
Be it your opinion on the need for threading applications, or the benefits of parallel programming or your feedback [...]]]></description>
			<content:encoded><![CDATA[<p>We hope the <em>Intel Software Conference</em> - <em>Go Parallel</em> has been useful to you and will aid you in your pursuit to "think parallel".</p>
<p>Share your experiences and feedback with us. Blog and tell us what you think.</p>
<p>Be it your opinion on the need for threading applications, or the benefits of parallel programming or your feedback on <a href="http://softwareprojects.intel.com/avx/">Intel® AVX</a> (Intel® Advanced Vector Extensions) or the contests on Intel® Software Network… Are you ready for the <a href="http://softwarecontests.intel.com/threadingchallenge/">Threading Challenge</a>? Or is the <a href="http://softwarecontests.intel.com/gamedemo/">Game Demo Contest</a> your calling?</p>
<p><strong>Blog and tell us all about it now!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/21/go-parallel-intel-software-conferences-in-india/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Some Views from the 22nd International Parallel &#38; Distributed Processing Symposium</title>
		<link>http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/</link>
		<comments>http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 02:30:22 +0000</pubDate>
		<dc:creator>Robert Chesebrough (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Multicore]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[University Curriculum]]></category>

		<category><![CDATA[Curriculum]]></category>

		<category><![CDATA[Erlang]]></category>

		<category><![CDATA[Functional Programming Language]]></category>

		<category><![CDATA[MPI]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/</guid>
		<description><![CDATA[Greetings from the 22nd International Parallel &#038; Distributed Processing Symposium in Miami!
I had the privilege of discussing the future of parallel programming with a number of distinguished luminaries in parallel computing! The topics discussed in side hall discussions and informal lunch table chats were varied and dynamic. Given that this is the first day of [...]]]></description>
			<content:encoded><![CDATA[<p>Greetings from the 22nd International Parallel &#038; Distributed Processing Symposium in Miami!</p>
<p>I had the privilege of discussing the future of parallel programming with a number of distinguished luminaries in parallel computing! The topics discussed in side hall discussions and informal lunch table chats were varied and dynamic. Given that this is the first day of the conference for the broader set of technical sessions (the NSF track actually started on Sunday) I have no doubt that there will be more intersting discussions throughout the rest of the week. Let me start my recap of the conference with one lunchtime discussion I had on day one.</p>
<p>Today I had the privilege of talking to Jack Dennis, Professor Emeritus of Computer Science and Engineering at MIT. Over cold cut sandwiches and iced-tea, we had two very interesting discussions. The first regards Professor Dennis’ Fresh Breeze Project at MIT and the second regards his view of how to prepare undergraduate students for the many core world we are now entering.</p>
<p>Fresh Breeze is multi-core chip design which supports composable parallel programming. Composable means that parallel programs should be able to be used as components in still larger parallel programs without a lot of fuss and without a detailed knowledge of the implementation details of the smaller parallel program. Composable in this context implies that resources, such as processor allocation &#038; memory, should be flexible and able to be reassigned according to the current needs of computations. This project adheres to six important principles for supporting modular software construction with a view towards composability of parallel programs:</p>
<ol>
<li>Information Hiding Principle: The user of a module must not need to know anything about the internal mechanism of the module to make effective use of it.</li>
<li>Invariant Behavior Principle: The functional behavior of a module must be independent of the site or context from which it is invoked.</li>
<li>Data Generality Principle: The interface to a module must be capable of passing any data object an application may require.</li>
<li>Secure Arguments Principle: The interface to a module must not allow side-effects on arguments supplied to the interface.</li>
<li>Recursive Construction Principle: A program constructed from modules must be usable as a component in building larger programs or modules.</li>
<li>System Resource Management Principle: Resource management for program modules must be performed by the computer system and not by individual program modules.</li>
</ol>
<p>Professor Dennis holds that his new multi-core design would be key to building modular parallel programs. For more details – see Prof Dennis’ website - <a href="http://csg.csail.mit.edu/Users/dennis/"><u><font color="#0000ff">http://csg.csail.mit.edu/Users/dennis/</font></u></a>.</p>
<p>The second topic we bantered around the table was how academia could prepare undergraduate CS students for the burgeoning parallel computational world that has been thrust upon them (and us). On this topic – I asked Professor Dennis this question – "If there were a handful of changes that academia could make to prepare undergraduates for this many core transition – what would they be"? This was his response:</p>
<ol>
<li>Teach undergraduates a functional language – yes functional as in LISP – which avoids synchronization hazards. MIT’s been teaching LISP for years. Another choice might be Erlang as it side steps synchronization hazards, is a simple language to learn and has been designed for high performance use in the communications industry</li>
<li>Teach undergraduates MPI as in Message passing Interface. This paradigm has been used successfully in large scale parallel programs already.</li>
<li>Give them a blended HW/SW computer architecture course, including multicore arhcitecture – expose them to cache architecture so they understand performance</li>
<li>Expose them to hazards like synchronization hazards and data races so they can avoid these hazards when they implement parallel designs</li>
<li>Revisit object oriented programming methodology, which is great for sequential programs, but is not well suited for structured parallel programming. A program can easily be written which follows OOP but can still exhibit a data race.</li>
<li>Teach students the concepts of atomicity, determinacy, and the difference between them. Atomicity is the concept that all or none of a transaction must be completed. Determinacy deals with achieving a correct result regardless of the order in which threads execute. Atomicity does not imply determinacy.</li>
</ol>
<p>Professor Dennis – thanks for lending me your sage advice on how to steer our curriculum efforts!</p>
<p>So now I ask YOU!</p>
<p>If there were three (or five) changes that academia could make to prepare undergraduates for this many core transition – what would they be? What is YOUR response?</p>
<p>Bob C</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/15/some-views-from-the-22nd-international-parallel-amp-distributed-processing-symposium/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Exclusive: 23 minutes of hands-on with the Lenovo and Aigo Mobile Internet Devices</title>
		<link>http://softwareblogs.intel.com/2008/04/15/exclusive-23-minutes-of-hands-on-with-the-lenovo-and-aigo-mobile-internet-devices/</link>
		<comments>http://softwareblogs.intel.com/2008/04/15/exclusive-23-minutes-of-hands-on-with-the-lenovo-and-aigo-mobile-internet-devices/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 21:30:49 +0000</pubDate>
		<dc:creator>Josh Bancroft (Intel)</dc:creator>
		
		<category><![CDATA[Atom]]></category>

		<category><![CDATA[Events]]></category>

		<category><![CDATA[Mobility]]></category>

		<category><![CDATA[devices]]></category>

		<category><![CDATA[exclusive]]></category>

		<category><![CDATA[handson]]></category>

		<category><![CDATA[hardware]]></category>

		<category><![CDATA[Intel]]></category>

		<category><![CDATA[internet]]></category>

		<category><![CDATA[labs]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[MID]]></category>

		<category><![CDATA[mobile]]></category>

		<category><![CDATA[shanghai]]></category>

		<category><![CDATA[software]]></category>

		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/15/exclusive-23-minutes-of-hands-on-with-the-lenovo-and-aigo-mobile-internet-devices/</guid>
		<description><![CDATA[OK, so I'm a couple days late, and I know I've been teasing you with photos and video "appetizers", but I hope the quality/content of these videos makes up for it. While I was in Shanghai, China last week for the Spring 2008 Intel Developer Forum, I stayed a few extra days to work with [...]]]></description>
			<content:encoded><![CDATA[<p>OK, so I'm a couple days late, and I know I've been teasing you with <a href="http://www.tinyscreenfuls.com/2008/04/world-exclusive-i-got-to-play-with-the-lenovo-and-aigo-mobile-internet-devices-mids-at-intel-shanghai/">photos</a> and <a href="http://www.tinyscreenfuls.com/2008/04/bonus-video-my-first-hands-on-with-a-mid-mobile-internet-device/">video</a> "<a href="http://www.tinyscreenfuls.com/2008/04/an-appetizer-video-of-the-lenovo-and-aigo-mids-at-intel-shanghai/">appetizers</a>", but I hope the quality/content of these videos makes up for it. While I was in Shanghai, China last week for the Spring 2008 Intel Developer Forum, I stayed a few extra days to work with the Intel Software Network China team, with the hope that I might be able to score some hands-on time with some of the Mobile Internet Devices that were shown for the first time at IDF.</p>
<p>There are only about 20 MIDs in the world today, all prototypes, and they were pretty much all at IDF. As you can imagine, access to them is jealously guarded, and they were pretty busy being shown off, participating in photo shoots, etc. My access to them got postponed, rescheduled, and moved around a lot, until one afternoon, we got the call. "You can come play with the MIDs if you can be here by 5:30pm." It was 5:00pm, and Welles and I jumped in a taxi right away, headed for the Intel Software group's Mobility Enabling Lab. I didn't have time to go back and get my "big boy" professional video gear, so these videos were shot on my pocket Aiptek Go-HD camera, secured by a GorillaPod. I think they turned out pretty well.</p>
<p>Big disclaimer: the Linux-based software for both the Lenovo and Aigo devices I used is NOT final - there are some features that aren't implemented, and performance optimizations that haven't occurred. This is NOT how they're going to be when they're released commercially. There are crashes, slowness, and missing features in these videos. Think of this as a preview of the foundations of the software - what it's capable of in general. Then squint your eyes a little and imagine the final version, a little more polished, sitting happily in your pocket. <img src='http://softwareblogs.intel.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>First up, here's a 13 minute video of the Lenovo Ideapad U8 Mobile Internet Device (MID). It's one of the more unique hardware designs, with it's flared end, special limited edition Beijing 2008 Olympic color scheme, and hardware number pad, for T9 text entry. In the video, I take a detailed look at the hardware (Intel Atom processor, two cameras - the rear one is 2.0 megapixels, SD slot, GPS, USB ports, etc.), and spend some time poking around with the software/user interface:<br />
<center><embed src="http://blip.tv/play/iHOzgnAA" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="390" width="640"></embed></center><br />
You can <a href="http://blip.tv/file/get/JoshBancroft-ExclusiveLenovoIdeapadU8MIDHandsOn13Minutes709.mp4">download the high quality (640x360) MP4 version here</a> - the file is about 153 MB. You can also embed/share the video on your own blog or site by grabbing the Show Player code from <a href="http://blip.tv/file/829447">the video's page on blip.tv</a> or by clicking "Embed" in the show player above.Next up is 10 minutes of video with the MID from Aigo. I cover pretty much the same aspects of this device in the video as I did with the Lenovo Ideapad - hardware (sliding QWERTY keyboard, two cameras - the rear one is 3.0 megapixels, MicroSD slot, USB ports, "Smart Key", etc.) and software and user interface. The Aigo device looks very similar to the Gigabyte MID, which has been <a href="http://www.tinyscreenfuls.com/2008/04/bonus-video-my-first-hands-on-with-a-mid-mobile-internet-device/">floating around</a>, making appearances. So much so that I suspect they're manufactured by the same OEM, but I didn't get any concrete information on this, so I'm just speculating. Here's the video:<br />
<center><embed src="http://blip.tv/play/iHOzg00A" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="390" width="640"></embed></center><br />
You can <a href="http://blip.tv/file/get/JoshBancroft-ExclusiveAigoMIDHandsOn10Minutes686.mp4">download the high quality (640x360) MP4 version of this video (117 MB) here</a>, and get the embed code to share the video on your own site/blog on <a href="http://blip.tv/file/829540">the video's page on blip.tv</a>, or by clicking "Embed" in the show player above.Now that you've seen the videos, I hope some of your questions have been answered. And, no doubt, you have new questions. I'll do my very best to get answers for you, so post your thoughts and questions in the comments below. Thanks for being patient while I got these videos ready. I have a TON more video content that I shot at IDF, and that will be coming out as it gets processed/edited. But this is the juicy stuff, so enjoy! <img src='http://softwareblogs.intel.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/15/exclusive-23-minutes-of-hands-on-with-the-lenovo-and-aigo-mobile-internet-devices/feed/</wfw:commentRss>
<enclosure url="http://blip.tv/file/get/JoshBancroft-ExclusiveAigoMIDHandsOn10Minutes686.mp4" length="123244053" type="video/mp4" />
<enclosure url="http://blip.tv/file/get/JoshBancroft-ExclusiveLenovoIdeapadU8MIDHandsOn13Minutes709.mp4" length="160905881" type="video/mp4" />
		</item>
		<item>
		<title>Microsoft TechEd 2008</title>
		<link>http://softwareblogs.intel.com/2008/04/15/microsoft-teched-2008/</link>
		<comments>http://softwareblogs.intel.com/2008/04/15/microsoft-teched-2008/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 20:52:56 +0000</pubDate>
		<dc:creator>Doug Holland (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/15/microsoft-teched-2008/</guid>
		<description><![CDATA[I just completed my registration for Microsoft's TechEd 2008 developers conference which will be held again in Orlando, FL. One major difference this year is that the conference has now been extended from one week to two weeks with the first week dedicated to developers and the second week to IT professionals. Apparently, Microsoft TechEd [...]]]></description>
			<content:encoded><![CDATA[<p>I just completed my registration for <a href="http://www.microsoft.com/events/teched2008/developer/default.mspx">Microsoft's TechEd 2008</a> developers conference which will be held again in Orlando, FL. One major difference this year is that the conference has now been extended from one week to two weeks with the first week dedicated to developers and the second week to IT professionals. Apparently, <a href="http://www.microsoft.com/europe/mseventseurope/default.aspx">Microsoft TechEd Europe</a> has been operating in this mode for some time now.</p>
<p>Generally speaking, I think this is a great move for attendees as the conference will be able to deliver more focused material to attendees given their area of interest. That said however, sponsors such as <a href="http://www.intel.com">Intel Corporation</a> must determine if they will have a presence at one or both of the events, and if they determine they'll be there for both then it obviously will be more expensive for them.</p>
<p>The developers conference this year will feature 16 <a href="https://www.msteched.com/dev/public/tracks.aspx">tracks</a> and the <a href="https://www.msteched.com/dev/public/sessions.aspx">session catalog</a> currently includes 635 sessions.</p>
<p>Whether you'll be attending or not, you might consider visiting <a href="http://www.virtualteched.com/pages/default.aspx">Virtual TechEd 2008</a> which will add content as the conference draws near and also during the conference itself.</p>
<p>If you are a developer using Microsoft technologies then this is without a doubt a conference you should attend, and once you've attended you'll want to go again and again.</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/15/microsoft-teched-2008/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Challenges for the future of OpenSolaris</title>
		<link>http://softwareblogs.intel.com/2008/04/15/challenges-for-the-future-of-opensolaris/</link>
		<comments>http://softwareblogs.intel.com/2008/04/15/challenges-for-the-future-of-opensolaris/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 18:50:04 +0000</pubDate>
		<dc:creator>David Stewart (Intel)</dc:creator>
		
		<category><![CDATA[Events]]></category>

		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://softwareblogs.intel.com/2008/04/15/challenges-for-the-future-of-opensolaris/</guid>
		<description><![CDATA[
I’m putting together a talk this week that I will be delivering at CommunityOne in San Francisco on May 5 on some of the work we’re doing to support Intel-based kit with OpenSolaris.  It’s great to talk about the accomplishments of many people, and how developers can take advantage of them. 
For example, I’m [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://developers.sun.com/events/communityone/" title="CommunityOne Speaker Banner by davest, on Flickr"><img src="http://farm4.static.flickr.com/3234/2417001078_9bab3f097f_o.gif" width="170" height="93" alt="CommunityOne Speaker Banner" /></a></p>
<p>I’m putting together a talk this week that I will be delivering at CommunityOne in San Francisco on May 5 on some of the work we’re doing to support Intel-based kit with OpenSolaris.  It’s great to talk about the accomplishments of many people, and how developers can take advantage of them. </p>
<p>For example, I’m sharing some photos I just took in our lab showing the test jig we use to determine how well OpenSolaris manages power across the breadth of components in the platform.  We’re able to determine a number of data points for power use, not just CPU.  It should be interesting to share the data.  (By the way, I'm indebted to the hard work of engineers here in our Open Source Technology Center for the great job they are doing to set this up and maintain it!)</p>
<p>Perhaps more interesting though is to frame up the challenges as I see them in the future for OpenSolaris.  As a matter of fact, I think a lot of my job rests on the simple challenge of identifying and solving problems.  I actually love it when folks bring me a problem and they need my help to resolve!  (Of course, it wouldn't be good if I solved all of the ones they could solve themselves.)</p>
<p>And as a community project, the OpenSolaris project now has a lot of eyes open to the successes as well as the issues.  So I’m hoping we can move as a community to take the challenges head on.  And I’m happy to be a part of the solution.</p>
<p>By the way, if you are planning to come to CommunityOne, I hope you will stop by my talk and introduce yourself.</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareblogs.intel.com/2008/04/15/challenges-for-the-future-of-opensolaris/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
