mobile gpu cloud computing

44
Mobile GPU Cloud Computing Marwa Ayad Prof. Ashraf Salem Dr. Mohamed Taher GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Upload: marwa-ayad-mohamed

Post on 18-Jan-2017

211 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Mobile gpu cloud computing

Mobile GPU Cloud ComputingMarwa Ayad

Prof. Ashraf SalemDr. Mohamed Taher

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 2: Mobile gpu cloud computing

2

Agenda• Introduction• Motivation • Objectives• Cloud computing • Mobile Cloud Computing• Real Time face Recognition MCC• Face Recognition MCC enhancement • Conclusions

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 3: Mobile gpu cloud computing

3

Introduction• Mobile Cloud Computing (MCC) which combines mobile

computing and cloud computing. It refers to an infrastructure where the data storage and data processing can happen outside of the mobile device.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 4: Mobile gpu cloud computing

4

Motivation• Mobile devices are becoming an essential part of human life. (e.g.,

Smartphone, tablet PCs, etc) • Mobile devices still lack in resources.• MCC overcome the mobile challenges (battery lifetime,

processing power, availability)• Integrate mobile device with cloud computing

– Accessing to multimedia and sensors data.• MCC provide Efficient and effective application

– Real-time response.– Minimum communication cost with mobile platform – Limited computation overhead

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 5: Mobile gpu cloud computing

5

Motivation

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 6: Mobile gpu cloud computing

6

Motivation

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 7: Mobile gpu cloud computing

7

Motivation

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 8: Mobile gpu cloud computing

8

Objective

• The objective of this work is to:– Build Mobile Cloud Computing environment with open

source cloud OS. – Develop Mobile Cloud Computing Application.– Enhance Mobile Cloud Computing Application.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 9: Mobile gpu cloud computing

9

Agenda• Introduction• Motivation • Objectives• Cloud computing

– CC service module– CC deployment module– Build private cloud (opensource Software)

• Mobile Cloud Computing• Real Time face Recognition MCC• Face Recognition MCC enhancement • Conclusions

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 10: Mobile gpu cloud computing

10

Cloud Computing• Cloud Computing provider of pooled network resources such

as CPU, RAM, Storage and software over the web. These services are easily provides and released on demand.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 11: Mobile gpu cloud computing

11

Cloud Computing service models • Infrastructure as a Service (IaaS):• Platform as a Service (PaaS).• Software as a Service (SaaS).

Page 12: Mobile gpu cloud computing

12

Cloud Computing deployment models• Private Cloud.• Public Cloud. • Hybrid Cloud.• Community Cloud

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 13: Mobile gpu cloud computing

14

OpenStack (IaaS)• OpenStack: Open source cloud operating system that controls

large pools of compute, storage, and networking resources throughout a datacenter.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 14: Mobile gpu cloud computing

15

OpenShift (PaaS)• OpenShift:

o Open Source Software to PaaS that enables developers to build and deploy web applications without constraints.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 15: Mobile gpu cloud computing

16

Cloud Service models IaaS vs PaaS• Experiment Goal:

– Evaluate application deployment in deferent cloud service models.

• Experiment Description: – retrieve the data of ten persons from MySQL database.

• {"personData":[{"address":"nasrcity","age":"20","city":"Cairo","country":"Egypt","description":"Marwa has traditional and practical personality. she is hardworking and has leadership. ","email":"[email protected]", "gender":"female", "image":" ","job":"Senior Software Engineer ","name":"Marwa","telephonNumber":"0245358249329 "}]}

• Experiment Result:

Total request Time service models

1.75 sec Iaas

2.83 sec Paas

The platform as a service module adds a little overhead on response time. The overhead is mainly caused by managing and monitoring development software.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 16: Mobile gpu cloud computing

17

Agenda• Introduction• Motivation • Objectives• Cloud computing • Mobile Cloud Computing

– Mobile cloud computing architecture – Mobile cloud computing Application

• Real Time face Recognition MCC• Face Recognition Mcc enhancement• Conclusions

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 17: Mobile gpu cloud computing

18

Mobile cloud Computing Architecture

• Mobile Network

• Cloud Computing

• Mobile Device (with developed Application )

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 18: Mobile gpu cloud computing

19

Mobile cloud Computing Application

• Native Mobile applications– Developed using mobile platform supported programming languages

• Embedded browser applications:– developed using standard web development languages.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 19: Mobile gpu cloud computing

20

Mobile Android Vs. Blackberry • Experiment goal:

– Measure the effect of mobile client resources with multiple requests to cloud backend application.

• Experiment Description: – The native mobile application for android and blackberry generates and sends

20 request in closed loop (sequentially) and record the time of whole process.

• Experiment Result:Average time per request

Total time for 20 sequential request

1.40 s 28.1746 s SONY ((Android

10.5 s 210.6431ms Blackberry(blackberry API)

Android 10 times faster than blackberry.Blackberry OS 5.0 has 6 network transport types [Blackberry Internet Service, mobile data service, Direct TCP, WIFI TCP, WAP 1.0, and WAP 2.0]. Android makes http request faster by using the apache HTTP client.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 20: Mobile gpu cloud computing

21

Mobile Android Vs. Blackberry in Different Cloud structure

• Experiment goal: – Measure the effect of mobile client resources with one request to different

cloud structure.• Experiment Description:

– The native mobile application for two android devices and blackberry generates one request to retrieve person data.

• Experiment Result:

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 21: Mobile gpu cloud computing

22

Agenda• Introduction• Motivation • Objectives• Cloud computing)• Mobile Cloud Computing• Real Time face Recognition MCC

– Face Detection– Face recognition

• Face Recognition MCC enhancement • Conclusions

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 22: Mobile gpu cloud computing

23

Real Time face Recognition MCC(SaaS)

• High computational power.• Required large storage• Using mobile resource.• Real Time response.• Multiple accessing.• Useful application.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 23: Mobile gpu cloud computing

24

Face Recognition Flow Diagram

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 24: Mobile gpu cloud computing

25

Face Detection (Viola and Jones call Haar Classifier Detection Algorithm )

• Haar Classifier Detection: o The Algorithm looks for specific features of a human face o When one feature is found, the algorithm allows to pass to the next stage of detection.o Uses a cascade of stages to eliminate non-face candidates quickly.o Our implementation Consist of 24 stages and each stage contains number of features.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 25: Mobile gpu cloud computing

26

Face Recognition (The Eigenface Algorithm )

Image database consist of 50 face image for 10 unique people with 5 photos / person

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 26: Mobile gpu cloud computing

27

Agenda• Introduction• Motivation • Objectives• Cloud computing • Mobile Cloud Computing• Real Time face Recognition MCC• Face Recognition MCC enhancement

– Face Detection filter– Multithread face Detection– GPU accelerations

• Conclusions

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 27: Mobile gpu cloud computing

28

Face recognition MCC enhancements

• Face recognition algorithm enhancement– Apply skin filter after detection .

• Programming enhancement – Multithread application.

• GPU Acceleration

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 28: Mobile gpu cloud computing

29

Face Detection Filters

• Face Detection Filter (Skin Color Filter)– Pixel in skin image is more or equal to estimated threshold value. Total

pixel skin more than 50%– Increase the accuracy of the detection from 95% to 97%.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 29: Mobile gpu cloud computing

30

Evaluate Face Recognition MCC Application in Different Cloud Structures

• Experiment goal: – Measure the performance of face recognition application with different image

size deployed in different cloud structure.• Experiment Description:

– The images database consists of 50 photos for 10 persons.• Experiment Result:

• The presented time includes the communication time between mobile and cloud instance and it is similar in one and multiple servers with quite increasing in VM cloud instance.

• Increasing number of faces in image not only increases the recognition time but also increases time of detection.

Page 30: Mobile gpu cloud computing

31

Multithread Face Detection• Detection window parallelization:

– Detection window moving over input image can be parallelized.

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 31: Mobile gpu cloud computing

32

Evaluate Effect of Multiple Thread Face Detection Application

• Experiment goal: – Prove that distribute face detection tasks on multiple threads improve algorithm

computation and provide better utilization to cloud resources.

• Experiment Description: – Implement android face detection mobile application.

• Experiment Result:

The experiment proves that four threads will reduce execution time by 2.8 times as still communication spent fixed time and switch between thread overhead.

Page 32: Mobile gpu cloud computing

33

GPU Acceleration • Executing data parallel code fragments on the

GPU rather than being confined to the local CPU

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 33: Mobile gpu cloud computing

34

NVIDIA GTX 480

GPU_MCC

Marwa Ayad, ICEAC 2015, Cairo

Recall, there are 15 cores on the GTX 480:15 *32

Page 34: Mobile gpu cloud computing

35

Simple Processing Flow

1. Copy input data from CPU memory to GPU memory

PCI Bus

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 35: Mobile gpu cloud computing

36

Simple Processing Flow

1. Copy input data from CPU memory to GPU memory

2. Load GPU program and execute,caching data on chip for performance

PCI Bus

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 36: Mobile gpu cloud computing

37

Simple Processing Flow

1. Copy input data from CPU memory to GPU memory

2. Load GPU program and execute,caching data on chip for performance

3. Copy results from GPU memory to CPU memory

PCI Bus

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Page 37: Mobile gpu cloud computing

38

Face Recognition GPU Vs. CPU• Experiment goal:

– Measure the effect of using GPU instead of using CPU Only.

• Experiment Description: – CUDA face recognition implementations vs. CPU face recognition implantation.

• Experiment Result:

We can see that CUDA based implementation on GEForce GT 525M(96 core) is 9 times faster than the CPU version.

Page 38: Mobile gpu cloud computing

39

Face Detection mobile Vs. CPU Cloud Vs.GPU Cloud

• Experiment Goal: – measure the execution of face detection application on local on mobile device

and remotely on deferent cloud platform.

• Experiment Description:– Mobile face detection implantation Vs. MCC face recognition

• Experiment Result:– Cloud 40x Vs. mobile– One server = multiple

Server with low processingPower.

Page 39: Mobile gpu cloud computing

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

40

Conclusions

• A private Cloud system has been constructed• Face recognition MCC Application has been

developed .• Performance improved by using GPUs

– Speedup of 9x vs. CPU• Results show 40x speedup on cloud compared

to mobile

Page 40: Mobile gpu cloud computing

41

Thank You

[email protected]

Page 41: Mobile gpu cloud computing

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

42

Experimental SetupCloud Server Mobile Device

GPU Acceleration :

Nvidia: GEForce GT 525MCUDA Driver Version 6.5Number of multiprocessor : 2Number of CUDA Cores/Mp: 48 Total (96 CUDA Cores)

Development Tool

Page 42: Mobile gpu cloud computing

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

43

MCC Security Platformchain security mechanism

Page 43: Mobile gpu cloud computing

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

44

CSM Security Application platform

• Mobile Generates Asymmetric Key (MPK & MSK)

• Register with ID & MPK• Cloud check Generate (SK)• Cloud encrypted authorization

message & SK by MPK.• Mobile Divided data and encryption

SK + part number.• Cloud Decryption & processing.• Cloud response Encrypted with (sk).• Authentication & Authorization

(second time)

Page 44: Mobile gpu cloud computing

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

45

CSM Security Data sharing platform