[With the adoption of SaaS applications, augmented reality, visual recognition and other next-gen phone apps, the smartphone processing model is looking for help from the Cloud. Guest author Vish Nandlall introduces the concept of the Cloud Phone and the technology advances that can make this happen]
Are smartphones converging with laptops ? While smartphones enable a rich user experience, there exists an order of magnitude gap in memory, compute power, screen real-estate and battery life relative to the laptop or desktop environment (see table below). This disparity renders the whole question of smartphones vs laptops an apple vs oranges debate. It also begs the question: can the smartphone ever bridge the gap to the laptop?
|Apple iPhone 4||HTC EVO 4G||ASUS G73Jh-A2||Dell Precision M6500|
|CPU||Apple A4 @ ~800MHz||Qualcomm Scorpion @ 1GHz||Intel Core i7-720QM
|Intel Core i7-920XM @ 2.0GHz|
|GPU||PowerVR SGX 535||Adreno 200||N/A||N/A|
|RAM||512MB LPDDR1 (?)||512MB LPDDR1||4x2GB DDR3-1333||4x2GB DDR3-1600|
|Battery||Integrated 5.254Whr||Removable 5.5Whr||75Whr||90Wh|
Source: vendor websites
As a matter of physics, the mobile and nomadic/tethered platform will always be separated along the silicon power curve – largely driven by physical dimensions. The laptop form factor will simply be able to cool a higher horsepower processor, host a larger screen real-estate and house a larger battery and memory system than a smartphone.
Does a smartphone need to be laptop ?
Yes it does…or, at least, it soon will. The low-power constraints of mobile devices have been the official Apple argument behind the recent Apple-Adobe feud – and Apple’s acquisition of PA Semi is a further testament to the importance of the hardware optimization in mobile devices.
The processing envelope for mobile applications is becoming stretched by the demands of next-generation mobile applications; always-on synchronization of contacts, documents, activities and relationships bound to my time and space; the adoption of Augmented Reality applications by mainstream service providers that pushes AR into a primary â€˜window’ of the phone; advanced gesture systems as MIT’s “sixth sense” that combine gesture based interfaces with pattern recognition and projection technology; voice recognition and visual recognition of faces or environments that makes mobile phones an even more intuitive and indispensible remote control of our daily lives. All these applications require the combination of a smartphone “front-end” and a laptop “back-end” to realise – not to mention having to run multiple applications in parallel.
The appearance of these next-gen applications will also create greater responsibilities for the mobile application platform: it is now important to monitor memory leaks and stray processes sucking up power, to detect, isolate and resolve malicious intrusions and private data disclosure, and to manage applications which require high-volume data.
So we come back to the question, is there a way to “leapfrog” the compute and memory divide between tethered and mobile devices? The answer, it turns out, may lie in the clouds.
The concept behind the Cloud Phone is to seamlessly off-load execution from a smartphone to a “cloud” processing cluster. The trick is to avoid having to rewrite all the existing applications to provide this offload capability. This is achieved through creating a virtual instance of the smartphone in the cloud.
The following diagram shows basic concept in a nutshell (source: NTT DoCoMo technical review)
The Cloud Phone technology has been brought back in vogue is due to advancements in four key areas:
- Lower cost processing power; Compute resources today are abundant, and data centers have mainstreamed technologies for replicating and migrating execution between and within connected server clusters.
- Robust technologies for check-pointing and migrating applications; Technologies such as live virtual machine migration and incremental checkpointing have emerged from the classrooms and into production networks.
- Reduced over-the-air latency; the mobile radio interface presents a challenge in terms of transaction latency. Check-pointing and migration requires latencies on the order of 50-80ms – these round trip times can be achieved through current HSPA, but will become more realistic in next-generation LTE systems. Average latencies in a “flat” LTE network are approximately 50ms at the gateway, which suddenly makes the prospect of hosting the smartphone application on a carrier-operated “cloud” very much a reality. Note that past the gateway, or beyond the carrier network, latencies become much more unmanageable and will easily reach 120ms or more.
- Mobile Virtualization; this technology offers the ability to decouple the mobile OS and application from the processor and memory architecture, enabling applications and services to be run on “cloud” servers. This has become an area of intensive research in mobile device design, and was covered in an earlier article by OK Lab’s Steve Subar.
A cloud execution engine could provide off-loading of smartphone tasks, such as visual recognition, voice recognition, Augmented Reality and pattern recognition applications, effectively overcoming the smartphone hardware and power limitations. This model would also allow key maintenance functions requiring CPU intensive scans to be executed on a virtual smartphone “mirror image” in the cloud. This would also facilitate taint checking and data leak prevention which have been long used in the PC domain to increase system robustness.
Another consequence of the Cloud Phone model is that it provides a new “value-add point” for the carrier in the mobile application ecosystem. The low latency limitations will require optimizations at the radio-access network layer implying that the network carrier is best positioned to extract value from the Cloud Phone concept – plus operators can place data centres close to the wireless edge allowing very low latency applications to be realized. This doesn’t rule out a Google entering into the fray – indeed, their acquisition of Agnilux may well signal a strategy to build a proprietary server processor to host such Cloud Phone applications.
The raw ingredients for the Cloud Phone are falling into place; more users are driven towards SaaS based phone applications, and HTML5 is being adopted by handset OEMs. There is no shortage of applications waiting to exploit a cloud phone platform: in July alone, 54 augmented reality apps were added to the Apple App Store. Google has also broken ground in the Cloud Phone space with Cloud to Device Messaging which helps developers channel data from the cloud to their applications on Android devices.
What other Cloud Phone applications do you see on the horizon? When do you see Cloud Phones reaching the market?
[Vish Nandlall is CTO in the North American market for Ericsson, and has been working in the telecoms industry for the past 18 years. He was previously CTO for Nortel’s Carrier Networks division overseeing standards and architecture across mobile and wireline product lines. You can read his blog at www.theinvisibleinternet.net]