<?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>Thinking in G &#187; parallel programming</title>
	<atom:link href="http://thinkinging.com/category/parallel-programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://thinkinging.com</link>
	<description>an unfiltered stream of data flow consciousness</description>
	<lastBuildDate>Fri, 02 Oct 2009 23:51:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>LabVIEW and the Multicore Crisis</title>
		<link>http://thinkinging.com/2007/09/19/labview-and-the-multicore-crisis/</link>
		<comments>http://thinkinging.com/2007/09/19/labview-and-the-multicore-crisis/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 07:01:44 +0000</pubDate>
		<dc:creator>Jim Kring</dc:creator>
				<category><![CDATA[LabVIEW]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[multicore]]></category>
		<category><![CDATA[parallel programming]]></category>

		<guid isPermaLink="false">http://thinkinging.com/2007/09/19/labview-and-the-multicore-crisis/</guid>
		<description><![CDATA[
  


Software developers and technologists everywhere are beginning to discuss the
looming "multicore crisis".&#160; In a nutshell, this crisis stems from the
fact that
processors
are no longer getting faster due to heat issues; they are just getting
cheaper, so, we're putting more of them in a single computer.&#160; Today's
multicore processors look like a single chip, but actually have [...]]]></description>
			<content:encoded><![CDATA[<div style="TEXT-ALIGN:center">
  <img alt="multicore.jpg" id="image267" src="http://thinkinging.com/wp-content/uploads/2007/09/multicore_scaled.png"/><br/>
</div>
<br/>
Software developers and technologists everywhere are beginning to discuss <b>the
looming "multicore crisis"</b>.&nbsp; In a nutshell, this crisis stems from the
fact that
<a href="http://smoothspan.wordpress.com/2007/09/06/a-picture-of-the-multicore-crisis/" id="skzi" title='"A Picture of the Multicore Crisis" on the SmoothSpan Blog'>processors
are no longer getting faster</a> due to heat issues; they are just getting
cheaper, so, we're putting more of them in a single computer.&nbsp; Today's
multicore processors look like a single chip, but actually have several
processors that run in parallel.&nbsp; Unfortunately, most software was written
in such a way that it cannot take advantage of multicore processors.&nbsp; That
means, <b>most software programs that exist today will not run any faster on the
latest and greatest computers 10 years from now</b>, assuming that clock speed
continues to remain constant.&nbsp; They are frozen in time like dinosaurs,
doomed to extinction -- and, that's the crisis.<br/>
<br/>
Now, why can't most software run on more than one processor core?&nbsp; The
answer is that <b>most traditional, text-based programming languages do not have
easy ways to program applications that can execute different parts in parallel
on multiple processor cores</b> -- they are written as one big loop of
sequentially executing code that can only run on a single processor.&nbsp; And,
many text-based programmers do not map problems
<span style="BACKGROUND-COLOR:#ffffff">into a parallel solution space --
parallelism isn't part of their programming toolbox.</span><br/>
<br/>
Now, if you're like me, you're probably thinking, "<b>I'm sure glad that I
program in LabVIEW, which is inherently parallel.</b>"&nbsp; The LabVIEW
programming language is parallel at it's heart, with software written on a
two-dimensional, graphical canvas of parallel data flow.&nbsp; At
<a href="http://ni.com/niweek" id="csfx" title="NIWeek 2007">NIWeek 2007</a>, NI
<a href="http://thinkinging.com/2007/09/24/labview-multicore-benchmark-demo/" id="iu5k" title="LabVIEW Multicore Benchmark Demo">demonstrated
a simple application</a> written in LabVIEW, which had three While Loops
communicating with each other: acquiring, processing, and presenting data.&nbsp;
They demonstrated how the application executed 3.8x faster when running on 4
cores as it did when running on 1 core -- that's a nearly linear increase in
performance.&nbsp; While more complicated applications will, of course, have a
hard time scaling linearly, this achievement by NI is remarkable.<br/>
<br/>
To learn more about how LabVIEW's parallelism allows code to take advantage of
multicore processors, you should definitely read NI's white paper,
<a href="http://zone.ni.com/devzone/cda/tut/p/id/6421" id="jy:k" title="Programming Strategies for Multicore Processing: Data Parallelism">Programming
Strategies for Multicore Processing: Data Parallelism</a>.<br/>
<br/>
Concurrent, parallel, and distributed software applications are rapidly moving
to the forefront of the software engineering word.&nbsp; The community of
text-based programming experts are struggling to find ways to deal with this
problem with their tools of choice and some are predicting that it will take a
decade before their tools are ready.&nbsp; Aren't you glad that LabVIEW, which
has been parallel since 1986, is 30 years ahead of them?<br/>
<br/>
<b>External Links:</b>
<ul>
  <li>
    <a href="http://zone.ni.com/devzone/cda/tut/p/id/6421" id="jy:k" title="Programming Strategies for Multicore Processing: Data Parallelism">Programming
    Strategies for Multicore Processing: Data Parallelism</a>
  </li>
  <li>
    <a href="http://outsideinnovation.blogs.com/pseybold/2007/08/the-future-of-p.html" id="pd3g" title="The Future of Programming and Innovation">The
    Future of Programming and Innovation</a>
  </li>
  <li>
    <a href="http://smoothspan.wordpress.com/2007/09/06/a-picture-of-the-multicore-crisis/" rel="bookmark" title=" A Picture of the Multicore Crisis">A
    Picture of the Multicore Crisis</a>
  </li>
  <li>
    <a href="http://smoothspan.wordpress.com/2007/08/30/youve-already-had-a-multicore-crisis-and-just-didnt-realize-it/" rel="bookmark" title=" You’ve Already Had a Multicore Crisis and Just Didn’t Realize It!">You’ve
    Already Had a Multicore Crisis and Just Didn’t Realize It!</a>
  </li>
  <li>
    <a href="http://ni.com/niweek" id="csfx" title="NIWeek 2007">NIWeek 2007</a>
  </li>
</ul>
<br/>
<br/>]]></content:encoded>
			<wfw:commentRss>http://thinkinging.com/2007/09/19/labview-and-the-multicore-crisis/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
