Graduation Semester and Year
2011
Language
English
Document Type
Thesis
Degree Name
Master of Science in Computer Science
Department
Computer Science and Engineering
First Advisor
Nathaniel Nystrom
Abstract
We have today crossed the threshold of increasing clock frequencies as the dominant solution to faster computing, and it is imperative for software developers to be able to think in the concurrent and parallel paradigm. Important still is to equip programmers with the right tools to develop concurrent and parallel software. Software concurrency is a widely researched area, and many of today's compilers concentrate on compiling for parallelism. However, although concurrent compilers have been explored since the 1970s, very few of them exist today that justify multicore environments. For instance, gmake [1] supports coarse grained parallelism through the -j option for building independent files in parallel. Our effort here brings into perspective a much finer grained approach: targeting the abstract syntax tree to extract opportunities for parallel and concurrent compilation. Polyglot is an extensible compiler framework. It allows the extension of Java in domainspecific ways into languages that may define their own new constructs. Compilation in Polyglot is sequential. The compiler uses only one core, even if additional cores are present. In order to fully utilize the power of the underlying hardware, we present here our efforts in making Polyglot concurrent. Parallelization of the compilation process can yield faster compilation times. It also presents the correctness and scalability challenges that make this a test bed for experimenting with various concurrency models. As part of the larger Polyglot project, we evaluate and present here the performance of Concurrent Polyglot against benchmarks and compare with the performance of Sequential Polyglot. We also present correctness of the output produced by Concurrent Polyglot.
Disciplines
Computer Sciences | Physical Sciences and Mathematics
License
This work is licensed under a Creative Commons Attribution-NonCommercial-Share Alike 4.0 International License.
Recommended Citation
Kothari, Saurabh Satish, "Concurrent Polyglot: An Extensible Compiler Framework" (2011). Computer Science and Engineering Theses. 357.
https://mavmatrix.uta.edu/cse_theses/357
Comments
Degree granted by The University of Texas at Arlington