三浦/Paper Reading/Paper04
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[三浦/Paper Reading]]
last update:June 3, 2009
Virtual-Channel Flow Control
#contents
*Summary [#l509e4fb]
**Abstruct [#uefa341d]
-Network throughput can be increased by dividing the buffer storage associated with each network channel into several virtual channels.
-Each physical channel is associated with several small queues, virtual channel, rather than a single deep queue.
-The virtual channels associated with one physical channel are allocated independently but compete with each other for physical bandwidth.
-Virtual channels decouple buffer resources from transmission resurces.
-This decoupling allows active messages to pass blocked messages using network bandwidth that would otherwise be left idle.
**I. Introduction [#z459b269]
***Interconnection Networks [#s004e73b]
-The processing nodes of a consurrent computer exchange data and synchronize with one another by passing messages over an interconnection network.
-the interconnection network is often the critical components of a large parallel computer.
--Because performance is very sensitive to network latency and throughput.
--Because the network accounts for a large fraction of the cost and power dessipation of the machine.
-An interconnection network is characterized by its topology, routing, and flow control.
--The topology of a network is the arrangement of nodes and channels into a graph.
--Routing specifies how a packet chooses a path in this graph.
--Flow control deals with the allocation of channel and buffer resources to a packet as it traverses this path.
***The problem [#dabbef8a]
-A virtua channel consists of a buffer that can hold one or more flits of a packet and associated state information.
-Several virtual channels may share the bandwidth of a single physical channel.
-Virtual channels decouple allocation of buffers from allocation of channels by providing multiple buffers for each channel in the network.
-In addition to increasing throughtput, virtual channels provide an additional degree of freedom in allocating resources to packets in the network.
-The Flexibility permits the use of scheduling strategies, such as routing the oldest packet first, that reduce the variance of network latency.
-The most costly resources in an interconnection network is physical channel (wire) bandwidth.
-The second most costly resources is buffer memory.
-Adding virtual channel flow control to a network makes more effective use of both of these resources by decoupling their allocation.
***Virtual Channel Flow Control [#da110a27]
***Background [#d5e45a01]
**II. Preliminaries [#o58e12ca]
***Topoligy [#ud48474a]
***Routing [#c340ecb3]
***Flow Control [#id7c08d0]
-Communication between nodes is performed by sending messages.
-A message may ne broken into one or more packets for transmission.
--A packet is the smallest unit of information that contains routing and sequencing information.
-A packet contains one or more flow control digits or flits.
--A flit is the smallest unit on which flow control is performed.
-The flow control protocol of a network determines
--1) how resources (buffer and channel bandwidth) are allocated.
--2) how packet collisions over resources are resolved.
-A resources collision occurs when a packet P is unable to proceed because some resource it needs (usually a buffer) is held by another packet.
-Collision may be resolved by
--1) blocking P in place
--2) buffering P in a node prior to where the collision occurs
--3) dropping P, or
--4) misrouting P to a channel other than the one it requires.
-The flow control strategy allocates buffers and channel bandwidth to flits.
-The allocation must be done in a manner that keeps the flits associated with a particular packet together.
--Because flits have no routing or sequencing information.
-This may be done by associating a set of buffer and some control state together into a virtual channel.
-A virtual channel is allocated to a packet and the buffer of the virtual channel are aalocated in a FIFO manner to the flits of that packet.
**III. Virtual Channel Flow Control [#m134a830]
***A. Structure [#oa5bfa9f]
-Each node of an network contains a set of buffers and a switch.
-A conventional network organizes the flit buffer accosiated with each channel into a FIFO queue.
-This organaization restrics allocation so that each flit buffer can contain only flits from a single packet.
-If this packet becomes blocked, the physical channel is idled.
--Because no other packet is able to acquire the buffer resources needed to access the channel.
-A network using virtual channel flow control organizes the flit buffers associated with each channel into several lanes.
-The buffers in each lane can be allocated independently of the buffers in any other lane.
-This added allocation flexibility increases channel utilization and thus throughput.
-A blocked message, even one that extends through several nodes, holds only a single lane idle and can be passed using any of the remaining lanes.
***B. Operation [#l3d3817d]
-In a network using virtual channel flow control, flow control is performed at two levels.
--Virtual channel assignment is made at the packet level.
--While physical channel bandwidth is allocated at the flit level.
-When a packet arrives at a node, it is assigned (according to the routing algorithm) to an output virtual channel.
&br;
CENTER:&ref(channel.JPG);
&br;
-The transmitting node (node A) contains a status register for each virtual channel that contains the state of the lane buffer on the receiving node (node B).
-This status information includes;
--a bit to indicate if the lane is free, a count of the number of free flit buffers in tha lane, and oprionally the priority of the packet occupying the lane.
-Node B contains a lane buffer and a status register for each virtual channel.
-The status maintained on node B includes input and output pointer for each lane buffer and the status of the channel
--free, waiting(to be assigned an output), and active.
-Lane assignment for physical channel P is performed by node A.
-When a packet arrives in an input buffer on node A, it is aasigned a particular output channel based on its destination, the status of the output channeln and the routing algorithm in use.
-The flow-control logic then assigns this packet to any free lane of the selected channel.
終了行:
[[三浦/Paper Reading]]
last update:June 3, 2009
Virtual-Channel Flow Control
#contents
*Summary [#l509e4fb]
**Abstruct [#uefa341d]
-Network throughput can be increased by dividing the buffer storage associated with each network channel into several virtual channels.
-Each physical channel is associated with several small queues, virtual channel, rather than a single deep queue.
-The virtual channels associated with one physical channel are allocated independently but compete with each other for physical bandwidth.
-Virtual channels decouple buffer resources from transmission resurces.
-This decoupling allows active messages to pass blocked messages using network bandwidth that would otherwise be left idle.
**I. Introduction [#z459b269]
***Interconnection Networks [#s004e73b]
-The processing nodes of a consurrent computer exchange data and synchronize with one another by passing messages over an interconnection network.
-the interconnection network is often the critical components of a large parallel computer.
--Because performance is very sensitive to network latency and throughput.
--Because the network accounts for a large fraction of the cost and power dessipation of the machine.
-An interconnection network is characterized by its topology, routing, and flow control.
--The topology of a network is the arrangement of nodes and channels into a graph.
--Routing specifies how a packet chooses a path in this graph.
--Flow control deals with the allocation of channel and buffer resources to a packet as it traverses this path.
***The problem [#dabbef8a]
-A virtua channel consists of a buffer that can hold one or more flits of a packet and associated state information.
-Several virtual channels may share the bandwidth of a single physical channel.
-Virtual channels decouple allocation of buffers from allocation of channels by providing multiple buffers for each channel in the network.
-In addition to increasing throughtput, virtual channels provide an additional degree of freedom in allocating resources to packets in the network.
-The Flexibility permits the use of scheduling strategies, such as routing the oldest packet first, that reduce the variance of network latency.
-The most costly resources in an interconnection network is physical channel (wire) bandwidth.
-The second most costly resources is buffer memory.
-Adding virtual channel flow control to a network makes more effective use of both of these resources by decoupling their allocation.
***Virtual Channel Flow Control [#da110a27]
***Background [#d5e45a01]
**II. Preliminaries [#o58e12ca]
***Topoligy [#ud48474a]
***Routing [#c340ecb3]
***Flow Control [#id7c08d0]
-Communication between nodes is performed by sending messages.
-A message may ne broken into one or more packets for transmission.
--A packet is the smallest unit of information that contains routing and sequencing information.
-A packet contains one or more flow control digits or flits.
--A flit is the smallest unit on which flow control is performed.
-The flow control protocol of a network determines
--1) how resources (buffer and channel bandwidth) are allocated.
--2) how packet collisions over resources are resolved.
-A resources collision occurs when a packet P is unable to proceed because some resource it needs (usually a buffer) is held by another packet.
-Collision may be resolved by
--1) blocking P in place
--2) buffering P in a node prior to where the collision occurs
--3) dropping P, or
--4) misrouting P to a channel other than the one it requires.
-The flow control strategy allocates buffers and channel bandwidth to flits.
-The allocation must be done in a manner that keeps the flits associated with a particular packet together.
--Because flits have no routing or sequencing information.
-This may be done by associating a set of buffer and some control state together into a virtual channel.
-A virtual channel is allocated to a packet and the buffer of the virtual channel are aalocated in a FIFO manner to the flits of that packet.
**III. Virtual Channel Flow Control [#m134a830]
***A. Structure [#oa5bfa9f]
-Each node of an network contains a set of buffers and a switch.
-A conventional network organizes the flit buffer accosiated with each channel into a FIFO queue.
-This organaization restrics allocation so that each flit buffer can contain only flits from a single packet.
-If this packet becomes blocked, the physical channel is idled.
--Because no other packet is able to acquire the buffer resources needed to access the channel.
-A network using virtual channel flow control organizes the flit buffers associated with each channel into several lanes.
-The buffers in each lane can be allocated independently of the buffers in any other lane.
-This added allocation flexibility increases channel utilization and thus throughput.
-A blocked message, even one that extends through several nodes, holds only a single lane idle and can be passed using any of the remaining lanes.
***B. Operation [#l3d3817d]
-In a network using virtual channel flow control, flow control is performed at two levels.
--Virtual channel assignment is made at the packet level.
--While physical channel bandwidth is allocated at the flit level.
-When a packet arrives at a node, it is assigned (according to the routing algorithm) to an output virtual channel.
&br;
CENTER:&ref(channel.JPG);
&br;
-The transmitting node (node A) contains a status register for each virtual channel that contains the state of the lane buffer on the receiving node (node B).
-This status information includes;
--a bit to indicate if the lane is free, a count of the number of free flit buffers in tha lane, and oprionally the priority of the packet occupying the lane.
-Node B contains a lane buffer and a status register for each virtual channel.
-The status maintained on node B includes input and output pointer for each lane buffer and the status of the channel
--free, waiting(to be assigned an output), and active.
-Lane assignment for physical channel P is performed by node A.
-When a packet arrives in an input buffer on node A, it is aasigned a particular output channel based on its destination, the status of the output channeln and the routing algorithm in use.
-The flow-control logic then assigns this packet to any free lane of the selected channel.
ページ名: