1 / 16

6/19/2006 Dr Steve Hunter

Architecture of Parallel Computers CSC / ECE 506 Summer 2006 Scalable Programming Models Lecture 11. 6/19/2006 Dr Steve Hunter. Back to Basics. Parallel Architecture = Computer Architecture + Communication Architecture Small-scale shared memory

artan
Télécharger la présentation

6/19/2006 Dr Steve Hunter

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architecture of Parallel ComputersCSC / ECE 506 Summer 2006Scalable Programming ModelsLecture 11 6/19/2006 Dr Steve Hunter

  2. Back to Basics • Parallel Architecture = Computer Architecture + Communication Architecture • Small-scale shared memory • extend the memory system to support multiple processors • good for multiprogramming throughput and parallel computing • allows fine-grain sharing of resources • Naming & synchronization • communication is implicit in store/load of shared address • synchronization is performed by operations on shared addresses • Latency & Bandwidth • utilize the normal migration within the storage to avoid long latency operations and to reduce bandwidth • economical medium with fundamental BW limit CSC / ECE 506

  3. Realizing Programming Models CAD Database Scientific modeling Parallel applications Multi-programming Shared Message Data Programming models address passing parallel Compilation Communication abstraction or library User/system boundary Operating systems support Har dwar e/softwar e boundary Communication hardware Physical communication medium P P n 1 Conceptual Picture Memory CSC / ECE 506

  4. Key Property • Large number of independent communication paths between nodes • Allow a large number of concurrent transactions using different wires • Initiated independently • No global arbitration • Effect of a transaction only visible to the nodes involved • Effects propagated through additional transactions CSC / ECE 506

  5. Network Transaction Primitive • One-way transfer of information from a source output buffer to a destination input buffer • causes some action at the destination • occurrence is not directly visible at source • Deposit data, state change, reply CSC / ECE 506

  6. Bus Transactions vs Net Transactions Issues: • protection check V->P ?? • format wires flexible • output buffering reg, FIFO ?? • media arbitration global local • destination naming and routing • input buffering limited many source • action • completion detection CSC / ECE 506

  7. Shared Address Space Abstraction • fixed format, request/response, simple action CSC / ECE 506

  8. Consistency is challenging CSC / ECE 506

  9. Synchronous Message Passing CSC / ECE 506

  10. Asynchronous Message Passing: Optimistic CSC / ECE 506

  11. Asynchronous Message Passing: Conservative CSC / ECE 506

  12. Active Messages • User-level analog of network transaction • Action is small user function • Request/Reply • May also perform memory-to-memory transfer Request handler Reply handler CSC / ECE 506

  13. Common Challenges • Input buffer overflow • N-1 queue over-commitment => must slow sources • reserve space per source (credit) • when available for reuse? • Ack or Higher level • Refuse input when full • backpressure in reliable network • tree saturation • deadlock free • what happens to traffic not bound for congested dest? • Reserve ack back channel • drop packets CSC / ECE 506

  14. Challenges (cont) • Fetch Deadlock • For network to remain deadlock free, nodes must continue accepting messages, even when cannot source them • what if incoming transaction is a request? • Each may generate a response, which cannot be sent! • What happens when internal buffering is full? • logically independent request/reply networks • physical networks • virtual channels with separate input/output queues • bound requests and reserve input buffer space • K(P-1) requests + K responses per node • service discipline to avoid fetch deadlock? • NACK on input buffer full • NACK delivery? CSC / ECE 506

  15. Summary • Scalability • physical, bandwidth, latency and cost • level of integration • Realizing Programming Models • network transactions • protocols • safety • N-1 • fetch deadlock • Next: Communication Architecture Design Space • How much hardware interpretation of the network transaction? CSC / ECE 506

  16. The End CSC / ECE 506

More Related