question archive Given the following code:for (i=2;i<100;i=i+1) a[i] = b[i] + a[i]; /* S1 */ c[i-1] = a[i] + d[i]; /* S2 */ a[i-1] = 2 * b[i]; /* S3 */ b[i+1] = 2 * b[i]; /* S4 */ a

Given the following code:for (i=2;i<100;i=i+1) a[i] = b[i] + a[i]; /* S1 */ c[i-1] = a[i] + d[i]; /* S2 */ a[i-1] = 2 * b[i]; /* S3 */ b[i+1] = 2 * b[i]; /* S4 */ a

Subject:Computer SciencePrice: Bought3

Given the following code:for (i=2;i<100;i=i+1) a[i] = b[i] + a[i]; /* S1 */

c[i-1] = a[i] + d[i]; /* S2 */

a[i-1] = 2 * b[i]; /* S3 */

b[i+1] = 2 * b[i]; /* S4 */

a. List all the dependencies by their types (TD: true-data, AD: anti-data, OD: output-data dependencies).

b. Show how Software Pipelining can exploit parallelism in this code to its fullest potential. How many functional units would be sufficient to achieve the fastest execution time?

c. Is this a parallel loop? If not, can it be parallelized? How?

pur-new-sol

Purchase A New Answer

Custom new solution created by our subject matter experts

GET A QUOTE