Cloud Based Framework for Rich Mobile Application Roberto Fonseca, Andrew Williams and Krishna Sharma Project Champion: Reza Rahimi
Mobile Offloading/Cyber Foraging Although the computing ability of mobile devices has greatly improved over the last few years it is still not enough to satisfy the current demand needs Offloading resource intense components of an application to a server. The server calculates and returns the result to the client. Computation time is saved by the client, however transmission time needs to be taken into account before time or power savings may be realized.
Our Solution using Open Cloud Computing Used open source project "Java OCR" Created 3 main components of Java OCR -- Convert to Gray-scale -- Filter image -- Scan image Components are distributed between client and server Used a cloud server (Microsoft Azure) Used RESTful webservices on the cloud Decision component done manually to check timing of different configurations
Testing Setup End to end testing involves two parts: 1. (Laptop/Android phone) to Local Server 2. (Laptop/Android phone) to Microsoft Azure Cloud
Testing Setup Consisted of a combination of parameters Testing the OCR process on a small paragraph and multiple paragraphs Different Resolutions 200, 300, 600 DPI Small file sizes and large file sizes Measured the RTT, Filter Time, Grayscale Time and Scan time and estimated Peak Energy usages on client device.
Findings Testing performed on a 1.4 ghz cpu laptop to simulate a generic mobile device running Java. Not much different between client and cloud server total run times except on larger files that require more computation power. Split execution between device and Cloud server resulted in the slowest time. This is because for this particular application the intermediate steps of image processing require sending very large files Execution using a local server for offloading large files resulted in times that were 2-3 times faster than executing on the client only. Offloading provides good results in specific cases o Processing large files on Cloud Only or Local Server Only