In the 1980s, a single clunky home computer was a luxury for many households; today, it’s not surprising for an individual consumer to have a smartphone, a tablet, a laptop and a desktop—four powerful computing components that each easily blow away devices from just 5 to 10 years ago. Each device serves its own purposes, but this proliferation causes problems with regard to software usage, data access and capability overlap. One solution is modular computing: using a single device as the central core driving all the others. It’s not a new idea, but does it have a future?
The Ideal Modular Computing World: The Smartphone Runs Everything
Imagine a world where your smartphone has all the compute power you need, as well as long battery life. Instead of buying a bulky desktop machine, a laptop for powerful mobile computing, a tablet for less-intensive purposes and a smartphone for the greatest mobility and convenience, your smartphone could simply dock with a portable display to form a tablet, a keyboard and track pad to form a laptop, or a larger screen with other input devices (keyboard, mouse and so on) to form a full-fledged desktop system. This is one vision of modular computing.
It sounds great, but is it feasible? Given the increasing performance of smartphones, it’s certainly not out of the question, but the critical consideration is whether a single device can really be all things to all people. To some extent, this matter must be divided into two separate issues: hardware and software.
Hardware: Steps in the Right Direction, but High Hurdles Remain
The most obvious objection to the modular-computing approach is that a smartphone lacks sufficient compute power to drive major applications on desktops. Smartphone processors are designed with battery life in mind, and catering to efficiency necessarily comes at the expense of performance. This tradeoff is mitigated somewhat by new multicore processor designs that incorporate two types of cores: one “brawny” core that can be activated when more processing power is needed, and one “wimpy” core that can run lighter tasks with greater efficiency. ARM’s Big.Little architecture is one such example. Such an approach could conceivably pack lots of processing power into a small device, only making use of it when, say, attached to the main power utility instead of just a battery. Even then, however, once you start adding more graphics capabilities and other accelerators, along with memory and storage, the size of the silicon can quickly exceed the size of the typical smartphone form factor. Consumers probably don’t want to return to the brick-size phones of the 1980s.
On the upside, the cloud can be a big help in pursuit of modular computing. Data centers—which don’t worry about mobility—can provide storage and even compute power remotely. Cloud-based storage is particularly beneficial, since it eliminates the need to sync data across multiple devices. In a more extreme modular approach, the cloud removes the need for massive amounts of space on the smartphone device, ameliorating one of the difficulties with designing a desktop-class computer in a smartphone form factor.
Currently, however, hardware considerations are an insurmountable barrier to bringing modular computing to more than a narrow range of users. Graphics or other compute-intensive content creators and serious gamers would simply be unable to satisfy their demands through what can fit in a smartphone, even if the cloud is exploited. Software is another concern, although it may also be a more realistic segment in which modular computing (or something like it) can thrive.
Software: Opportunities Abound?
First, let’s address one likely objection to the hardware issue. Moore’s Law predicts that processors will (up to a point, anyway) continue becoming smaller and faster. So, eventually a smartphone will provide ample room for a desktop-class computer, right? Not so fast. You may have noticed that you still struggle with a slow operating system and sluggish programs (unless you upgrade your equipment) despite decades of improvements in processor capabilities. The problem is that software “bloats” to absorb that extra performance. Yes, sometimes it’s the kind of real bloat that drives users crazy, but some of it is legitimate addition of new features that users want and (now) expect. Software efficiency isn’t a priority when there’s a surplus of compute power available. If Moore’s Law slows or ends, then look for a greater focus on software efficiency.
In the meantime, however, one major hurdle to a modular approach to computing is software incompatibility. Smartphone and tablet operating systems have largely been disconnected from desktop and laptop operating systems. Here is where a significant opportunity exists: bridging the world of high mobility and high performance in the software realm. This is certainly not a new idea; Microsoft, for instance, has been pursuing it with Windows 8. Another competitor in this realm is Ubuntu, which is seeking to serve tablets and smartphones in addition to larger systems. The brief presentation by Canonical’s Mark Shuttleworth describes a modular-computing approach based on a smartphone running a mobile-optimized Ubuntu. Although software compatibility across all computing form factors isn’t sufficient for a marketable modular approach, it is certainly necessary.
With increasingly ubiquitous broadband Internet access, hardware issues could be ameliorated by software as a service delivered through the cloud: let the mobile device do what it does best, and let remote data centers do all the heavy compute lifting. As more software packages are offered as services hosted in the cloud, this approach gains greater viability. A smartphone might then not need all the local compute power of a desktop if the intensive applications are run elsewhere. This approach could suit those who prefer a pay-as-you-go approach to computing, but those who want to simply fork over the capital expense for hardware and software and not pay ongoing expenses would be out of luck. (The same debate is ongoing in the data center industry: build your own or outsource to someone else?)
If modular computing—given the current hardware limitations—is to take off, data centers will play a major role in delivering services to mobile devices (most likely smartphones) that serve as the heart of several different form factors. Although hardware will continue to become smaller and faster, it probably won’t achieve the scale necessary to make a smartphone, by itself, sufficient to deliver desktop-class performance to content creators and heavy gamers. (That is, barring a major shift in the way software is developed.) Performance and efficiency are, to some extent, at odds in processor design, so we unfortunately cannot expect to get Xeon-level compute power and ARM-style efficiency in the same chip.
Because a processor can’t be all things to all people, modular computing probably won’t ever be the most widely used approach. Many users will stick with long-lasting mobile devices for communications and light processing on the go, but separate laptop and desktop machines for heavy workloads, like content creation and graphics-intensive gaming. The recent slide in PC sales as tablet sales take off, however, indicates that a segment of consumers (and even business users) may be a good target market for modular computing. These users may not need the all-out power of a desktop or high-end laptop; in such cases, a smartphone—supplemented by the cloud—may provide everything the user needs, making modular computing a feasible approach that improves convenience and reduces device overlap.
These dynamics, however, may not be enough to give modular computing the push it needs to take off in the market. Just as the netbook segment wavered owing to a lack of sufficient differentiation and value in the eyes of consumers, so the modular approach may fail to gin up sufficient interest, even if it does overcome the technical barriers. If it does stick, it will likely remain a limited market. Independently, software compatibility across platforms is gaining momentum, but it too may not sufficiently capture the interest of consumers to keep it going. Compatibility is only as helpful as the user’s ability to actually run programs from one device on another; this is easy enough going from the smartphone to the desktop, but not so much in the other direction.
Modular computing thus has an uncertain future, but it does bear enough interesting possibilities to make discounting it unwarranted for now.
Photo courtesy of miniyo73