Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dzmitry Kliazovich University of Luxembourg, Luxembourg

Similar presentations


Presentation on theme: "Dzmitry Kliazovich University of Luxembourg, Luxembourg"— Presentation transcript:

1 CA-DAG: Communication-Aware Directed Acyclic Graphs for Modeling Cloud Computing Applications
Dzmitry Kliazovich University of Luxembourg, Luxembourg Johnatan E. Pecero Pascal Bouvry Andrei Tchernykh CICESE Research Center, Mexico Samee U. Khan North Dakota State University, U.S.A. Albert Y. Zomaya University of Sydney, Australia

2 Cloud Computing Applications
Jul 1, 2013 Dzmitry Kliazovich

3 Resource Requirements of Cloud Applications
Computing Network Bandwidth Communication delays (tolerance) Degree of interactivity Storage Jul 1, 2013 Dzmitry Kliazovich

4 Resource Requirements of Cloud Applications
Computing Network Bandwidth Communication delays (tolerance) Degree of interactivity Storage Jul 1, 2013 Dzmitry Kliazovich

5 Cloud Computing Applications
Communication resources Jul 1, 2013 Dzmitry Kliazovich

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

7 Scheduling in Data Centers
Network congestion!!! Jul 1, 2013 Dzmitry Kliazovich

8 Scheduling in Data Centers
Network is balanced !!! Jul 1, 2013 Dzmitry Kliazovich

9 Modeling Cloud Computing Applications

10 Modeling of Cloud Applications
Directed Acyclic Graphs (DAGs) Vertices represent computing tasks of a job Edges represent task dependencies and order of execution 1 2 3 4 How to model communication processes? Jul 1, 2013 Dzmitry Kliazovich

11 Modeling of Cloud Applications
Communication-unaware model Edges-based model Jul 1, 2013 Dzmitry Kliazovich

12 Modeling of Cloud Applications
Communication-unaware model Each vertex represents both computing and communication processes of a task 1 Computing job of a task 2 3 Communication job of a task 4 Main drawback Having a single vertex for both computing and communications makes it impossible to make separate scheduling decisions Jul 1, 2013 Dzmitry Kliazovich

13 Modeling of Cloud Applications
Edge-based model DAG edges represent communication processes of a task 1 Computing job of a task 2 3 Communication job of a task 4 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 Jul 1, 2013 Dzmitry Kliazovich

14 Proposed Communication-Aware DAG model

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 1 Communication task Computing task 2 3 4 Main advantage Allows separate resource allocation decisions, assigning processors to handle computing jobs and network resources for information transmissions Jul 1, 2013 Dzmitry Kliazovich

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 e ij representing dependence between node 𝑣 𝑖 ∈𝑉 and node 𝑣 𝑗 ∈𝑉 Jul 1, 2013 Dzmitry Kliazovich

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 messages from database Step 4: Generate HTML pages and send it to the user Jul 1, 2013 Dzmitry Kliazovich

18 CA-DAG: Communication-Aware DAG
Receive User Request Step 1 Step 1: Receive user request and process it Step 2: Generate personalized advertisement Step 3: Request list of messages from database Step 4: Generate HTML pages and send it to the user 1 Process User Data 2 Analyze user social profile 4 Request Database Step 2 Step 3 3 Retrieve Personalized Ad 5 Generate list of messages 6 Group conversations 7 Generate HTML page Step 4 8 Send output to user Jul 1, 2013 Dzmitry Kliazovich

19 CA-DAG: Communication-Aware DAG
Network Processor Receive User Request Receive User Request Step 1 1 Process User Data 1 Process User Data 2 Analyze user social profile 2 Analyze user social profile 4 Receive User Request 4 Request Database Step 2 Makespan: 7 Step 3 3 Retrieve Personalized Ad 3 Receive User Request 5 Generate list of messages 5 Generate list of messages 6 Group conversations 6 Group conversations 7 Generate HTML page 7 Generate HTML page Step 4 8 Send output to user 8 Send output to user Jul 1, 2013 Dzmitry Kliazovich

20 CA-DAG: Communication-Aware DAG
Receive User Request 1 Process User Data Communication unaware model Step 1 Step 1: Receive user request and process it Step 2: Generate personalized advertisement Step 3: Request list of messages from database Step 4: Generate HTML pages and send it to the user 2 Analyze user social profile 3 Retrieve Personalized Ad 4 Request Database 5 Generate list of messages Step 2 Step 3 6 Group conversations 7 Generate HTML page 8 Send output to user Step 4 Jul 1, 2013 Dzmitry Kliazovich

21 CA-DAG: Communication-Aware DAG
Communication unaware model Network Processor Receive User Request 1 Process User Data Receive User Request 1 Process User Data Receive User Request Step 1 2 Analyze user social profile 3 Receive User Request 2 Analyze user social profile 3 Retrieve Personalized Ad 4 Receive User Request 5 Generate list of messages 4 Request Database 5 Generate list of messages 3 Receive User Request Step 2 Step 3 Makespan: 9 4 Receive User Request 6 Group conversations 6 Group conversations 7 Generate HTML page 8 Send output to user 7 Generate HTML page 8 Send output to user Step 4 8 Send output to user Jul 1, 2013 Dzmitry Kliazovich

22 CA-DAG: Communication-Aware DAG
Edges-based model Receive User Request Step 1 1 Process User Data Step 1: Receive user request and process it Step 2: Generate personalized advertisement Step 3: Request list of messages from database Step 4: Generate HTML pages and send it to the user 4 Request Database 2 Analyze user social profile Step 2 Step 3 5 Generate list of messages 6 Group conversations 3 Retrieve Personalized Ad 7 Generate HTML page Step 4 8 Send output to user Jul 1, 2013 Dzmitry Kliazovich

23 CA-DAG: Communication-Aware DAG
Edges-based model Network Processor Receive User Request Receive User Request Receive User Request Step 1 1 Process User Data 1 Process User Data 4 Request Database 4 Request Database 4 Request Database 2 Analyze user social profile 2 Analyze user social profile 3 Retrieve Personalized Ad Step 2 Makespan: 8 Step 3 4 Request Database 5 Generate list of messages 5 Generate list of messages 6 Group conversations 6 Group conversations 3 Retrieve Personalized Ad 7 Generate HTML page 7 Generate HTML page Step 4 8 Send output to user 8 Send output to user Jul 1, 2013 Dzmitry Kliazovich

24 CA-DAG: Communication-Aware DAG
Comparison of schedules CA-DAG model Communication-unaware model Edges-based model Jul 1, 2013 Dzmitry Kliazovich

25 CA-DAG: Communication-Aware DAG
Comparison of models’ makespan # of Processors Network links Communication-unaware model Edges-based model Proposed CA-DAG model 1 9 8 7 2 Achieves minimum makespan with the least resources Jul 1, 2013 Dzmitry Kliazovich

26 Properties of Communication Tasks/Vertices

27 Properties of Communication Tasks/Vertices
Task parallelization Multipath routing Task completion time Available bandwidth Jul 1, 2013 Dzmitry Kliazovich

28 Dzmitry Kliazovich (dzmitry.kliazovich@uni.lu)
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 1 1 2 2.1 2.2 2.n 3 4 3 4 Jul 1, 2013 Dzmitry Kliazovich

29 Dzmitry Kliazovich (dzmitry.kliazovich@uni.lu)
Multipath Routing Most of existing solutions rely on static network topology and fixed pre-allocation which implies circuit switching and pre-defined routing 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

30 Dzmitry Kliazovich (dzmitry.kliazovich@uni.lu)
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 𝑑 𝑝𝑟𝑜𝑝 Jul 1, 2013 Dzmitry Kliazovich

31 Dzmitry Kliazovich (dzmitry.kliazovich@uni.lu)
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 Total capacity (includes buffers) Link capacity Used bandwidth Jul 1, 2013 Dzmitry Kliazovich

32 Performance of CA-DAG Model

33 Performance of CA-DAG model
System Architecture Only one node can communicate at a time Jul 1, 2013 Dzmitry Kliazovich

34 Performance of CA-DAG model
Workloads Winkler graph generator DAGs with occasional and frequent communications Communication-to-Computation Ratio (CCR) 0.1 Computationally intensive DAGs 1 Balanced DAGs 2 Communication intensive DAGs Jul 1, 2013 Dzmitry Kliazovich

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

36 Performance of CA-DAG model
Scheduling Criteria Schedule efficiency Approximation factor Jul 1, 2013 Dzmitry Kliazovich

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

38 Performance of CA-DAG model
Schedule efficiency Apps. with occasional communications Apps. with frequent communications The higher the better Jul 1, 2013 Dzmitry Kliazovich

39 Performance of CA-DAG model
Approximation factor where 𝐶 𝑚𝑎𝑥 is a makespan 𝐶 𝑚𝑎𝑥 ∗ is the optimal makespan max 𝑏𝑙𝑒𝑣𝑒𝑙 𝑡 𝑖 is a critical path of the graph 𝜌= 𝐶 𝑚𝑎𝑥 / 𝐶 𝑚𝑎𝑥 ∗ 𝐶 𝑚𝑎𝑥 ∗ =𝑚𝑎𝑥 max 𝑏𝑙𝑒𝑣𝑒𝑙( 𝑡 𝑖 ) , 𝑖=1..,𝑛 𝑝 𝑖 𝑚 , Jul 1, 2013 Dzmitry Kliazovich

40 Performance of CA-DAG model
Approximation factor Apps. with occasional communications Apps. with frequent communications The lower the better Jul 1, 2013 Dzmitry Kliazovich

41 Dzmitry Kliazovich (dzmitry.kliazovich@uni.lu)
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 Dzmitry Kliazovich

42 University of Luxembourg
Thank you! Contact information: Dzmitry Kliazovich University of Luxembourg


Download ppt "Dzmitry Kliazovich University of Luxembourg, Luxembourg"

Similar presentations


Ads by Google