Title :
Analysis of performance enhancement on graphic processor based heterogeneous architecture: A CUDA and MATLAB experiment
Author :
Naik, Vilas H. ; Kusur, Chidanand S.
Author_Institution :
Dept. of Comput. Sci. & Eng., Basaveshwar Eng. Coll., Bagalkot, India
Abstract :
Today multiprocessors, multicores, clusters and heterogeneous computing are becoming the most popular architectures to achieve high performance computing. The different approaches are made by system designers to enhance the system performance such as increasing clock frequency of CPUs from MHz to GHz and addition of more number of CPU cores i.e from single core processor to dual core, quad core, hexa core, octo core, ten core and more processors. Still, multicore processing creates some challenges of its own. The extra core results into increased processor size and also high power consumption. Meanwhile, General Purpose Graphics Processing Units (GPGPUs) are designed and implemented that contain hundreds of cores with more number of Arithmetic and Logic Units and Control Units. These GPGPUs can be used in addition to CPU for heterogeneous computing for the enhancement of system performance for selected applications by data parallelism. The heterogeneous programming environment that includes other processors like GPGPU in addition to CPU can be used to enhance the execution performance of computational intensive programs. So, it is necessary for the programmer to run and analyze the selected computational intensive programs on both homogeneous and heterogeneous programming platform. The homogeneous programming environment makes the use of multi core CPU, where as the heterogeneous programming environment makes the use of different processors such as General Purpose Graphics Processing Unit (GPGPUs), Field Programmable Gate Arrays (FPGAs), Digital Signal Processors (DSPs) in addition to CPU. Hence, the programmer needs to write the code that makes the use of both CPU and other processors by using heterogeneous software environment such as parallel MATLAB with GPU enabled functions, MATLAB supported CUDA kernels and CUDA C for the execution of parallel code to achieve high performance in heterogeneous programming environment in comparison with homogeneous (sequential)- programming approach with only CPU.
Keywords :
graphics processing units; multiprocessing systems; parallel architectures; performance evaluation; CPU cores; CUDA; CUDA C; CUDA kernels; DSP; FPGA; GPGPU; Matlab; arithmetic-and-logic unit; clock frequency; computational intensive programs; control units; data parallelism; digital signal processors; field programmable gate arrays; general purpose graphics processing units; graphic processor based heterogeneous architecture; heterogeneous computing; heterogeneous programming environment; heterogeneous software environment; high-performance computing; homogeneous programming platform; homogeneous sequential programming approach; multicore CPU; multicore processing; parallel code; power consumption; processor size; system performance enhancement analysis; Central Processing Unit; Graphics processing units; MATLAB; Multicore processing; Parallel processing; Programming environments; CUDA kernels; GPGPU; Heterogeneous Computing; High Performance Computing; Multicore; Parallel MATLAB;
Conference_Titel :
Parallel Computing Technologies (PARCOMPTECH), 2015 National Conference on
Conference_Location :
Bangalore
Print_ISBN :
978-1-4799-6916-6
DOI :
10.1109/PARCOMPTECH.2015.7084519