views:

523

answers:

3

Is there a difference between multithreaded and parallel programming?

If related (which I guess they are) is parallel programming the successor of multithreaded programming in terms of terminology?

The reason I am asking is because I want to buy a book on one (maybe both) of the above.

+6  A: 

Properly speaking, multithreading is a type of parallelism, so parallel programming would include multithreading. Other types of parallelism include multiprocessing (where you use multiple processes that communicate with each other) and distributed computing (where tasks run on different computers).

I recommended a few books on parallelism in response to another question, and others provided useful suggestions as well. It's a huge area of study, though, so there are a lot of books and no one book can even begin to cover everything.

James McNellis
A: 

The meta-question is to recommend a book on Parallelism or Multithreaded programming.

I'd recommend you borrow both books from a library instead of buying either.

If you give titles of books, or you are specific about what you are wanting to learn, and you make this a 'community wiki', then I think you'll get a lot more information from other posters.

Will
A: 

http://insomnia.cc.gt.atl.ga.us:8080/cse6230-hpcta-fa08/assignments

Check out the slides on 'Reasoning about Parallelism', 'Programming models' , 'Parallel Architectures'

Arvind