Date post: | 19-Jan-2016 |
Category: |
Documents |
Upload: | suzan-bell |
View: | 217 times |
Download: | 0 times |
CA-DAG: Communication-Aware Directed Acyclic Graphs for Modeling Cloud Computing
Applications
Dzmitry Kliazovich University of Luxembourg, LuxembourgJohnatan E. PeceroPascal Bouvry
Andrei Tchernykh CICESE Research Center, Mexico
Samee U. Khan North Dakota State University, U.S.A.
Albert Y. Zomaya University of Sydney, Australia
Dzmitry Kliazovich ([email protected]) 3
Resource Requirements of Cloud Applications
Jul 1, 2013
Computing Network Bandwidth
Communication delays (tolerance)
Degree of interactivity Storage
Dzmitry Kliazovich ([email protected]) 4
Resource Requirements of Cloud Applications
Jul 1, 2013
Computing Network Bandwidth
Communication delays
(tolerance)StorageDegree of
interactivity
Dzmitry Kliazovich ([email protected]) 5
Cloud Computing Applications
Jul 1, 2013
Communicationresources
Dzmitry Kliazovich ([email protected]) 6
Cloud Computing Applications
• Traditional resource allocation and scheduling– Distribute incoming jobs to the pool of servers– Communication requirements and networking are not
taken into account
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 7
Scheduling in Data Centers
Jul 1, 2013
S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S
CoreNetwork
AggregationNetwork
AccessNetwork
S
Links
10 GE 1 GE
Nodes
L3 Switch L2/L3 Rack Switch Computing Server
Network congestion!!!
Dzmitry Kliazovich ([email protected]) 8
Scheduling in Data Centers
Jul 1, 2013
S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S
CoreNetwork
AggregationNetwork
AccessNetwork
S
Links
10 GE 1 GE
Nodes
L3 Switch L2/L3 Rack Switch Computing Server
Network is balanced !!!
Modeling Cloud Computing Applications
Dzmitry Kliazovich ([email protected]) 10
Modeling of Cloud Applications
• Directed Acyclic Graphs (DAGs)– Vertices represent computing tasks of a job– Edges represent task dependencies and order
of execution
Jul 1, 2013
1
2
3 4
How to model communication processes?
Dzmitry Kliazovich ([email protected]) 11
Modeling of Cloud Applications
• Communication-unaware model
• Edges-based model
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 12
Modeling of Cloud Applications
• Communication-unaware model– Each vertex represents both computing and
communication processes of a task
Jul 1, 2013
1
32
4Communication job
of a task
Computing jobof a task
• Main drawback– Having a single vertex for both computing and communications
makes it impossible to make separate scheduling decisions
Dzmitry Kliazovich ([email protected]) 13
Modeling of Cloud Applications
• Edge-based model– DAG edges represent communication processes of a task
Jul 1, 2013
1
32
4
Communication jobof a task
Computing jobof a task
• Main drawback– Two different computing tasks cannot have the same data
transfer to receive input as a singe edge cannot lead to two different vertices
Proposed Communication-Aware DAG model
Dzmitry Kliazovich ([email protected]) 15
Modeling of Cloud Applications
• Proposed CA-DAG: Communication-Aware DAG model– Two types of vertices: one for computing and one for communications– Edges show define dependences between tasks and order of execution
Jul 1, 2013
32
Communication task
Computing task
• Main advantage– Allows separate resource allocation decisions, assigning
processors to handle computing jobs and network resources for information transmissions
1
4
Dzmitry Kliazovich ([email protected]) 16
Modeling of Cloud Applications
• Proposed CA-DAG: Communication-Aware DAG model
– Represented by a directed acyclic graph
– Set of vertices is composed of computing tasks and communication tasks
– A computing task is described by a pair with the number of instructions (amount of work) that has to be executed within a specific deadline
– A communication task is described by parameters and defined as the amount of information in bits that has to be successfully transmitted within a predefined deadline
– The set of edges consists of directed edges representing dependence between node and node
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 17
Modeling of Cloud Applications
• Example of webmail cloud application– Step 1: Receive user request and process it– Step 2: Generate personalized advertisement– Step 3: Request list of email messages from database– Step 4: Generate HTML pages and send it to the user
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 18
CA-DAG: Communication-Aware DAG
Jul 1, 2013
• Step 1: Receive user request and process it
• Step 2: Generate personalized advertisement
• Step 3: Request list of email messages from database
• Step 4: Generate HTML pages and send it to the user
Step
1
Step
2
Step
3
Step
4
0Receive User
Request
1Process
User Data
2Analyze user
social profile
4Request
Database
3Retrieve
Personalized Ad
5Generate
list of email messages
6Group
conversations
7Generate
HTML page
8Send output
to user
Dzmitry Kliazovich ([email protected])
CA-DAG: Communication-Aware DAG
Jul 1, 201319
Step
1
Step
2
Step
3
Step
4ProcessorNetwork
0Receive User
Request
1Process
User Data
2Analyze user
social profile
4Receive User
Request
3Receive
User Request
5Generate
list of email messages
6Group
conversations
7Generate
HTML page
8Send output
to user
0Receive User
Request
1Process
User Data
2Analyze user
social profile
4Request
Database
3Retrieve
Personalized Ad
5Generate
list of email messages
6Group
conversations
7Generate
HTML page
8Send output
to user
Makespan: 7
20
CA-DAG: Communication-Aware DAG
Jul 1, 2013 Dzmitry Kliazovich ([email protected])
• Step 1: Receive user request and process it
• Step 2: Generate personalized advertisement
• Step 3: Request list of email messages from database
• Step 4: Generate HTML pages and send it to the user
Step
1
Step
2
Step
3
Step
4
6Group
conversations
• Communication unaware model0
Receive User Request
1Process User
Data
2Analyze user social profile
3Retrieve
Personalized Ad
4Request
Database
5Generate list of email messages
7Generate HTML
page
8Send output to
user
21
CA-DAG: Communication-Aware DAG
Jul 1, 2013 Dzmitry Kliazovich ([email protected])
Step
1
Step
2
Step
3
Step
4
6Group
conversations
• Communication unaware model
0Receive User
Request
1Process User
Data
2Analyze user social profile
3Receive User
Request
4Receive User
Request
5Generate list of email messages
7Generate HTML
page
8Send output to
user
ProcessorNetwork0
Receive User Request
1Process User
Data
2Analyze user social profile
3Retrieve
Personalized Ad
4Request
Database
5Generate list of email messages
6Group
conversations
7Generate HTML
page
8Send output to
user
Makespan: 9
0Receive User
Request
4Receive User
Request
3Receive
User Request
8Send
output to user
22
CA-DAG: Communication-Aware DAG
Jul 1, 2013 Dzmitry Kliazovich ([email protected])
• Step 1: Receive user request and process it
• Step 2: Generate personalized advertisement
• Step 3: Request list of email messages from database
• Step 4: Generate HTML pages and send it to the user
• Edges-based model
Step
1
Step
2
Step
3
Step
4
1Process
User Data
2Analyze user
social profile
5Generate
list of email messages
6Group
conversations
7Generate
HTML page
0Receive
User Request
4Request
Database
3Retrieve
Personalized Ad
8Send output
to user
23
CA-DAG: Communication-Aware DAG
Jul 1, 2013 Dzmitry Kliazovich ([email protected])
• Edges-based modelSt
ep 1
Step
2
Step
3
Step
4
1Process
User Data
2Analyze user
social profile
5Generate
list of email messages
6Group
conversations
7Generate
HTML page
0Receive
User Request
4Request
Database
3Retrieve
Personalized Ad
8Send output
to user
ProcessorNetwork
0Receive User
Request
0Receive
User Request
1Process
User Data
2Analyze user
social profile
5Generate
list of email messages
6Group
conversations
4Request
Database
3Retrieve
Personalized Ad
4Request
Database
7Generate
HTML page
8Send output
to user
4Request
Database
Makespan: 8
Dzmitry Kliazovich ([email protected]) 24
CA-DAG: Communication-Aware DAG
• Comparison of schedulesCA-DAG model Communication-unaware model Edges-based model
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 25
CA-DAG: Communication-Aware DAG
• Comparison of models’ makespan
# ofProcessors
# ofNetwork links
Communication-unaware model
Edges-based model
Proposed CA-DAG model
1 1 9 8 71 2 9 7 72 1 7 8 7
Achieves minimum makespan with the least resources
Jul 1, 2013
Properties of Communication Tasks/Vertices
Dzmitry Kliazovich ([email protected]) 27
Properties of Communication Tasks/Vertices
• Task parallelization
• Multipath routing
• Task completion time
• Available bandwidth
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 28
Task Parallelization
• Each communication task/vertex can be divided into different independent communication tasks that can be executed in parallel
• The smallest size of communication task is one bit as all bits in the message are independent
2
1
3 4
1
3 4
2.1 2.2 2.n…
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 29
Multipath Routing
• Most of existing solutions rely on static network topology and fixed pre-allocation which implies circuit switching and pre-defined routing
S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S
CoreNetwork
AggregationNetwork
AccessNetwork
S
Links
10 GE 1 GE
Nodes
L3 Switch L2/L3 Rack Switch Computing Server
• In reality, datacenter networks are packet switched with routing decisions taken at every hop
• The availability of multiple paths is essential to benefit from parallelization property of communication tasks
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 30
Task Completion Time
• Execution of communication task involves– Packet transmissions on multiple links– Sequential processing, variable bitrates
• Communication delay components– Processing delay – Queuing delay – Transmission delay – Propagation delay
n1 n2dproc
dtx dqueue dprop
1
( ).N
i i i icomm proc queue tx prop
i
d d d d d
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 31
Available Bandwidth
• Residual Bandwidth– Bandwidth left unoccupied
• Available bandwidth– Bandwidth that a new flow can obtain (residual bandwidth +
portion of the used bandwidth)
• Utilization performance of communication protocols– TCP throughput
( ) ,MSS
B pRTT p
Used bandwidth
Link capacity
Total capacity(includes buffers)
Jul 1, 2013
Performance of CA-DAG Model
Dzmitry Kliazovich ([email protected]) 33
Performance of CA-DAG model
• System Architecture– Only one node can communicate at a time
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 34
Performance of CA-DAG model
• Workloads– Winkler graph generator– DAGs with occasional and frequent communications
• Communication-to-Computation Ratio (CCR)
0.1Computationallyintensive DAGs
1Balanced DAGs
2Communicationintensive DAGs
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 35
Performance of CA-DAG model
• Scheduling Algorithm– Offline (deterministic) scheduling– Zero release time of DAGs– Clairvoyant execution and communication time– Adapted list scheduling is employed– A processor allowing minimum execution time is
selected
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 36
Performance of CA-DAG model
• Scheduling Criteria
– Schedule efficiency
– Approximation factor
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 37
Performance of CA-DAG model
• Schedule efficiency
– Ratio of sequential execution time to the makespan of the schedule by the number of computing resources
where is a makespan is the number of computing resources
eff (𝑆 )=∑
𝑖=1. . ,𝑛(𝑝𝑖 )
𝐶𝑚𝑎𝑥×𝑚
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 38
0.1 1 20
10
20
30
40
50
Communication-to-Computation Ratio (CCR)E
ffici
ency
(%
)
CA-DAGComm-unaware DAGEdge-based DAG
0.1 1 20
10
20
30
40
50
Communication-to-Computation Ratio (CCR)
Effi
cien
cy (
%)
CA-DAGComm-unaware DAGEdge-based DAG
Performance of CA-DAG model
• Schedule efficiency Apps. with occasional communications Apps. with frequent communications
The
high
er th
e be
tter
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 39
Performance of CA-DAG model
• Approximation factor
where is a makespan is the optimal makespan is a critical path of the graph
𝐶𝑚𝑎𝑥∗ =𝑚𝑎𝑥 {max (𝑏𝑙𝑒𝑣𝑒𝑙 (𝑡𝑖)) ,
∑𝑖=1. . ,𝑛
(𝑝𝑖 )
𝑚 },𝜌=𝐶𝑚𝑎𝑥 /𝐶𝑚𝑎𝑥
∗
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 40
Performance of CA-DAG model
• Approximation factor
0.1 1 20
0.5
1
1.5
2
2.5
Communications-to-Computation Ratio (CCR)
App
roxi
mat
ion
Fac
tor
CA-DAGComm-unaware DAGEdge-based DAG
0.1 1 20
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Communication-to-Computation Ratio (CCR)A
ppro
xim
atio
n F
acto
r
CA-DAGComm-unaware DAGEdge-based DAG
Apps. with occasional communications Apps. with frequent communications
The
low
er th
e be
tter
Jul 1, 2013
Dzmitry Kliazovich ([email protected]) 41
Conclusions
• Cloud applications use communication resources excessively
• New communication-aware model of cloud applications, named CA-DAG, is proposed
• CA-DAG includes separate vertices to represent communication processes to allow making separate resource allocation decisions (computing jobs to processors, communication jobs to the network)
• CA-DAG model enables the design of novel solutions with mixed scheduling policies optimized for cloud computing
Jul 1, 2013