Wednesday, November 4, 2009

Pipeline, Geometric Decomposition, Data Parallelism

Three of the readings for tomorrow's class are on parallel algorithm strategy patterns. We discussed a few of these in yesterday's class as well. The three for discussion tomorrow are the pipeline, geometric decomposition and data parallelism patterns.

The pipeline pattern is probably the pattern that I had heard/read the most about previously. This pattern is as you would expect; stages of the pipeline are executed concurrently to exploit the parallelism present.

The geometric decomposition pattern breaks the input problem space/data structure into chunks and processes the chunks in parallel. Some of the concerns with this pattern are in regards to chunk granularity and data dependencies between chunks.

The data parallelism pattern writeup could us a bit more detail :). Data parallelism exploits situations where the same computation is performed on different input data. These computations can then run concurrently.

Having read numerous parallel patterns over the past few weeks, I think I have done myself a bit of a disservice by not having programmed on any large scale parallel systems. I think having some real world experience in this area would go a long way with understanding these patterns.

No comments:

Post a Comment