International Journal of Computer Applications |
Foundation of Computer Science (FCS), NY, USA |
Volume 111 - Number 7 |
Year of Publication: 2015 |
Authors: Sukanya.r, Swaathikka.k, Soorya.r |
10.5120/19551-1257 |
Sukanya.r, Swaathikka.k, Soorya.r . Enhancing Computational Performance using CPU-GPU Integration. International Journal of Computer Applications. 111, 7 ( February 2015), 18-22. DOI=10.5120/19551-1257
The scope of computers has been expanding into increasing number of fields. With the growing need for computationally intense applications in every field, it is necessary to constantly meet the demands of performance requirements. The performance of the system relies heavily upon the processor and therefore the development of this technology is crucial. The processors of this age are handling growing amounts of data that depend on the speed, efficiency and data handling capacity of the processors. The scope of pushing the performance of a single processor has reached its threshold owing to factors such as cost, heat and power consumed. This lead to the advent of the age of multicore processor technology. But this model is also approaching a plateau in its scope by 2017 as predicted by Moore's Law. It is imperative that an alternate and viable technology that produces high performance is found. GPUs are the answer to the search for such a highly powerful yet feasible technology. These units are capable of handling computationally intense tasks by performing the operations on huge data sets in parallel. This type of parallel processing breaks the problem into discrete parts that can be solved concurrently. So while the conventional CPUs use the power of a single core to solve a problem, the GPU solves the same problem using about a hundred processors. So, while increasing the number of cores in a processor is not possible, integrating CPUs with GPUs and passing the intense workloads to the GPU, which will process it faster, to achieve an overall high performance is a viable model. Coherence between the two units is important to distribute the workload such that the parts with large data, that suit parallel processing is handled by GPU and the serial tasks are controlled by the CPU.