Mobile gpu cloud computing

  • Published on
    18-Jan-2017

  • View
    199

  • Download
    1

Embed Size (px)

Transcript

Real-time Mobile Cloud Computing

Mobile GPU Cloud ComputingMarwa AyadProf. Ashraf SalemDr. Mohamed Taher

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

1

AgendaIntroductionMotivation ObjectivesCloud computing Mobile Cloud ComputingReal Time face Recognition MCCFace Recognition MCC enhancement Conclusions

2GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

2

IntroductionMobile 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.

3GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

MotivationMobile 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 computingAccessing to multimedia and sensors data.MCC provide Efficient and effective application Real-time response.Minimum communication cost with mobile platform Limited computation overhead

4GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Mobile cloud computing (MCC) has been introduced to be a potential technology for mobile services.MCC integrates the cloud computing into the mobile environmentovercomes obstacles related to the performance (e.g., battery life,storage, and bandwidth),environment (e.g., heterogeneity, scalability, and availability),security (e.g., reliability and privacy). 4

Motivation

5GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Efficient and effective computation offloading:Variable bandwidthMobile service availabilityDifficulty of runtime conditions estimationSecurity:Multi-tenancy in cloud causes vulnerabilityOffloaded code prone to tamperingEnd-to-end security of mobile code at risk5

Motivation6

GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Motivation7GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

ObjectiveThe 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.

8GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

AgendaIntroductionMotivation ObjectivesCloud computing CC service moduleCC deployment moduleBuild private cloud (opensource Software)Mobile Cloud ComputingReal Time face Recognition MCCFace Recognition MCC enhancement Conclusions

9GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

9

Cloud ComputingCloud 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.

10GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Cloud Computing is a combination of virtualization (one computer hosting several virtual servers), automated provisioning (servers have software installed automatically) distributed computing and Internet connectivity technologies to provide the service. 10

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

11

Iaas:Provides infrastructure such as computer instances, network connections, and storage so that user can run any software or operating system.Paas:Provides the ability to deploy applications through a programming language or tools supported by the cloud platform provider.Saas:Provides the ability to use the software in a cloud environment11

Cloud Computing deployment models

Private Cloud.Public Cloud. Hybrid Cloud.Community Cloud12GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Private Cloud which the services and infrastructure are maintained on a private network.Public Cloud which the services and infrastructure are provided off-site over the Internet. Hybrid Cloud which is composition of both public and private clouds.

12

BUILD PRIVATE CLOUD(By open source software)

13GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Reasons for Building a Private CloudThe better utilization of hardware The ability to quickly provision capabilitiesThe ability to easily provide continuity of application.

B. Categories of Infrastructure for a Private Cloud

Before Selection the private cloud infrastructure software we need to understand the component of private cloud infrastructure

Virtualization: technology provides the hypervisor software, which allows multiple instances of guestoperating systems to run concurrently on the same physical server. Storage technology: such as storage area networks (SANs), can provide the underlying persistent storage for the data center. Security such as identity management and virtual firewalls. Provisioning, management, and metering tools provide the ability to deploy virtual operating systems, services, and applications.13

OpenStack (IaaS)OpenStack: Open source cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter.

14GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

The reason of selection openStack:a) Provide scalable, elastic cloud computing for private cloud. b) Simple to implement and massively scalable Change. c) Managed all resources through a dashboard that gives administrators control while empowering their users to provision resources through a web interface. d) Excellent for large deployments. e) The user can have good knowledge to the used component only not all openstack components.

2) OpenStack Component And Architecture : Dashboard ("Horizon"): provides a modular web based user interface for all the OpenStack services. Identity ("Keystone"): provides authentication and authorization Image ("Glance") : provides a catalog and repository for virtual disk images. Compute ("Nova") : provides virtual servers upon demand. Networking ("Neutron"): Enables network connectivity as a service among interface devices managed by other OpenStack services, usually Compute Service. Block Storage ("Cinder "): A service that manages persistent block storage volumes for virtual machines. Object Storage ("Swift "): provides object storage. It allows you to store or retrieve files.14

OpenShift (PaaS)OpenShift:Open Source Software to PaaS that enables developers to build and deploy web applications without constraints.

15GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

The reason of selection OpenShift.

Open Source Software and run on top of Openstack private cloud infrastructureOpenshift provide programming languages and frameworks Java, Ruby, and PHP. It also provides integrated developer tools to support the application lifecycle,including Eclipse integration, JBoss Developer Studio. Easy to deploy and provide great documentation for the services.Provide standard languages , IDE Integration , Built-in Database Services and responsive Web Console and application portability.

15

Cloud Service models IaaS vs PaaSExperiment 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":"EngMarwaAyad@gmail.com", "gender":"female", "image":" ","job":"Senior Software Engineer ","name":"Marwa","telephonNumber":"0245358249329 "}]}

Experiment Result:

Total request Timeservice models1.75 secIaas 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.16GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

This web application is RESTful webservice return result in JSON format. VMOne ServerMulti ServerIaaS3.60 sec1.75 sec1.02 secPaaS5.95 sec2.83 sec1.98 sec

16

AgendaIntroductionMotivation ObjectivesCloud computing Mobile Cloud ComputingMobile cloud computing architecture Mobile cloud computing ApplicationReal Time face Recognition MCCFace Recognition Mcc enhancementConclusions17GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

17

Mobile cloud Computing Architecture Mobile Network Cloud Computing

Mobile Device (with developed Application ) 18GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

In this architectureThe cloud resource is placed in a remote centralized cloud infrastructure.

The mobile devices access the backbone network via WiFi access points (APs) or 3G/4G cellular networks.

The Requests and information of Mobile users are transmitted to the central processors that are connected to servers providing mobile network services.

After that, the requests are delivered to a cloud through the Internet.

In the cloud, cloud controllers process the requests to provide mobile users with the corresponding cloud services .

18

Mobile cloud Computing ApplicationNative Mobile applicationsDeveloped using mobile platform supported programming languagesEmbedded browser applications:developed using standard web development languages.

19GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

The mobile interact with cloud service by two ways:

Native Mobile applications(used in our application): are developed using mobile platform supported programming languages and a set of APIs provided by the cloud service provider .This type is used in the face recognition application as android application is installed in the mobile device to allow to send request to the face recognition cloud engine.Embedded browser applications: are developed using standard web development languages (e.g. HTML and JavaScript).

Web service :

Send data as json object not xml

19

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 requestTotal time for 20 sequential request 1.40 s28.1746 sSONY ((Android10.5 s210.6431msBlackberry(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.

20GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

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:

21GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

AgendaIntroductionMotivation ObjectivesCloud computing)Mobile Cloud ComputingReal Time face Recognition MCCFace DetectionFace recognitionFace Recognition MCC enhancement Conclusions22GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Real Time face Recognition MCC(SaaS)High computational power.Required large storageUsing mobile resource.Real Time response.Multiple accessing.Useful application.

23GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

Face Recognition Flow Diagram

24GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

first part is Mobile application (Android platform) and second part is face recognition engine on the cloud.

The mobile communicate with the cloud by using the restful web service as the image and user data is send to the web server in JSON format. The user data is used to authorize the application users. Also the image is encrypted in before send it.And decrypted once arrive to the cloud engine.

The First part is face detection :is based on identifying and locating a human face inimages regardless of size, position, and condition The Second part is face recognition: it is analysis part as it compare the detected person face with the stored human faces in database.The face recognition mobile cloud application is native application which has to deploy in mobile.

The face recognition cloud engine it apply the face detection algorithm Viola Jones Face Detector at the first Then for the detected faces it converts them into a set of Eigenfaces and compare with stored faces

If the identification percentage 80% or more the response will back to client mobile application with the person information else it will inform the client that face is unknown.

24

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

25GPU_MCC Marwa Ayad, ICEAC 2015, Cairo

AdaBoost Integral Image -- The face detection algorithm looks for specific Haar features of a human face. When one of these features is found the algorithm allows the face candidate to pass to the next stage of detection. A face candidate is a rectangular section of the original image called a sub-window.

This sub-window is often scaled in order to obtain a variety of different size faces.

The Viola and Jones face detection algorithm uses a cascade of stages which is used to eliminate non-facecandidates quickly. The cascade eliminates candidates by making stricter requirements in ea...