In a blog last week, we highlighted the lack of consumer electronic devices shipping today with multicore chipsets. Smartphones, on the other hand, have already begun to make that transition and the inclusion of these new processors has even emerged as a point of marketing for many OEMs.
To date, however, these mobile multicore devices have mostly used dual-core processors. As there are more and more announcements (and speculations) about the forthcoming inclusion of quad-core processors in mobile phones, we are left wondering how or if this change could impact the supplier landscape.
The multifaceted impact of multicore processors
Whereas some level of performance improvement can be achieved through just the implementation of a basic SMP (symmetric multiprocessing) OS and the facilitation of “application multitasking”, the ability of a single application to take advantage of the multiple cores is limited by the percentage of the application’s tasks and instruction sets that can be executed in parallel. In the near term, the performance difference noticeable to end users will likely be small due to SMP OSs’ ability to obfuscate the complexities of the multiple cores and provide applications with incremental speed improvements, but the discernible discrepancies will only become more evident as next generation phones adopt more advanced silicon.
The bigger question might be what happens beyond 4 cores, when SMP OSs begin to lose some of their efficacy and developers themselves are forced to learn how to developed multithreaded apps. Today, many mobile application developers can get away with rather rudimentary development tools. This just may not be good enough in the future and may drive more developers to look for premium solutions.
The potential impact on the mobile OS ecosystem
Whereas all phone and OS providers will need to reevaluate their platforms and developer enablement strategies in light of the long-term adoption of many-core processors, we expect that this shift may actually have the greatest impact on the Android ecosystem. To abstract the complexities of the underlying software stack and market the OS to a broader range of developers, the OHA designed Android to use a Java virtual machine over its core Linux kernel.
As a result – in order to achieve the application speed required to remain competitive – Android developers may be forced to learn the C programming language (a longtime embedded favorite) for low-level native development on future many-core devices. This added difficulty in development (or simply the relative reduction in existing application performance improvements) may lead more developers and end users to again evaluate new mobile platforms not named Android or iOS. This market pause might just provide QNX/RIM (or even Microsoft) an opportunity to regain widespread relevance.
Whereas QNX is a newcomer to the mobile landscape, it is a well established stalwart of the multicore solution market. Provided that RIM can get some phones to market in a timely matter, QNX’s proven multicore technology could actually provide them with an edge in performance and a chip in their favor in the eyes of end consumers. That said, the shift beyond 4 cores is likely still at least a year away, which is nearly an eternity in the mobile world – both in terms of time for other OSs to invest in multicore performance enhancements as well as time for RIM (and all other mobile OSs) to fall far enough behind in their ecosystem development that they would not be able to mount a realistic comeback. Regardless of the prospects of the individual mobile OS suppliers, the continued evolution of the processor landscape should certainly provide ample opportunity for platforms and application developers alike to recast their value propositions and differentiation.