The State of Software and Hardware

The State of Software and Hardware

With more power comes greater expectations... or so they say, but that's more or less the case these days as consumers have more idle processing power than ever before in computing history. If you peer back to the past, for the most part, software advances caught up fairly quickly with the hardware capabilities. As processors starting sporting specialized registers for Streaming SIMD (single instruction, multiple data) Extensions and as SSE evolved to various versions, it required software to be recompiled and designed to take advantage of these new instruction sets which would otherwise not see any performance boost. As such, the cycle grew longer to capitalize on a particular CPU's capabilities. While specialized and targeted applications did get their due attention in a timely manner, the bulk of the mainstream applications were not as privileged partly due to their complexity and partly due to the application type that won't see tangible benefits (for example, there's not much to gain out of Microsoft Word).

When dual-core processors first hit the market, consumers were being educated to the possibilities with more processing cores, how much more work they could get done and other benefits. True that dual-core processor based systems turned out to be very responsive, but their actual utilization was dismal for most users back then. Enthusiasts and professionals who used high-end programs such as for design and video editing, found that most of their software were optimized for multi-processor systems and hence immediately capitalize on a dual-core processors in a similar manner. With both AMD and Intel betting on multi-core processors, software and game developers took the cue and channeled efforts to design a more multi-threaded engine for their offerings that better utilize the dual cores. As it stands today, there are a variety of everyday applications and games that run best with a dual-core processor as developers became attuned to utilizing the extra processing bandwidth and better balance the load.

Still, that's not to say that the processor is well utilized as you'll be surprised that the time slice for which the processor is truly busy is getting smaller as processors have become so advanced. The truth is that there hasn't been a real killer application or breakthrough usage model in consumer software in a long time and we are still waiting for a paradigm shift to take place. Perhaps voice recognition with a radical new GUI and the incorporation of touch-interface technology is what we need to really move on to the next level of interactivity (think Minority Report and for something closer to home, Microsoft Surface). Of course, that would require tremendous processing power, which not every PC is ready for the shift.

Speaking of compute power, quad-core processors have been around a year now, but a vast majority of application and games are still unable to take advantage of four processing cores, let alone even fully utilize two cores. So what can you do with so much processing power on an everyday basis, besides some media creation software?