Towards Transparent Parallel Processing on Multi-core Computers
| dc.contributor.advisor | Xiaosong Ma, Committee Chair | en_US |
| dc.contributor.advisor | Xiaohui Gu, Committee Member | en_US |
| dc.contributor.advisor | Frank Mueller, Committee Member | en_US |
| dc.contributor.advisor | Nagiza Samatova, Committee Member | en_US |
| dc.contributor.author | Li, Jiangtian | en_US |
| dc.date.accessioned | 2010-04-02T19:07:13Z | |
| dc.date.available | 2010-04-02T19:07:13Z | |
| dc.date.issued | 2009-12-22 | en_US |
| dc.degree.discipline | Computer Science | en_US |
| dc.degree.level | dissertation | en_US |
| dc.degree.name | PhD | en_US |
| dc.description.abstract | Parallelization of all application types is critical with the trend towards an exponentially increasing number of cores per chip, which needs to be done at multiple levels to address the unique challenges and exploit the new opportunities brought by new architecture advances. In this dissertation, we focus on enhancing the utilization of future-generation, many-core personal computers for high performance and energy effective computing. On one hand, computation- and/or data-intensive tasks such as scientific data processing and visualization, which are typically performed sequentially on personal workstations, need to be parallelized to take advantage of the increasing hardware parallelism. Explicit parallel programming, however, is labor-intensive and requires sophisticated performance tuning for individual platforms and operating systems. In this PhD study, we made a first step toward transparent parallelization for data processing codes, by developing automatic parallelization tools for scripting languages. More specifically, we present pR, a framework that transparently parallelizes the R language for high-performance statistical computing. We apply parallelizing compiler technology to runtime, whole-program dependence analysis and employ incremental code analysis assisted with evaluation results. Experimental results demonstrate that pR can exploit both task and data parallelism transparently and overall achieve good performance as well as scalability. Further, we attack the performance tuning problem for transparent parallel execution, by proposing and designing a novel online task decomposition and scheduling approach for transparent parallel computing. This approach collects runtime task cost information transparently and performs online static scheduling, utilizing cost estimates generated by ANN-based runtime performance prediction, as well as by loop iteration test runs. We implement the above techniques in the pR framework and our proposed approach is demonstrated to significantly improve task partitioning and scheduling over a variety of benchmarks. On the other hand, multi-core personal computers will inevitably be under-utilized when their owners perform light-weight tasks such as editing and web browsing, making volunteer computing more appealing than ever. In this study, we made a first step towards a novel computation model, energy-aware volunteer computing on multi-core processors, by evaluating the potential energy/performance trade-off of a more aggressive execution model that selects active nodes over idle nodes for scheduling foreign application tasks, in order to better utilize idle cores and achieve energy savings. Our experiment results suggest that aggressive volunteer computing can bring significant energy saving compared to common existing execution modes and provides an attractive computation model. | en_US |
| dc.identifier.other | etd-12122008-205136 | en_US |
| dc.identifier.uri | http://www.lib.ncsu.edu/resolver/1840.16/5077 | |
| dc.rights | I hereby certify that, if appropriate, I have obtained and attached hereto a written permission statement from the owner(s) of each third party copyrighted matter to be included in my thesis, dis sertation, or project report, allowing distribution as specified below. I certify that the version I submitted is the same as that approved by my advisory committee. I hereby grant to NC State University or its agents the non-exclusive license to archive and make accessible, under the conditions specified below, my thesis, dissertation, or project report in whole or in part in all forms of media, now or hereafter known. I retain all other ownership rights to the copyright of the thesis, dissertation or project report. I also retain the right to use in future works (such as articles or books) all or part of this thesis, dissertation, or project report. | en_US |
| dc.subject | scripting languages | en_US |
| dc.subject | multi-core | en_US |
| dc.subject | energy-efficient computing | en_US |
| dc.subject | volunteer computing | en_US |
| dc.subject | task scheduling | en_US |
| dc.subject | performance prediction | en_US |
| dc.subject | transparent parallelization | en_US |
| dc.title | Towards Transparent Parallel Processing on Multi-core Computers | en_US |
Files
Original bundle
1 - 1 of 1
