Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼

James Reinders

Dr. Dobb's Bloggers

Parallelism/Concurrency, a key topic to consider

February 28, 2008

My first contribution to Dobbs Code Talk is to add a TAG for Parallel Programming (Parallelism/Concurrency). With multi-core processors in nearly all new computers, there are few topics which will have more impact on the essence of what it means to be a programmer in this next decade. So, I'm not talking about parallelism for just the High Performance Computing programmers - I'm talking about parallelism for all of us.

A couple years ago, I penned a note:

Think Parallel, or Perish

not so much as a warning to others, but as a note to myself that this was the lot we all face as software developers.

As things stand now I can't imagine anyone claiming to be a software developer a decade from now without be somewhat knowledgable about parallelism. In fact, inside a decade, I think that all programmers will claim to have written some concurrent programming one way or another.

I've seen a big shift in these past two years. At the end of 2005, dual-core was so new that very few programmers knew about the shift to ubiquitous parallelism which was starting. By the end of 2006, as everyone started to see dual-core as common , programmers almost universally told me that they weren't doing concurrency because it wasn't needed. Late in 2007, my team did a poll of developers who were not convinced in 2006 - and who still were not doing parallelism work. Only a quarter said it wasn't needed - the rest gave other excuses for not yet doing parallelism. The most common reason (about half) was that they couldn't squeeze the work into their schedule yet. Realtively few (under 15%) claimed that being too hard was the key reason for not yet adding parallelism to their application.

What does it mean? I think parallelism is on our minds - but not so urgent yet that we need to panic and rush to act. Many developers are adding parallelism now, in fact more than we expected... but it is still a minority of us who are writing parallel programs. But we are all starting to at least acknowledge it is in our future.

The early bird gets the worm.

It is a perfect time to experiment, learn - and help lead. It is an advantage available to us all - just like those who jumped into the internet craze early - and figured out it wasn't that hard. Those who jumped in early, helped lead.

I'll take the opportunity to share thoughts and discuss how we do this - on Dobb's Code Talk. 'nuff for now.

To paraphrase an Oldsmobile ad, "It's not your father's parallel programming."

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.