High performance data processing systems on many-core processors

General-purpose graphics processing units (GPGPU) is used for processing large data set which means lots of data is being executed by the same computation to achieve high throughput and parallel computing. Nowadays GPGPU has been widely applied in many areas, such as embedded system, financial manag...

Full description

Saved in:
Bibliographic Details
Main Author: Wang, Qiu Di
Other Authors: School of Computer Engineering
Format: Final Year Project
Language:English
Published: 2014
Subjects:
Online Access:http://hdl.handle.net/10356/59229
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:General-purpose graphics processing units (GPGPU) is used for processing large data set which means lots of data is being executed by the same computation to achieve high throughput and parallel computing. Nowadays GPGPU has been widely applied in many areas, such as embedded system, financial management and database and so on. With many graphics API being released, such as OpenGL and CUDA, programming GPGPU is no longer a challenge any more. MapReduce, develop by Google data centre, is a programing design pattern in parallel and distributed computing. In this project, a MapReduce framework called Mars will be evaluated regarding to its structure, workflow and performance. Firstly we will upgrade Mars to the latest CUDA version and then a sample application will be run on Mars framework. We will run the test several times with different workload to see how the performance is. Then we will compare Mars with another MapReduce framework called MapCG regarding to the execution time and memory usage. Finally we will talk about the lesson we get from programming GPU according to the experiment data and figures.