13.1 Compiling for RISC Machines

13.2 Compiling in a Parallel Processing Environment

13.3 Compiling in a Fault-Tolerant Environment

13.4 Summary

Web References

Exercises

E-Mail

Module 13 exercises

1. Using the related reading as a starting point, research the number of instructions, addressing modes, etc. of RISC machines. Distinguish between prototype machines and commercially available systems.

2. What phases and techniques in a compiler aid in the process of pipelining?

3. Can the following statements be executed in parallel. Why or why not?

                                    
    (a)  X := B + 1
         B := Y + 2
    

    (b) X := 2 Y := X + 1 X := 3

4. A program is vectorizable if it can be executed correctly on a set of tightly coupled (synchronized) processors; a program is concurrentizable if it can be executed correctly on a set of loosely coupled (asynchronous) processors.

Which of these descriptions is applicable to each of these FORTRAN code segments?

                                  
    (a) DO 10 I = 1, 100
     10 A(I) = A(I) + B(I) * C(I)
    

    (b) DO 10 I = 2, 100 10 A(I) = A(I - 1) + B(I) * C(I)

    (c) DO 10 I = 1, 99 10 A(I) = A(I + 1) + B(I) * C(I)