ERA

Download the full-sized PDF of A compiler for parallel execution of numerical Python programs on graphics processing unitsDownload the full-sized PDF

Analytics

Share

Permanent link (DOI): https://doi.org/10.7939/R3K63B

Download

Export to: EndNote  |  Zotero  |  Mendeley

Communities

This file is in the following communities:

Graduate Studies and Research, Faculty of

Collections

This file is in the following collections:

Theses and Dissertations

A compiler for parallel execution of numerical Python programs on graphics processing units Open Access

Descriptions

Other title
Subject/Keyword
gpgpu
compiler
Type of item
Thesis
Degree grantor
University of Alberta
Author or creator
Garg, Rahul
Supervisor and department
Amaral, Jose Nelson (Computing Science)
Examining committee member and department
Cockburn, Bruce (Electrical and Computer Engineering)
Lu, Paul (Computing Science)
Department
Department of Computing Science
Specialization

Date accepted
2009-10-02T21:40:46Z
Graduation date
2012-11
Degree
Master of Science
Degree level
Master's
Abstract
Modern Graphics Processing Units (GPUs) are providing breakthrough performance for numerical computing at the cost of increased programming complexity. Current programming models for GPUs require that the programmer manually manage the data transfer between CPU and GPU. This thesis proposes a simpler programming model and introduces a new compilation framework to enable Python applications containing numerical computations to be executed on GPUs and multi-core CPUs. The new programming model minimally extends Python to include type and parallel-loop annotations. Our compiler framework then automatically identifies the data to be transferred between the main memory and the GPU for a particular class of affine array accesses. The compiler also automatically performs loop transformations to improve performance on GPUs. For kernels with regular loop structure and simple memory access patterns, the GPU code generated by the compiler achieves significant performance improvement over multi-core CPU codes.
Language
English
DOI
doi:10.7939/R3K63B
Rights
Permission is hereby granted to the University of Alberta Libraries to reproduce single copies of this thesis and to lend or sell such copies for private, scholarly or scientific research purposes only. Where the thesis is converted to, or otherwise made available in digital form, the University of Alberta will advise potential users of the thesis of these terms. The author reserves all other publication and other rights in association with the copyright in the thesis and, except as herein before provided, neither the thesis nor any substantial portion thereof may be printed or otherwise reproduced in any material form whatsoever without the author's prior written permission.
Citation for previous publication

File Details

Date Uploaded
Date Modified
2014-04-25T00:46:16.187+00:00
Audit Status
Audits have not yet been run on this file.
Characterization
File format: pdf (Portable Document Format)
Mime type: application/pdf
File size: 1862977
Last modified: 2015:10:12 11:53:30-06:00
Filename: Garg_Rahul_Fall 2009.pdf
Original checksum: 092c4854363bd39989576a2c69035992
Well formed: false
Valid: false
Status message: Lexical error offset=1855100
Page count: 79
Activity of users you follow
User Activity Date