<?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 for Thinking Parallel</title>
	<atom:link href="http://www.thinkingparallel.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thinkingparallel.com</link>
	<description>A Blog on Parallel Programming and Concurrency by Michael Suess</description>
	<pubDate>Sat, 25 May 2013 12:55:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Scoped locking vs. critical in OpenMP - a personal shootout by Some random guy</title>
		<link>http://www.thinkingparallel.com/2006/08/21/scoped-locking-vs-critical-in-openmp-a-personal-shootout/comment-page-1/#comment-99156</link>
		<dc:creator>Some random guy</dc:creator>
		<pubDate>Fri, 05 Apr 2013 12:35:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2006/08/21/scoped-locking-vs-critical-in-openmp-a-personal-shootout/#comment-99156</guid>
		<description>If data is passed as arguments, then the per-thread stack is used, then each thread gets the local copy of the data (in this case copy of reference to data). Therefore no synchronization is needed, unless rand() is not thread-safe. Then however common lock on all threads is required.</description>
		<content:encoded><![CDATA[<p>If data is passed as arguments, then the per-thread stack is used, then each thread gets the local copy of the data (in this case copy of reference to data). Therefore no synchronization is needed, unless rand() is not thread-safe. Then however common lock on all threads is required.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Contact by Stella Fair</title>
		<link>http://www.thinkingparallel.com/contact/comment-page-1/#comment-99155</link>
		<dc:creator>Stella Fair</dc:creator>
		<pubDate>Thu, 04 Apr 2013 13:15:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/contact/#comment-99155</guid>
		<description>It’s a fact:  more people find out about your business on Facebook or Twitter than on search engines.  Making these sites work maybe tricky for you, but it’s business as usual for us.  Let us improve your visibility and enhance your image.  It’s part of our complete  Internet Marketing package.  We’ll be more than your friends --- we’ll be your partners.</description>
		<content:encoded><![CDATA[<p>It’s a fact:  more people find out about your business on Facebook or Twitter than on search engines.  Making these sites work maybe tricky for you, but it’s business as usual for us.  Let us improve your visibility and enhance your image.  It’s part of our complete  Internet Marketing package.  We’ll be more than your friends &#8212; we’ll be your partners.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Please Don&#8217;t Rely on Memory Barriers for Synchronization! by Hugh</title>
		<link>http://www.thinkingparallel.com/2007/02/19/please-dont-rely-on-memory-barriers-for-synchronization/comment-page-1/#comment-99069</link>
		<dc:creator>Hugh</dc:creator>
		<pubDate>Wed, 16 Jan 2013 20:10:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/02/19/please-dont-rely-on-memory-barriers-for-synchronization/#comment-99069</guid>
		<description>I think there are valuable issues discussed in each of these articles. let me say that from the outset.

However Mike's article's title discourages the use of memory barriers for synchronization whereas the article by Fish isn't really about synchronization but ordering.

A barrier never causes a thread to block and never can under any circumstances - whereas a lock can and will sometimes cause a thread to block - by design.

Ordering and synchronization are different issues and should not be lumped together as they seem to be here.

Look that simple example in this wikipedia write-up:

http://en.wikipedia.org/wiki/Memory_barrier

If the barrier operations are inserted correctly then no lock is required, period; and there never will be any performance impact that we might get with a lock (yes there may be a tiny degradation because we are denying the processor the opportunity to reorder as it sees fit - but this will be tiny).

The simple wikipedia example could be solved with a lock of some form but why do that when it is only the ordering that is an issue?

This is one of the problems I see often with all this - there are several issues at play typically and the problem at hand must be 100% understood.</description>
		<content:encoded><![CDATA[<p>I think there are valuable issues discussed in each of these articles. let me say that from the outset.</p>
<p>However Mike&#8217;s article&#8217;s title discourages the use of memory barriers for synchronization whereas the article by Fish isn&#8217;t really about synchronization but ordering.</p>
<p>A barrier never causes a thread to block and never can under any circumstances - whereas a lock can and will sometimes cause a thread to block - by design.</p>
<p>Ordering and synchronization are different issues and should not be lumped together as they seem to be here.</p>
<p>Look that simple example in this wikipedia write-up:</p>
<p><a href="http://en.wikipedia.org/wiki/Memory_barrier" rel="nofollow">http://en.wikipedia.org/wiki/Memory_barrier</a></p>
<p>If the barrier operations are inserted correctly then no lock is required, period; and there never will be any performance impact that we might get with a lock (yes there may be a tiny degradation because we are denying the processor the opportunity to reorder as it sees fit - but this will be tiny).</p>
<p>The simple wikipedia example could be solved with a lock of some form but why do that when it is only the ordering that is an issue?</p>
<p>This is one of the problems I see often with all this - there are several issues at play typically and the problem at hand must be 100% understood.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on How-to Split a Problem into Tasks by mteffaha</title>
		<link>http://www.thinkingparallel.com/2007/09/06/how-to-split-a-problem-into-tasks/comment-page-1/#comment-99021</link>
		<dc:creator>mteffaha</dc:creator>
		<pubDate>Fri, 26 Oct 2012 21:16:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/09/06/how-to-split-a-problem-into-tasks/#comment-99021</guid>
		<description>very nice explanation , even though it's a little bit too late i would like to mention that  there is another kind of decomposition i have seen in school recently wich is pipeline decomposition where we have multiple tasks each handling a data entry and passing it to the next task.</description>
		<content:encoded><![CDATA[<p>very nice explanation , even though it&#8217;s a little bit too late i would like to mention that  there is another kind of decomposition i have seen in school recently wich is pipeline decomposition where we have multiple tasks each handling a data entry and passing it to the next task.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Breaking Out of Loops in OpenMP by How to resolve &#8220;return 0 or return 1&#8243; within a for loop in open mp? &#124; Jisku.com - Developers Network</title>
		<link>http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/comment-page-1/#comment-99005</link>
		<dc:creator>How to resolve &#8220;return 0 or return 1&#8243; within a for loop in open mp? &#124; Jisku.com - Developers Network</dc:creator>
		<pubDate>Thu, 13 Sep 2012 21:58:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/#comment-99005</guid>
		<description>[...] this is the site i refer to, i used to follow their way : http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/#reply [...]</description>
		<content:encoded><![CDATA[<p>[...] this is the site i refer to, i used to follow their way : <a href="http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/#reply" rel="nofollow">http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/#reply</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A Short Guide to Mastering Thread-Safety by mathk</title>
		<link>http://www.thinkingparallel.com/2006/10/15/a-short-guide-to-mastering-thread-safety/comment-page-1/#comment-98990</link>
		<dc:creator>mathk</dc:creator>
		<pubDate>Tue, 31 Jul 2012 12:24:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2006/10/15/a-short-guide-to-mastering-thread-safety/#comment-98990</guid>
		<description>You 've said that
 " Therefore, they are able to write to the exact same memory location at the same time. I have explained why this is a problem"

I am not totally agree on that because there is some situation where when two thread write to the same location it still thread safe. For example suppose that you want to do something when one of your child thread have finish a job. In this situation you could decide to have a shared boolean and the order at which thread write to it does not mater. I think the definition of thread safety-ness need thorough explanation.</description>
		<content:encoded><![CDATA[<p>You &#8216;ve said that<br />
 &#8221; Therefore, they are able to write to the exact same memory location at the same time. I have explained why this is a problem&#8221;</p>
<p>I am not totally agree on that because there is some situation where when two thread write to the same location it still thread safe. For example suppose that you want to do something when one of your child thread have finish a job. In this situation you could decide to have a shared boolean and the order at which thread write to it does not mater. I think the definition of thread safety-ness need thorough explanation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Breaking Out of Loops in OpenMP by Breaking out of an OpenMP parallel for loop &#124; Sascha Schnepp</title>
		<link>http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/comment-page-1/#comment-98953</link>
		<dc:creator>Breaking out of an OpenMP parallel for loop &#124; Sascha Schnepp</dc:creator>
		<pubDate>Thu, 10 May 2012 20:45:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/06/29/breaking-out-of-loops-in-openmp/#comment-98953</guid>
		<description>[...] just found this short but very helpful article on how to break an OpenMP parallel for loop. The key is the omp flush directive. Hopefully this [...]</description>
		<content:encoded><![CDATA[<p>[...] just found this short but very helpful article on how to break an OpenMP parallel for loop. The key is the omp flush directive. Hopefully this [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on C++ vs. C# - a Checklist from a C++ Programmers Point of View by Isaac T</title>
		<link>http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/comment-page-3/#comment-98949</link>
		<dc:creator>Isaac T</dc:creator>
		<pubDate>Sun, 06 May 2012 03:27:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/#comment-98949</guid>
		<description>I am a C# programmer and am currently teaching myself C++. I haven't read all the comments so forgive me if I retread over something already stated. Your choice of programming languages deal more with what you plan to program, not simple pros and cons. If you want to create high perfomance graphics programs for Windows, I recommend C++, If you are creating non-graphics intensive applications C# is great. Learn Java, HTML, or XAML for web.

I learned C# in college. I am learning C++ so I can program DirectX-based apllications. The platform for which you want to program is far more important than a few pros and cons.</description>
		<content:encoded><![CDATA[<p>I am a C# programmer and am currently teaching myself C++. I haven&#8217;t read all the comments so forgive me if I retread over something already stated. Your choice of programming languages deal more with what you plan to program, not simple pros and cons. If you want to create high perfomance graphics programs for Windows, I recommend C++, If you are creating non-graphics intensive applications C# is great. Learn Java, HTML, or XAML for web.</p>
<p>I learned C# in college. I am learning C++ so I can program DirectX-based apllications. The platform for which you want to program is far more important than a few pros and cons.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on C++ vs. C# - a Checklist from a C++ Programmers Point of View by Rhonald Moses</title>
		<link>http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/comment-page-3/#comment-98942</link>
		<dc:creator>Rhonald Moses</dc:creator>
		<pubDate>Sun, 01 Apr 2012 04:35:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/#comment-98942</guid>
		<description>To begin with: Congrats! this thread is 6 years old and still active  :grin: 

Again, it's what you want to do comes first and then comes what you want to use to get what you want, then the third, how good are you with what you want to use to get what you want.

So, even if you want hardware level interaction, but you are good with C# than C++ (let's agree, most of the guys haven't used C++ except for colleges), try to figure our what are the libraries that supports the level of programming you want (unsafe namespace with pointers inside for example).

If you are well versed with C++ (or willing to spend some time to learn it), then I'd suggest you to go for C++.

Again, it's what you want, with what you want and how comfortable are you with what you want to use to get what you want.

 :mrgreen:</description>
		<content:encoded><![CDATA[<p>To begin with: Congrats! this thread is 6 years old and still active  <img src='http://www.thinkingparallel.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':grin:' class='wp-smiley' /> </p>
<p>Again, it&#8217;s what you want to do comes first and then comes what you want to use to get what you want, then the third, how good are you with what you want to use to get what you want.</p>
<p>So, even if you want hardware level interaction, but you are good with C# than C++ (let&#8217;s agree, most of the guys haven&#8217;t used C++ except for colleges), try to figure our what are the libraries that supports the level of programming you want (unsafe namespace with pointers inside for example).</p>
<p>If you are well versed with C++ (or willing to spend some time to learn it), then I&#8217;d suggest you to go for C++.</p>
<p>Again, it&#8217;s what you want, with what you want and how comfortable are you with what you want to use to get what you want.</p>
<p> <img src='http://www.thinkingparallel.com/wp-includes/images/smilies/icon_mrgreen.gif' alt=':mrgreen:' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on C++ vs. C# - a Checklist from a C++ Programmers Point of View by Eric</title>
		<link>http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/comment-page-3/#comment-98941</link>
		<dc:creator>Eric</dc:creator>
		<pubDate>Sun, 01 Apr 2012 04:33:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.thinkingparallel.com/2007/03/06/c-vs-c-a-checklist-from-a-c-programmers-point-of-view/#comment-98941</guid>
		<description>RedCopper: I agree, it doesn't really make much sense to say something like "Real programmers use C++", as we should really just use the best tool for the job.

Over time, I've started to feel like these "language 1 vs. language 2" threads are bait for a flame war more than anything.</description>
		<content:encoded><![CDATA[<p>RedCopper: I agree, it doesn&#8217;t really make much sense to say something like &#8220;Real programmers use C++&#8221;, as we should really just use the best tool for the job.</p>
<p>Over time, I&#8217;ve started to feel like these &#8220;language 1 vs. language 2&#8243; threads are bait for a flame war more than anything.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
