A Solution for the Bandwidth Optimization Problem with 2 Stations
-
Upload
delilah-perry -
Category
Documents
-
view
16 -
download
0
description
Transcript of A Solution for the Bandwidth Optimization Problem with 2 Stations
A Solution for the Bandwidth Optimization Problem with 2
Stations
Rahul Bijlani, Louis Deaett and Maksim Orlovich
Definitions
A single memory access is called a 'Component'. A 'Job' is a subset of the set of Components. A 'Station' is a subset of the set of Components.
– o A non-empty set C containing nc Components,
– o A set J containing nj Jobs,
– o A partition of J into two disjoint subsets J1 and J2,
– o And a set S containing exactly two Stations, S1 and S2,
Model
Given (J,S,C) as described earlier, one may construct a simple undirected graph, with each vertex representing one of the elements of J, S or C – i.e. with vertices for jobs, stations and components.
In this graph, each edge is constructed to connect a station or a job with a component it contains; for example, given a station {A,B,C}, one introduces edges – {A, {A,B,C}}, {B, {A,B,C}} and {C, {A,B,C}}
Example
For example, consider:
BFH
CDG
BCD
BGH
BCG
FGH
Conversion into our Model
F
G H
D
B C
BCG
BFH
BCD
CDG
BGH
FGH
The Solution using our Model
Note that without the loss of generality, we may assume that there are no two identical Jobs.
Consider the significance of connectedness in the model:– If a Job is path-connected to a Station or another
Job, they share at least one Component in direct or indirect form.
– On the other hand, if there is no path between either of the Stations and a Job, then they share absolutely no Components in common.
Jobs that are disconnected from Stations For starters, we can merge all the
‘disconnected’ Jobs described above with the first Station.
One can quickly search for these using DFS/Mark or BFS/Mark algorithms.
If this leaves S1 and S2 disconnected, we are done.
Jobs that are connected to at least one Station Now consider the significance of a vertex cut
of the graph using only Component Vertices, with S1 and S2 as the Source and the Sink respectively.– The Jobs are distributed to the Stations– Many of the Component vertices that were
removed were used by Jobs/Stations on each side of the partition, so removing them in effect means that the Component the represent must be duplicated in both partitions.
Example Component removal – original graph
F
G H
D
B C
BCG
BFH
BCD
CDG
BGH
FGH
Example Component removal – after removing B
F
G H
D
C
BCG
BFH
BCD
CDG
BGH
FGH
Implication of a Minimal Vertex Cut Notice that if the removed vertex was not
shared among the two sides of the partition, it didn’t really have to be removed.
Hence, one could easily construct a smaller cut by just removing the vertices that need to be duplicated.
But this means that in order to minimize the duplication, one needs to minimize the no. of vertices in the cut.
Reduction of the Bandwidth Optimization Problem
Thus, the Bandwidth Optimization
Problem is reducible to calculating a minimum vertex cut of the model graph over C, the set of Component vertices, with S1 and S2, the two Stations, as the two distinguished vertices that are to be in the two partitions of the graph.
Example Minimum Vertex Cut
BCG
BFH
BCD
CDG
BGH
FGH
C
D
H
F
Example Result
Station 1: FGH– BFH
– BGH
----------------------
BFGH
Station 2: BCD– CDG
– BCG
-----------------------
BCDG
Reduction of Vertex Cut Problem to Edge Cut1. Copy over all the vertices2. For each edge of the graph, create two
directed edges in both directions of infinite capacity. Note that this does not change connectivity.
3. Convert each of the Component Nodes into an edge of capacity one, connecting the edges incoming into the original vertex into the tails of the node, and those outgoing into the head.
Execution of a Min Edge Cut with S1 as Source and S2 as Sink
The cost of the cut will be exactly equal to the number of vertices it corresponds to, since each of the Component Vertex edges has cost 1, so minimizing the number of vertices would minimize the number of vertices cut in the original graph.
A Solution for the Bandwidth Optimization Problem with 2
Stations
Rahul Bijlani, Louis Deaett and Maksim Orlovich