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.
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.
(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
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.
(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, it will 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. :)
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.
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.
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 Lab under the leadership of Kurt Keutzer & Dave Patterson is funded by Intel and Microsoft.
Lab URL - http://parlab.eecs.berkeley.edu/ Link to Lab wiki on Pattern Language for Parallel Programming - http://parlab.eecs.berkeley.edu/wiki/patterns/patterns
[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.
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!
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
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.
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.