Presentation is loading. Please wait.

Presentation is loading. Please wait.

First Hop Offloading of Mobile DAG Computations

Similar presentations


Presentation on theme: "First Hop Offloading of Mobile DAG Computations"— Presentation transcript:

1 First Hop Offloading of Mobile DAG Computations
Vincenzo De Maio, Ivona Brandić Institute of Information Systems Engineering Vienna University of Technology The 18th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid 2018) May 1-4, 2018, Washington DC, USA

2 Motivation Increased complexity of mobile application requires an increasing amount of processing power and energy; Mobile devices have limited processing power and battery, therefore there is a necessity to enhance capabilities of mobile devices by employing cloud resources; Cyberforaging Several works target offloading of mobile computation on Cloud resources Mobile Cloud Computing (MCC) Offloading on Cloud might hinder latency Mobile Edge Cloud Offloading (MECO) 2

3 Edge Computing IDEA: Bringing computation closer to data sources, in order to Reduce latency; Provide location-based services. Massive DC 1 Massive DC 2 Massive DC n Big Data Analysis Storage services for archiving GPU VMs New form of distributed systems … New forms of data processing: in situ vs. in transit computing, continuum computing continuum computing - apps, tools, experiences, content that's available across devices Micro DC 1 Micro DC n 3

4 Summary Introduction Theoretical model Simulation Framework Results
Future work

5 MOBILE APPLICATION DEPLOYMENT
Offloading overview DECISION ENGINE APPLICATION PROFILER SYSTEM MONITORING USER PREFERENCES REMOTE EDGE/CLOUD INFRASTRUCTURE 1. Running mobile application 3. Compute deployment 2. Extract application DAG structure 2. Analyze monitoring data OFFLOADING ENGINE MOBILE APPLICATION DEPLOYMENT 5

6 Example DAG Edges define interdependencies between tasks
DAG of Facerecognizer App Edges define interdependencies between tasks A task needs the output of a previous one before starting its execution Computation-intensive Data transfer Not-offloadable 6

7 Offloading Model – Main Actors
Infrastructure A graph 𝐼=( 𝑁 𝐼 , 𝐿 𝐼 ) Nodes modelling computational nodes: Mobile device m𝑑=(𝐶𝑂𝑅𝐸𝑆, 𝑀𝐼𝑃𝑆, 𝑅𝐴𝑀, 𝑆𝑇𝑂𝑅,𝐵𝐴𝑇𝑇) Edge nodes 𝑒=(𝐶𝑂𝑅𝐸𝑆, 𝑀𝐼𝑃𝑆, 𝑅𝐴𝑀, 𝑆𝑇𝑂𝑅, 𝑝 𝑒 ) Cloud nodes 𝑐=(𝐶𝑂𝑅𝐸𝑆, 𝑀𝐼𝑃𝑆, 𝑅𝐴𝑀, 𝑆𝑇𝑂𝑅, 𝑝 𝑐 ) Edges modelling links 𝑙=( 𝑛 𝑖 , 𝑛 𝑗 , 𝑙𝑎𝑡𝑒𝑛𝑐𝑦, 𝑏𝑎𝑛𝑑𝑤𝑖𝑑𝑡ℎ) Modelling Infrastructure capabilities and network QoS; Application Modelled as a DAG 𝐴= 𝑇 𝐴 , 𝐿 𝐴 𝑇 𝐴 is the set of tasks 𝑡=(𝑀𝐼, 𝑅𝐴𝑀, 𝐷𝐴𝑇𝐴 𝑖𝑛 , 𝐷𝐴𝑇𝐴 𝑜𝑢𝑡 , 𝑂𝐹𝐹) 𝐿 𝐴 is the set of edges 𝑙=( 𝑡 𝑖 , 𝑡 𝑗 , 𝑙𝑎𝑡𝑒𝑛𝑐𝑦, 𝑏𝑎𝑛𝑑𝑤𝑖𝑑𝑡ℎ) Modelling application requirements. 7

8 Application deployment
A deployment D 𝐴,𝐼 of application A on infrastructure I is valid iff All tasks in the application A are completed; All hardware constraints: Number of cores, amount of storage required, latency, bandwidth Task offloading possibility Deployment’s main characteristics are Runtime, cost and battery lifetime of mobile device.  Battery lifetime is defined as the percentage of energy budget left on device md  at the end of the execution, namely  Energy is defined as the integral of the instantaneous power over time.  Offloading time OTup  depends on data transferred to (ti)  the bandwidth available between mobile device md  and (ti) . To offload ti , we need to transfer the binary and the input data DATAin(ti) . 8

9 Deployment objectives
min 𝑅𝑇(𝐷(𝐴,𝐼)) min 𝑈𝐶(𝐷 𝐴,𝐼 ) m𝑎𝑥 𝐵𝐿(𝐷 𝐴,𝐼 ) Where 𝐷 𝐴,𝐼 is a deployment of application A on infrastructure I respecting infrastructure constraints; RT,UC, BL are respectively the running time, the user cost and the battery lifetime of application deployment D(A,I). 9

10 Runtime The time instant at which all tasks are completed. RT(t,n)=
If executed on mobile device, we consider time for execution on mobile device; 𝑅𝑇 𝑙𝑜𝑐𝑎𝑙 𝑡,𝑛 . If offloaded, we consider: Time for offloading to target node; Time for execution on target node; Time for downloading output data; 𝑂𝑇 𝑢𝑝 𝑚𝑑,𝑛 + 𝑅𝑇 𝑙𝑜𝑐𝑎𝑙 (𝑡,𝑛)+ 𝑂𝑇 𝑑𝑜𝑤𝑛 𝑛,𝑚𝑑 10

11 Cost model Different prices for execution on Cloud or Edge
0 for local execution; 𝑝 𝑐 (𝑡) for execution on Cloud; 𝑝 𝑐 𝑡 + 𝑝 𝑒 (𝑡,η) for execution on Edge; η 𝜖 [0.01,1.0] is used to represent how much users prefers cheap price over speed; 0.01 1.0 Speed (Higher penalty) Cheap price (lower penalty) 11

12 Mobile energy model Offloading energy: Computing energy:
𝐸 𝑜𝑓𝑓 𝑡,𝑛 = 0 𝜏 𝑒𝑛𝑑 𝑃 𝑜𝑓𝑓 𝑡,𝑛,𝜏 𝑑𝑡 𝑃 𝑜𝑓𝑓 𝑡,𝑛, 𝜏 = 𝜖 𝑐𝑜𝑛𝑛 𝑛 ∗ 𝑈 𝑛𝑒𝑡 𝑡,𝑛,𝜏 + 𝐾 𝑐𝑜𝑛𝑛 𝑛 Where 𝜖 𝑐𝑜𝑛𝑛 𝑛 depends on the type of connection, 𝐾 𝑐𝑜𝑛𝑛 𝑛 is a hardware related constant and 𝑈 𝑛𝑒𝑡 𝑡,𝑛,𝜏 = 𝐷𝐴𝑇 𝐴 𝑛𝑒𝑡 (𝑡,𝜏) 𝐵𝑊(𝑚𝑑,𝑛) Computing energy: 𝐸 𝑐𝑝𝑢 𝑡,𝑛 = 0 𝜏 𝑒𝑛𝑑 𝑃 𝑐𝑝𝑢 𝑡,𝑚𝑑,𝜏 𝑑𝑡 𝑃 𝑐𝑝𝑢 𝑡,𝑛, 𝜏 = 𝛽 𝑓𝑟𝑒𝑞 𝑛 ∗ 𝑈 𝑐𝑝𝑢 𝑡,𝑚𝑑,𝜏 + 𝐾 𝑐𝑝𝑢 𝑛 12

13 Summary Introduction Theoretical model Simulation Framework Results
Future work

14 Simulation Framework FogTorchΠ ( It permits to describe IoT+Fog+Cloud infrastructures and microservices running on it; Employs Monte-Carlo method to estimate QoS assurance of deployment; The choice of stochastic Monte-Carlo simulation method allows to easily model the high variability of the environment. FogTorchΠ –Extended ( Added support for mobile devices; Added an energy consumption model for mobile devices; Included our cost model; Added support for DAG applications and scheduling; Included our offloading model. 14

15 Sampling example Cloud DC 1 Cloud DC n Example app setup
Lambda is parameter of the exponential distribution used to generate maps in each run of MC Cloud DC 1 Cloud DC n Edge DC 1 Edge DC n Internet latency : 𝐺𝑎𝑢𝑠𝑠𝑖𝑎𝑛(𝜇=200, 𝜎=33.5) Sampling of task parameters and network QoS 15 Infrastructure setup

16 Application structure
FogTorchΠ -Extended Iteration number Deployment algorithm Infrastructure setup Application structure SAMPLE_1 SIM_1 DEP_1 ) ( , SAMPLE_2 SIM_2 AGGREGATION DEP_2 1. Multiple samplings of task parameters and Infrastructure QoS 3. Aggregation of results SAMPLE_N SIM_N DEP_N Monte-Carlo Simulation Engine 2. Multiple executions of Deployment algorithm 16

17 Selected mobile apps NAVIGATOR APP FACERECOGNIZER APP ANTIVIRUS APP
CHESS APP Computation-intensive Data-intensive Not-offloadable 17

18 Questions QUESTION 1: Is Mobile Offloading on Edge (MECO) beneficial for the selected objectives? If so, for which one? QUESTION 2: How can we identify a trade-off solution between the objectives? 18

19 Introduction Theoretical model Simulation Framework Results
Summary Introduction Theoretical model Simulation Framework Results Future work

20 Experiments - I For each application, we try to find a deployment on a MECO and on a MCC infrastructure; Employing MinMin, MinCost, MaxBatt to find a local optimum; We perform consecutive executions of the offloadable part of the application, in order to check effects on the long run. MINMIN(A,I) while 𝑇 𝐴 ∈𝐴 ≠ ∅ minRuntime ← ∞ C ← getCompletedTasks() removeOutgoingEdges(C, 𝐿 𝐴 ) remove(C, 𝑇 𝐴 ) foreach t ←readyTasks( 𝑻 𝑨 ) foreach cn ∈ 𝑵 𝑰 if runtimeOnNode(t,cn)≤𝒎𝒊𝒏𝑹𝒖𝒏𝒕𝒊𝒎𝒆 target ←𝒄𝒏 minRuntime ←runtimeOnNode(t,cn) deployOnNode(t,target) costOnNode(t,cn)≤𝑚𝑖𝑛𝐶𝑜𝑠𝑡 batteryOnNode(t,cn) ≥maxBatt 20

21 Experiments - Runtime MECO: EDGE/CLOUD MCC: CLOUD 21

22 Experiments – User cost
MECO: EDGE/CLOUD MCC: CLOUD 22

23 Experiments – Battery lifetime
MECO: EDGE/CLOUD MCC: CLOUD 23

24 Experiments - Runtime MECO: EDGE/CLOUD MCC: CLOUD 24

25 Results Benefits for RUNTIME:
-39% for Navigator, -70.7% for Facerecognizer, -30% for Antivirus; Almost no change for Chess (low amount of data transmission). USER COST: Similar trends for all applications; Depending on user profile and number of runs. BATTERY LIFETIME [ ]% for all applications; Depending on energy consumption model and amount of data transferred. 25

26 Experiments - II QUESTION 2: How do we identify a trade-off solution between Runtime, User cost and Battery lifetime? User specifies his preferences for each objective Preference coefficients [𝛼,𝛽,𝛾] 𝑚𝑖𝑛𝑅𝑇(𝐷 𝐴,𝐼 min 𝑈𝐶(𝐷 𝐴,𝐼 ) max 𝐵𝐿(𝐷 𝐴,𝐼 ) →𝛼𝑅𝑇 𝐷 𝐴,𝐼 + 𝛽𝑈𝐶 𝐷 𝐴,𝐼 + 𝛾𝐵𝐿(𝐷 𝐴,𝐼 ) Each coefficients acts as “knob” and allows user to determine what is more important for its solution 26

27 ECHO (Edge Cloud Heuristic Offloading)
For each task t, we find the node minimizing 𝑠𝑐𝑜𝑟𝑒 𝑡,𝑛, 𝑅𝑇 , 𝐵𝐿 , 𝑈𝐶 , 𝛼,𝛽,𝛾 = 𝛼 𝑅𝑇(𝑡,𝑛) − 𝑅𝑇 (𝑡) +𝛽 𝐵𝐿 𝑡,𝑛 − 𝐵𝐿 (𝑡) + 𝛾 𝑈𝐶 𝑡,𝑛 − 𝑈𝐶 (𝑡) ; 𝑅𝑇 (𝑡), 𝐵𝐿 (𝑡) and 𝑈𝐶 (𝑡) represent the local optimum for runtime, battery lifetime and user cost; 𝛼,𝛽,𝛾 represent the weight for each parameter. 27

28 Results of ECHO heuristic
MAPE of ECHO solution vs heuristic solutions for each objective

29 Future work Improving energy model; Improving network simulation;
Adding 4G, LTE… Considering different network topologies Including geographical distance and failures Testing different algorithms; NSGA-II and MOPSO Control Theory Extending the model; Multi-user model Adding provider’s revenue 29

30 Thanks for your attention! Questions?
Vincenzo De Maio, Ivona Brandić

31 Allocation problem 𝑡 𝑖 ∈ 𝐷 𝑡 𝑛 𝑗 𝐶𝑂𝑅𝐸𝑆 𝑡 𝑖 ≤𝐶𝑂𝑅𝐸𝑆 𝑛 𝑖 , 𝑅𝐴𝑀 𝑡 𝑖 ≤𝑅𝐴𝑀 𝑛 𝑖 , 𝑆𝑇𝑂𝑅𝐴𝐺𝐸 𝑡 𝑖 ≤𝑆𝑇𝑂𝑅𝐴𝐺𝐸( 𝑛 𝑖 ); ∀ 𝑛 𝑖 , 𝑛 𝑗 ∈ 𝛿 𝑖𝑛 𝑡 𝑖 , 𝜏 , 𝛿 𝑜𝑢𝑡 𝑡 𝑖 ,𝜏 , 𝑙𝑎𝑡𝑒𝑛𝑐𝑦 𝑡 𝑖 , 𝑡 𝑗 ≥𝑙𝑎𝑡𝑒𝑛𝑐𝑦 𝑛 𝑖 , 𝑛 𝑗 , 𝑛 𝑖 , 𝑛 𝑗 ∈ 𝛿 𝑖𝑛 𝑛 𝑖 , 𝜏 , 𝛿 𝑜𝑢𝑡 ( 𝑛 𝑖 ,𝜏); ∀ 𝑛 𝑖 , 𝑛 𝑗 ∈ 𝛿 𝑖𝑛 𝑡 𝑖 , 𝜏 , 𝛿 𝑜𝑢𝑡 𝑡 𝑖 ,𝜏 , 𝑏𝑎𝑛𝑑𝑤𝑖𝑑𝑡ℎ 𝑡 𝑖 , 𝑡 𝑗 ≤𝑏𝑎𝑛𝑑𝑤𝑖𝑑𝑡ℎ 𝑛 𝑖 , 𝑛 𝑗 , 𝑛 𝑖 , 𝑛 𝑗 ∈ 𝛿 𝑖𝑛 𝑛 𝑖 , 𝜏 , 𝛿 𝑜𝑢𝑡 ( 𝑛 𝑖 ,𝜏);

32 Runtime model 𝑅𝑇 𝑡,𝑛 = 𝑀𝐼(𝑡) 𝑀𝐼𝑃𝑆(𝑚𝑑) 𝑖𝑓 𝑛=𝑚𝑑 𝑂𝑇 𝑢𝑝 𝑚𝑑,𝑛 + 𝑀𝐼(𝑡) 𝑀𝐼𝑃𝑆(𝑛) + 𝑂𝑇 𝑑𝑜𝑤𝑛 𝑛,𝑚𝑑 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 𝑂𝑇 𝑢𝑝 𝑚𝑑,𝑛 = 𝑀𝐼 𝑡 ∗𝑖𝑛𝑠𝑡 𝑟 𝑠𝑖𝑧𝑒 +𝐷𝐴𝑇 𝐴 𝑖𝑛 (𝑡) 𝐵𝑊(𝑚𝑑,𝑛) +latency(md,n) 𝑂𝑇 𝑑𝑜𝑤𝑛 𝑛,𝑚𝑑 = 𝐷𝐴𝑇 𝐴 𝑜𝑢𝑡 (𝑡) 𝐵𝑊(𝑛,𝑚𝑑) +𝑙𝑎𝑡𝑒𝑛𝑐𝑦(𝑚𝑑,𝑛)


Download ppt "First Hop Offloading of Mobile DAG Computations"

Similar presentations


Ads by Google