Identify all of the data dependencies


3.a) Consider the following sequential code segment:
S1: x = (b - e) (e + c)
S2: a = 2d (d + c)
S3: z = z (x + a)
S4: c = e (f - b)
S5: y = a + 2f - b
(a) Identify all of the data dependencies and what type they are.
(b) To the extent that it is possible, show how the code can be parallelized
if an unlimited number of necessary arithmetic units (e.g. multiply,
add, etc.) are available. (Note that to show them running in parallel,
you can simply list them on the same line. To show them in sequence,
list them on different lines.)
b)7. MPI: An alternative to a butter?y-structured allreduce is a ring-pass struc- ture. In this case, given p processes, each process q sends data to its neigh- bor q +1, exceptforprocess p-1,whichsendsitsdatatoprocess0. Write a C program fragment, using MPI, that implements a allreduce using ring- pass, but ensure it is deadlock free. Assume that npes and myrank have been established.
c)Explainwhatthepowerwall,thememorywall,andtheILPwallarerelative to serial performance. In an attempt to overcome these, we have improved parallelarchitecturesbutalsoneedimprovedsoftwaretotakeadvantage. In addition, explain what is meant by "integrating concurrency and coordina- tion into traditional languages", citing speci?c examples from FORTRAN.

Request for Solution File

Ask an Expert for Answer!!
Basic Computer Science: Identify all of the data dependencies
Reference No:- TGS080844

Expected delivery within 24 Hours