Return to search

GPGPU design space exploration using neural networks

General Purpose computing on Graphic Processing Unit (GPGPU) gained atten-
tion in 2006 with NVIDIA’s first Tesla Graphic Processing Unit (GPU) which could
perform high performance computing. Ever since, researchers have been working on software and hardware techniques to improve the efficiency of running general purpose applications on GPUs. The efficiency can be evaluated using metrics such as energy consumption and throughput and is defined based on the requirements of the system. I define it as obtaining high throughput by consuming minimum energy.
GPUs are equipped with a large number of processing units, a high memory
bandwidth, and different types of on-chip memory and caches. To run efficiently,
an application should maximize the utilization of GPU resources. Therefore, a good correspondence between the computing and memory resources of the GPU and those of application is critical. Since an application’s requirements are fixed, the GPU’s configuration should be tuned to these requirements. Having models to study and predict the power consumption and throughput of running a GPGPU application on a given GPU configuration can help achieve high efficiency.
The main purpose of this dissertation is to find a GPU configuration that best
matches the requirements of a given application. I propose three models that predict a GPU configuration that runs an application with maximum throughput while consuming minimum energy.
The first model is a fast, low-cost and effective approach to optimize resource allocation in future GPUs. The model finds the optimal GPU configuration for different available chip real-estate budgets .
The second model considers the power consumption and throughput of a GPGPU application as functions of the GPU configuration parameters. The proposed model accurately predicts the power consumption and throughput of the modeled GPGPU application. I then propose to accelerate the process of building the model using optimization techniques and quantum annealing. I use the proposed model to explore the GPU configuration space of different applications. I apply multiobjective optimization technique to find the configurations that offer minimum power consumption and maximum throughput.
Finally, using clustering and classification techniques, I develop models to re-
late the power consumption and throughput of GPGPU applications to the code
attributes. Both models could accurately predict the optimum configuration for any given GPGPU application.
To build these models I have used different machine learning techniques and optimization methods such as Pareto Front and Knapsack optimization problem. I validated the model produced results with simulation results and showed that the models make accurate predictions.
These models could be used by GPGPU programmers to identify the architectural parameters that most affect an application’s power consumption and throughput.
This information could be translated into software optimization opportunities. Also, these models can be implemented as part of a compiler to help it to make the best optimization decisions. Moreover, GPU manufacturers could gain insight on architectural parameters which would profit GPGPU applications the most in terms of power and performance and hence invest on these. / Graduate

Identiferoai:union.ndltd.org:uvic.ca/oai:dspace.library.uvic.ca:1828/10115
Date28 September 2018
CreatorsJooya, Ali
ContributorsDimopoulos, Nikitas J., Baniasadi, Amirali
Source SetsUniversity of Victoria
LanguageEnglish, English
Detected LanguageEnglish
TypeThesis
Formatapplication/pdf
RightsAvailable to the World Wide Web

Page generated in 0.0027 seconds