CMSC 714
Midterm (Fall 2006)
(1) This exam is closed book, closed notes, and
closed neighbor.
(2) You
have 70 minutes to complete this exam.
If you finish early, you may turn in your exam at the front of the room
and leave. However if you finish during
the last ten minutes of the exam please remain seated until the end of the exam
so you don't disturb others.
(3) Write
all answers in the supplied exam booklet. Start each new problem (but not
sub-problem) on a new page.
(4) Partial
credit will be given for most questions assuming I can figure out what you were
doing.
(5) Please
write neatly. Print your answers if your handwriting is hard to read. If you
write something, and wish to cross it out, simply put an X through it.
1. (25 points)
Define and explain the following terms:
A. Super Linear Speedup
B. Weak Scaling
C. Split-phase Barrier
D. Happens Before Relationship
2. (15 points) Explain how and why space filling curves can
be used to improve locality at multiple levels of the memory hierarchy.
3. (20 points) Hardware support can greatly help the
performance of one-sided communication in MPI-2.
A. Explain how hardware can assist with one-sided communications. Give examples of systems discussed in class
that provide this assistance.
B. Explain how software could implement this feature without hardware
assist.
4.(20 points) Runtime adaptation of
computation is often useful to improve program performance.
A. Give two examples of things can be tuned at runtime and what is
required from the application to allow these changes to be made.
B. Explain the tradeoffs between having humans in the runtime tuning loop
and having this process fully automated.
5.(20 points) Blue Gene
A. Blue Gene has 5 different networks.
Describe three of them and explain why they are there and what topology
they use.
B. Blue Gene runs a special purpose micro-kernel on the nodes. Explain the advantages and disadvantages of
this approach compared to running a conventional Unix style kernel on the
compute nodes.