Higher Performance with Less Power: Multicore Technology

Processing technology is in the midst of a technological revolution and nothing illustrates that fact more effectively than the proliferation of mobile devices. People use their consumer electronics devices such as mobiles, tablets and net books  like they use their personal computers and at the same time also expect similar level of capabilities while maintaining and increasing battery life. Widespread device use cases such as HD video playback & gaming, streaming video and audio, multitasking, browsing the web on high-speed networks is adding enormous challenges to the capabilities of current single core application processors.

 

As much as mobile device proliferation has been a boon for end-users and app developers, it’s been introducing a plethora of challenges for engineers in semiconductor and processing technology world. Multicore processor architecture has thus come to address the increasing performance demands and the exponential growth of power consumption of single core processors. The CPU of today, by leveraging multiple cores is capable to achieve more work faster and at lower power, as compared to a single core processor.

 

Devices based on single core CPUs tend to provide degraded quality of experience when users try to access several applications such as games, video conferencing, playing movies etc concurrently. This is primarily because the present generation of mobile processors was not designed to withstand the tidal wave of performance intensive apps or content. Flummoxed by this problem, engineers are resorting to several techniques that can help improve CPU performance. Using faster and smaller semiconductor processes, increasing core operating frequency and voltage, increasing size of CPU cores and using larger on die caches are among prevalent methods.

 

Fundamental semiconductor physics tells us that increasing operating frequency and voltage can significantly increase the power consumption of semiconductor devices. While engineers might succeed in squeezing out higher performance by boosting frequency and voltage, this improvement in performance shall certainly cause a drastic reduction in battery life. Moreover, processors that demand higher power would also need larger cooling solutions, thereby causing an undesired expansion in device size. Hence, growing the operating frequency of the processor to achieve the performance requirements of device is not a practical method.

 

To fulfill the fast increasing mandate for performance and form factor compactness in devices, the industry has initiated to embrace innovative technologies such as Symmetrical Multiprocessing (SMP) and Heterogeneous Multi-core computing.

 

Symmetrical multiprocessing technology enables processors to not only deliver higher performance, but also meet peak performance demand while staying within limited power budgets.  Each CPU is powerful enough to operate independently on different workloads and whenever likely, is also capable of sharing workloads with the other CPU.

 

Taking an example of a mobile phone that has a dual core CPU with SMP support– if the phone’s navigation application is functioning simultaneously with a streaming audio application, the OS can allocate the navigation task to one CPU core and the streaming audio task to the second core. Additional illustration is a single multi-threaded application that can gain advantage from multiple CPUs. The OS can allocate the threads to run on both CPUs parallel and achieve the task faster by distributing the workload across the two CPUs. As the workload is divided between the two cores, these cores can run at a decreased speed while achieving excellent performance and also preserving power (running at lower frequency minimizes the voltage required, resulting in a saving in power by the square of voltage decrease).

 

Due to task sharing, the cores don’t need to run at full capacity and can be run at a lower frequency and voltage. As the energy consumption of semiconductor devices is relative to the frequency and voltage-squared, even a trivial drop in the operating frequency and voltage shall lead to substantial decrease in energy consumption. Thus, a processor with a dual core CPU with SMP capabilities will prove more energy efficient than a single core CPU based processor.

 

Symmetrical Multiprocessing helps to share workload effectively, at the same time the cores can also run at much lower voltage and frequency. Since each core processes only half the workload, each is capable to operate at almost half the frequency of the single core CPU, and therefore can run at a lower operating voltage.

 

Let’s look at the following diagram assuming that each core runs at a frequency of 500 MHz and at an operating voltage of 0.8V to process the task.

 

 

Conclusion:

The dynamic power consumption of each core is proportional to the operating frequency and to the square of the operating voltage. Existence of exponential relationship between power and voltage causes the dual core CPU to consume less power than a single core CPU for the same workload.

 

Using multicore processor architecture, Ascenten has achieved peak performance in consumer electronics projects that are capable to run on very low power and come equipped with extended battery capacity.

About The Author

Gaurang Patel (Sr. Design Engineer, Ascenten)

1 Comment

  1. Vakul Garg says:

    Nice article. Thanks !!

    I have a comment. Typically two cores in SMP system do not yield twice the performance of a single core. Also we should consider the fact extra CPU cycles will need to be spent to take into account overheads of SMP co-ordination among the tasks running on different cores.