The Alpha 21364 Network Architecture

The Alpha 21364 Network Architecture

THE ALPHA 21364 NETWORK ARCHITECTURE THE ALPHA 21364 PROCESSOR PROVIDES A HIGH-PERFORMANCE, SCALABLE, AND RELIABLE NETWORK ARCHITECTURE WITH A ROUTER THAT RUNS AT 1.2 GHZ AND HAS A PEAK BANDWIDTH OF 22.4 GBYTES/S. SUPPORTING CONFIGURATIONS OF UP TO 128 PROCESSORS, THIS NETWORK ARCHITECTURE IS WELL SUITED FOR COMMUNICATION-INTENSIVE SERVER APPLICATIONS. Advances in semiconductor tech- munication demands of these memory- and nology have let microprocessors integrate I/O-intensive applications. more than a 100 million transistors on a sin- The novelty of the Alpha 21364’s router gle chip. The Alpha 21364 microprocessor1,2 architecture lies in its extremely low latency, uses 152 million transistors to integrate an enormous bandwidth, and support for direc- Alpha 21264 processor core, a 1.75-Mbyte tory-based cache coherence. The router second-level cache, cache coherence hard- offers extremely low latency because it oper- ware, two memory controllers, and a multi- ates at 1.2 GHz, the same clock speed as the processor router on a single die, as Figure 1a processor core. The pin-to-pin latency with- Shubhendu S. shows. In the 0.18-micron bulk CMOS in the router is 13 cycles or 10.8 ns. In com- process, the 21364 will run at 1.2 GHz and parison, the ASIC-based SGI Spider router Mukherjee provide 12.8 Gbytes/s of local memory band- runs at 100 MHz and offers a 40-ns pin-to- width and 22.4 Gbytes/s of router band- pin latency.3 Peter Bannon width, as Figure 2 shows. Similarly, the Alpha 21364 offers an enor- The Alpha 21364’s tightly coupled multi- mous amount of peak and sustained band- Steven Lang processor network connects up to 128 such width. The 21364 router can sustain between processors in a 2D torus network; Figure 1b 70 and 90 percent of its 22.4-Gbytes/s peak Aaron Spink shows a 12-processor configuration. A fully bandwidth. The 21364’s router can offer such configured, 128-processor, shared-memory enormous bandwidth because of aggressive David Webb system can support up to 4 terabytes of Ram- routing algorithms, carefully crafted distrib- bus memory and hundreds of terabytes of disk uted arbitration schemes, large amounts of Compaq Computer Corp. storage. We could also easily redesign the on-chip buffering, and a fully pipelined router 21364 to support a much larger configuration. implementation. This multiprocessor configuration supports Finally, the network and router architec- the massive computation and communication tures have explicit support for directory-based requirements of various application domains, cache coherence, such as separate virtual chan- such as high-performance technical comput- nels for different coherence protocol packet ing, database servers, Web servers, and classes. This helps avoid deadlocks and telecommunications. We designed the Alpha improves the performance of the 21364’s 21364 network architecture to meet the com- coherence protocol. 26 0272-1732/02/$17.00 2002 IEEE MC1Router MC2 L2 cache tags L2 L2 cache cache data data Alpha 21264 core 21364 Rambus memory I/O (a) (b ) Figure 1. Alpha 21364 floor plan (a) and a 12-processor configuration of Alpha 21364s (b). Network packet classes North North Network packets and flits are the basic units of data transfer in the 21364’s network. A South South packet is a message transported across the net- East East work from one router to another; it consists of West West one or more flits. A flit is a portion of a pack- Input Router Output Cache et transported in parallel on a single clock ports ports edge. A flit is 39 bits—32 bits for payload, 7 MC1 L1 bits for per-flit error correction code (ECC). MC2 L2 Thus, each of the incoming and outgoing I/O I/O interprocessor ports shown in Figure 1b is 39 bits wide. The 21364 network supports pack- et sizes of one, two, three, 18, and 19 flits. A Figure 2. Router ports. This figure shows the eight input ports and the seven packet’s first one to three flits contain the output ports of the 21364’s router. The north, south, east, and west inter- packet header. Additionally, the 18- or 19-flit processor ports correspond to off-chip connections to the 2D torus network. packets typically contain 64-byte (or 16-flit) MC1 and MC2 are the two on-chip memory controllers, shown in Figure 1a. cache blocks or up to 64 bytes of I/O data. The cache input port corresponds to the on-chip second-level cache. The L1 The 21364 network supports seven packet output port connects to the first level cache as well as MC1. Similarly, the L2 classes: output port connects to the first level cache and MC2. Finally, the I/O ports connect to the I/O chip external to the 21364 processor. The total aggregate • Request (three flits). A processor or I/O bandwidth of the seven output ports is 22.4 Gbytes/s. device uses a request packet to obtain data in and/or ownership of a cache block or up to 64 bytes of I/O data. request class packet or to send a modi- • Forward (three flits). A memory controller fied cache block back to memory. (MC1 or MC2 in Figure 1a) uses a for- • Nonblock response (two or three flits). A ward packet to forward a request packet processor, memory controller, or I/O to a cache block’s current owner or shar- device uses a nonblock response packet to er (a processor or I/O device). acknowledge coherence protocol actions, • Block response (18 or 19 flits). A proces- such as a request for a cache block. sor or I/O device uses a block response • Write I/O (19 flits). A processor or I/O packet to return the data requested by a device generates a write I/O packet when JANUARY–FEBRUARY 2002 27 NETWORK ARCHITECTURE it stores data to I/O space. more elaborate, fully adaptive-routing algo- • Read I/O (three flits). A processor gener- rithms. In the 21364 scheme, packets adap- ates read I/O packets to load data from tively route within the minimum rectangle. I/O space. That is, given two points in a torus (in this • Special (one or three flits). The network case, the current router and the destination and the coherence protocol use these processor), you can draw four rectangles that packets. The special class includes no-op contain these two points as their diagonally packets, which can carry buffer dealloca- opposite vertices, as Figure 3a shows. The tion information between routers. minimum rectangle is the one with the min- imum diagonal distance between the current The packet header (one to three flits) iden- router and destination processor. tifies the packet’s class and function. The The adaptive-routing algorithm picks one header also contains routing information for output port among a maximum of two output the packet and (optionally) the physical ports that a packet can route in at any router. address of the cache block or data block in I/O Thus, each packet at the current router’s input space that corresponds to this packet. It can port and destined for a network output port also carry flow control information between has only two choices: It can either continue in neighboring routers. Besides the header, block the same dimension (such as north input to response and write I/O packets also contain south output) or turn (say from north input to 16 flits or 64 bytes of data. east output). This is because with every hop a The 21364’s coherence protocol and I/O packet will reduce its Manhattan distance to its devices use these packet classes to communi- destination. This shrinks the size of the mini- cate between processors, memory, and I/O mum rectangle in which the packet is routed. devices. Bannon et al. describes the 21364’s If the adaptive algorithm has a choice directory-based coherence protocol.4 between both the available network output ports (that is, neither output port is congest- Network architecture ed), then it gives preference to the route that The 21364 network is a 2D torus, but it continues in the same dimension. This lets a can also support limited configurations of source-destination pair of processors maxi- imperfect tori, which lets the network take mize the bandwidth between them by letting faulty routers out of its topology. To imple- multiple packets travel on separate routes. Fig- ment the 2D torus, we carefully designed the ures 3b and 3c show the implementation of routing mechanisms and the corresponding these preferences. deadlock avoidance techniques. Deadlock avoidance rules Virtual cut-through routing Both coherence and adaptive-routing pro- The 21364 uses virtual cut-through rout- tocols can introduce deadlocks in a network ing in which flits of a packet proceed through because of cyclic dependences created by these multiple routers until a router blocks the protocols. header flit. Then, the blocking router buffers all the packet’s flits until the congestion clears. Avoiding deadlocks in the coherence protocol. Subsequently, the blocking router schedules The coherence protocol can introduce dead- the packet for delivery to the next router, and locks because of cyclic dependence between the same pattern repeats. To support virtual different packet classes. For example, request cut-through routing, the 21364’s router pro- packets can fill up a network and prevent vides buffer space for 316 packets. block response packets from ever reaching their destinations. The 21364 breaks this Adaptive routing cyclic dependence by creating virtual chan- The 21364’s network uses adaptive routing nels5 for each class of coherence packets and to maximize the sustained bandwidth.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us