You need not submit your answers. These problems are provided as practice with parallel algorithms. You should make sure you understand these problems before you take the final exam.
8 42 23 1 44 16 3 10 4 5 99 49 77 7 14 35
Here is IBM's description of the computer: "Blue Gene will consist of more than one million processors, each capable of one billion operations per second (1 gigaflop). Thirty-two of these ultra-fast processors will be placed on a single chip (32 gigaflops). A compact two-foot by two-foot board containing 64 of these chips will be capable of 2 teraflops, making it as powerful as the 8000-square foot ASCI computers. Eight of these boards will be placed in 6-foot-high racks (16 teraflops), and the final machine (less than 2000 sq. ft.) will consist of 64 racks linked together to achieve the one petaflop performance."
Suppose you are developing software to run on today's supercomputers (consider the ASCI-class computers we discussed) but you would also like to be sure your software will be able to run efficiently on Blue Gene when it becomes available. What factors would influence your software design and how would you approach the problem? Do you think it is reasonable to expect software which is efficient on today's supercomputers to be efficient on the next generation of supercomputers without significant modification?