Computing in the Cloud
The move to cloud-based computing models and cloud-based services continues forward at a breakneck pace. Seemingly everything is migrating to the cloud and along with that transfer there seems to be an assumption that the local capabilities of attached client devices, particularly the CPU, don’t really matter. The reality of the situation, however, is actually much different.
The quality of virtually any cloud-based service is directly impacted by the horsepower of the device you’re using to access it. Don’t believe me? Think about it this way. If the local CPU (and graphics) didn’t matter, you should be able to have the same experience when you visit a web site or other cloud-based service from several different devices across the same network connection. As we all know, that just isn’t the case. In fact, the experience can vary widely between different devices and one of the core reasons—pardon the pun—has to do with the computing power of the connected device.
Other factors can certainly make an impact too. Everything from whether the service is accessed via a dedicated app or through a browser, the choice of browser, the efficiency of the underlying operating system, the speed of the memory and storage subsystems, and more. The bottom line is, though it may not appear that way at first, cloud-based computing solutions are dependent on the speed of the attached client. In other words, cloud computing isn’t all about the cloud.
Part of the reason for this has to do with how web-based applications and services are created and delivered. Generally speaking, there is a split of the computing load between the server hosting the application or service and the local device accessing it. The amount of the split can vary tremendously, from, say, 90% on the client and 10% on the server, to the exact opposite (or more likely, somewhere in between). But even in cases where significantly more of the workload occurs on the server, the performance of the client matters, because the local device needs to render the results of any server-processed workload to the local screen (at the very least). Plus, in true “thin client”-type environments, where 100% of the work is done on the server and a series of pixels are sent down a network connection—sometimes called “screen scraping”—the local device also has to deal with the protocols used to take those packets and convert them into pixels on the screen.[pullquote]Even if you’re connecting globally, you’re still computing locally, and that’s going to continue to drive the evolution of devices for many years to come.”[/pullquote]
The issues can also go beyond performance. Even today, there are still some web-based application services that don’t run on certain operating systems or certain chip architectures. Believe it or not, the good ol’ x86-based PC is still the most compatible cloud computing solution.
There’s no question we’re seeing an evolution of computing models and more and more of the applications we use every day are moving to the web. When it comes to computing in the cloud however, even if you’re connecting globally, you’re still computing locally, and that’s going to continue to drive the evolution of devices for many years to come.