Any 2 of the 3 problems mentioned in assignment document were required to be submitted. I solved P1 and P2.
Implement Blelloch’s scan algorithm and Hillis and Steele’s algorithm using MPI
. You can take a list of numbers in a file input.txt
.
-
Draw a task dependency graph for the parallel tasks. Identify opportunities for data paralelism, functional parallelism or pipelining. What is degree of concurrency?
-
Explain your design in translating the identified parallelism into
MPI
. -
Compute speedup, efficiency, cost and isoefficiency metrics in terms of
n
, andp
wheren
is number of data elements andp
is number of processors. -
Findout whether these algorithms are cost-optimal?
-
Evaluate the speedup and efficiency by running your program for a range of processes.
- Design Document (
.pdf
). Must contain answers for 1-5. - Source code
blelloch.c
andhillis.c
Consider a text file (of atleast 1 MB in size) to be encoded using Huffman codes. Now consider parallel algorithms for encoding a given text file and decoding a given encoded file respectively.
-
Draw a task dependency graph for the parallel tasks. Identify opportunities for data paralelism, functional parallelism or pipelining. What is degree of concurrency?
-
Explain your design in translating the identified parallelism into
Pthreads
. -
Compute speedup, efficiency, cost and isoefficiency metrics in terms of
n
, andp
wheren
is number of data elements andp
is number of processors. -
Findout whether these algorithms are cost-optimal?
-
Evaluate the speedup and efficiency by running your program for a range of processes.
-
Using
Pthreads
, devise and implement algorithms for encoding and decoding. -
Taking any open source serial implementation, apply
OpenMP
directives for encoding and decoding. -
Compare speedup between 6 and 7
- Design Document (
.pdf
) explaining your design. Must contain answers for 1-5 and 8. - Source code for 6:
encode_pthreads.c
,decode_pthreads.c
- Source code for 7:
encode_openmp.c
,decode_openmp.c