1. So! What’s Moore’s Law?
The number of transistors that can be inexpensively integrated in one circuit will double approximately every 18 months.
2. So! What are the main challenges for parallel computing?
How to come up with corresponding programming platforms, algorithm, application design that effectively use the hardware architecture.
3. So! How’s communication happening in parallel computing?
There are two ways to enable communication: message passing and shared address space? (Message passing invokes explicit protocols to communicate with each other while shared address space implicitly communicate via a common piece of memory).
4. So! What is parallel algorithm? Give some examples.
A parallel algorithm cuts itself into pieces, each of which is consumed by individual processing devices before these pieces are eventually put back together to obtain the final results.
Examples: ray tracing (data parallel), parallel quicksort (task parallel), pipeline (graphics pipeline), web server (work pool), etc.
5. So! What are the pitfalls of parallel computing?
Synchronization (is there a lock?), efficiency (is the parallelism maximally exploited) and reliability (is the result correct? If not, can we debug it?).