Given in file 6.c is a simple C code. What kind of dependency exists in the statement inside the loop? Can this loop be vectorized? How could this loop be vectorized? Can you link your observation with 'vectorization factor', and its influence in vectorization? Modify the code to change the vectorization decision.
In file 7.c, what dependency exists in the statements inside the loop? Can this loop be vectorized? Is any sort of dependency induced because of the second statement? Can you think of a better way to speed up the execution of this code without modifying the code?
Given in file 8.c is a C code. The induction variable of inner loop is j. Is this code efficient in terms of array storage in C? How can you speed up the execution of the code without making any changes to the program?
Try to parallelize the C code in file 9.c with both Graphite framework and Lambda framework. Which of the frameworks do you think gave the correct result?
Parallelize the code in file 10.c with both Graphite framework and Lambda framework. Which of the frameworks do you think gave the correct result? What accounts for this difference?
Given in file 11.c is a simple C code. Can this code be parallelized in Lambda framework? Why? Does Graphite Framework perform any better?
The code in file 12.c is similar to the code in file 8.c, with a minor difference in the array subscript. Can you also transform the code as you did in Question 8? Reason out your observation.