design patterns on parallel programming

design patterns on parallel programming

Hi Communitie!

I invite you to discuss about all design patterns that are involved on parallel programming!

For example: Singleton pattern

Do you know another?
Do you know a architecture pattern about parallel programming?
Would you like propuse one?( architecture, design or programming pattern )

I wait for your posts!

15 post / 0 nuovi
Ultimo contenuto
Per informazioni complete sulle ottimizzazioni del compilatore, consultare l'Avviso sull'ottimizzazione

Sandip H. Mandera
In this link:http://software.intel.com/en-us/articles/visiting-proxy-design-pattern/

Talk about proxy pattern but don't use it on parallel programming.

Do you know another articles on Intel Software network about design pattern on parallel programming?

Quoting - Jose Jesus Ambriz Meza

Sandip H. Mandera
In this link:http://software.intel.com/en-us/articles/visiting-proxy-design-pattern/

Talk about proxy pattern but don't use it on parallel programming.

Do you know another articles on Intel Software network about design pattern on parallel programming?

Hi Jose,

There is a very interesting book: "Patterns for Paralllel Programming" covering many design patterns on parallel programming, by Timothy G. Mattson, Beverly A. Sanders and Berna L. Massingill.

Besides, you can find many interesting algorithms covered in Dr. Clay Breshears' "The Art of Concurrency: A Thread Monkey's Guide to Writing Parallel Applications". A must read.

As another example, in my book "C# 2008 and 2005 Threaded Programming: Beginner's Guide", focused on C# parallel programming for beginners and talking about selected threading topics (not a full reference guide), I've used the factory method class creational pattern to create classes prepared for inheritance and hence simplifying the creation of parallelized code.Besides, another useful pattern whilst working in C# and C# 3.0 threading model is the observer object behavioral design pattern, also known as dependents and publish-subscribe. That's from my experience.

However, now that C# 4.0, .Net 4.0 and Visual Studio 2010 is in Beta 1, the new light-weight threading model allows to use many other patterns that were very difficult to use in previoous C# and .Net versions.

Cheers,

Gaston

Gastón C. Hillar

Thanks for your help Gaston!
=D

Two more questions ( please! )

(1) Do you know another references about "design pattern on parallel programming" on the web?

(2) About your response " the new light-weight threading model allows to use many other patterns that were very difficult to use in previoous C# and .Net versions"

Could you give us ( me and people that read this posts ) links or books references about this subject? Please, it's very important for the new version of MsVS2010

Best regards!
=D

jam

This night I found a mexican that work on "architectural patterns for parallel programming". I'm reading some articles and I thinks that is very interesting.

Link:http://www.cs.ucl.ac.uk/staff/J.Ortega-Arjona/research_eng.html

I hope this link will be useful for everyone!

best regards.

jam

Quoting - Jose Jesus Ambriz Meza

Thanks for your help Gaston!
=D

Two more questions ( please! )

(1) Do you know another references about "design pattern on parallel programming" on the web?

(2) About your response " the new light-weight threading model allows to use many other patterns that were very difficult to use in previoous C# and .Net versions"

Could you give us ( me and people that read this posts ) links or books references about this subject? Please, it's very important for the new version of MsVS2010

Best regards!
=D

jam

Hi Jose,

(1)
I don't know another references on the web.

(2)
I've explained how to create producer-consumer patterns using the new concurrent collections in my aforementioned book. With VS2010 and.NET 4.0, itwill be easier to use the concurrent collections to work with pipelines and producers-consumers. You won't have to worry about locks as they are lock-free concurrent collections.

I'll be working on books and on posts about these topics. I'm waiting for VS 2010 Beta 2. :)

Best regards,

Gaston

Gastón C. Hillar

Quoting - Jose Jesus Ambriz Meza

This night I found a mexican that work on "architectural patterns for parallel programming". I'm reading some articles and I thinks that is very interesting.

Link:http://www.cs.ucl.ac.uk/staff/J.Ortega-Arjona/research_eng.html

I hope this link will be useful for everyone!

best regards.

jam

Hi Jose,

Thanks for the link. Very interesting information.

Just a small issue: Most parallel patterns are designed to take advantage of old parallel architectures. With new NUMA hardware, some patterns have to be redesigned taking into account the new constraints and benefits.

However, this is something new and there's a lot of people working on new ideas for the new architectures. I'm one of them. I'll be posting my ideas on ISN.

Feel free to contact me. I'm very interested on patterns for parallel programming.

Best regards,

Gaston

Gastón C. Hillar

Quoting - Gastn C. Hillar
Hi Jose,

Thanks for the link. Very interesting information.

Just a small issue: Most parallel patterns are designed to take advantage of old parallel architectures. With new NUMA hardware, some patterns have to be redesigned taking into account the new constraints and benefits.

However, this is something new and there's a lot of people working on new ideas for the new architectures. I'm one of them. I'll be posting my ideas on ISN.

Feel free to contact me. I'm very interested on patterns for parallel programming.

Best regards,

Gaston

Hi Jose (and everyone),

Another interesting source on work towards parallel design patterns is being done at the ParLab at the University of California Berkeley. The Labunder the leadership ofKurt Keutzer & Dave Pattersonis funded by Intel and Microsoft.

Lab URL - http://parlab.eecs.berkeley.edu/
Link toLab wiki on Pattern Language for Parallel Programming- http://parlab.eecs.berkeley.edu/wiki/patterns/patterns

Hi Gastn!

Thanks for your reply, I'm try to get your books and I'm wating the news!
=D

jam

Hi Gaston!

About NUMA, these are links for introduction of this technology:

[1]David E. Ott.Optimizing Software Applications for NUMA. DDJ Magazine.
http://www.ddj.com/go-parallel/article/showArticle.jhtml?articleID=21840...



[2] Jie Tao, Martin Schulz, Wolfgang karl.SIMT/OMP : A toolset to study and exploit memory locality for OpenMP Applications on NUMA Architectures.Springer Verlag.
http://books.google.com.mx/books?id=5ZlVI1bHMMgC&pg=PA41&lpg=PA41&dq=%2B...


I'll check if the last references ( mexican investigator ) don't used NUMA.

Best regards.

jam

Hi Paul!

Thanks you for your links!

In the first is included one article of ACM on October 2009, this is now!
=D

Best regards

jam

Hi Jose and Paul,

Thanks for the link. All of them are really interesting.

Let me add a new one. Today, Michael McCool (Intel, co-founder of RapidMind) added a blog post on ISN talking about... patterns for parallel programming!

This is the link to his post: http://software.intel.com/en-us/blogs/2009/10/08/on-platforms-patterns-and-parallelism/

It is also worth taking a look at his series Structured Patterns: A Basis for a High-Level Parallel Programming Standard

Great post and great information. :)

Cheers,

Gaston

Gastón C. Hillar

Hi Gaston, I was checking your last links and those patterns are not the same patterns of the begining.

Those patterns are only on programming level for detect parallel programming, but in the firsts posts we talked about singleton design pattern and those links are differents. But I recognize that those patterns are interesting

thanks for all,

best regards

jam

Quoting - Jose Jesus Ambriz Meza

Hi Gaston, I was checking your last links and those patterns are not the same patterns of the begining.

Those patterns are only on programming level for detect parallel programming, but in the firsts posts we talked about singleton design pattern and those links are differents. But I recognize that those patterns are interesting

thanks for all,

best regards

jam

I think the new perspective on design patterns are not only object-oriented ones. Patterns are accumulated in every aspect of software development. Posts on the RapidMind blogs are very interesting and mind-broadening anyway.

Quoting - vu64

I think the new perspective on design patterns are not only object-oriented ones. Patterns are accumulated in every aspect of software development. Posts on the RapidMind blogs are very interesting and mind-broadening anyway.

Hi!

It's correct your comment "design patterns are not only object-oriented" they exists in the first day when programming born.

Best regards

jam

Lascia un commento

Eseguire l'accesso per aggiungere un commento. Non siete membri? Iscriviti oggi