Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling

碩士 === 國立臺灣大學 === 資訊網路與多媒體研究所 === 97 === 3D computer graphic has become more and more important today, applications like games, virtual reality and so on prevail the way for 3D computer graphic. Accelerator for 3D Graphic has become a necessary component in computer and mobile device. GPU is the new...

Full description

Bibliographic Details
Main Authors: Jian-Hao Su, 蘇建豪
Other Authors: Shin-Wei Liao
Format: Others
Language:en_US
Published: 2009
Online Access:http://ndltd.ncl.edu.tw/handle/13043048243897298472
id ndltd-TW-097NTU05641012
record_format oai_dc
spelling ndltd-TW-097NTU056410122016-05-04T04:31:32Z http://ndltd.ncl.edu.tw/handle/13043048243897298472 Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling 應用於行動繪圖處理器的著色語言編譯器後端之暫存器配置與指令調度研究探討 Jian-Hao Su 蘇建豪 碩士 國立臺灣大學 資訊網路與多媒體研究所 97 3D computer graphic has become more and more important today, applications like games, virtual reality and so on prevail the way for 3D computer graphic. Accelerator for 3D Graphic has become a necessary component in computer and mobile device. GPU is the new name of graphic hardware since it has taken nearly all workload of 3D graphic processing form CPU. As the evolution of GPU, programmability is now provided for more complex computation. Shading language is the key to release the power of GPU programmability. It provides the high hardware abstraction and more flexibility programmability rather than programming GPU in low-level hardware related assembly. Shading language compiler translates shader codes to low level instructions. We have developed an OpenGL ES shading language compiler for a mobile GPU developed by Media IC & System and DSP IC Lab at NTU. In this thesis, we describe the compiler we have done and study the backend of shading compiler for the mobile GPU hardware. Optimization methods are proposed to improve the performance of current hardware. Code scheduling in compiler detects data forwarding and generates code to use hardware forwarding path. Register allocation supports packing to use remain part of vector type in shading language. In current experiment, at most 28% register usage can therefore shrink. Shin-Wei Liao 廖世偉 2009 學位論文 ; thesis 55 en_US
collection NDLTD
language en_US
format Others
sources NDLTD
description 碩士 === 國立臺灣大學 === 資訊網路與多媒體研究所 === 97 === 3D computer graphic has become more and more important today, applications like games, virtual reality and so on prevail the way for 3D computer graphic. Accelerator for 3D Graphic has become a necessary component in computer and mobile device. GPU is the new name of graphic hardware since it has taken nearly all workload of 3D graphic processing form CPU. As the evolution of GPU, programmability is now provided for more complex computation. Shading language is the key to release the power of GPU programmability. It provides the high hardware abstraction and more flexibility programmability rather than programming GPU in low-level hardware related assembly. Shading language compiler translates shader codes to low level instructions. We have developed an OpenGL ES shading language compiler for a mobile GPU developed by Media IC & System and DSP IC Lab at NTU. In this thesis, we describe the compiler we have done and study the backend of shading compiler for the mobile GPU hardware. Optimization methods are proposed to improve the performance of current hardware. Code scheduling in compiler detects data forwarding and generates code to use hardware forwarding path. Register allocation supports packing to use remain part of vector type in shading language. In current experiment, at most 28% register usage can therefore shrink.
author2 Shin-Wei Liao
author_facet Shin-Wei Liao
Jian-Hao Su
蘇建豪
author Jian-Hao Su
蘇建豪
spellingShingle Jian-Hao Su
蘇建豪
Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
author_sort Jian-Hao Su
title Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
title_short Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
title_full Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
title_fullStr Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
title_full_unstemmed Shading Language Compiler Backend for a Mobile GPU: Case Study on Register Allocation and Code Scheduling
title_sort shading language compiler backend for a mobile gpu: case study on register allocation and code scheduling
publishDate 2009
url http://ndltd.ncl.edu.tw/handle/13043048243897298472
work_keys_str_mv AT jianhaosu shadinglanguagecompilerbackendforamobilegpucasestudyonregisterallocationandcodescheduling
AT sūjiànháo shadinglanguagecompilerbackendforamobilegpucasestudyonregisterallocationandcodescheduling
AT jianhaosu yīngyòngyúxíngdònghuìtúchùlǐqìdezhesèyǔyánbiānyìqìhòuduānzhīzàncúnqìpèizhìyǔzhǐlìngdiàodùyánjiūtàntǎo
AT sūjiànháo yīngyòngyúxíngdònghuìtúchùlǐqìdezhesèyǔyánbiānyìqìhòuduānzhīzàncúnqìpèizhìyǔzhǐlìngdiàodùyánjiūtàntǎo
_version_ 1718260171953668096