Paper Type

Master's Thesis


College of Computing, Engineering & Construction

Degree Name

Master of Science in Computer and Information Sciences (MS)



NACO controlled Corporate Body

University of North Florida. School of Computing

First Advisor

Dr. Roger Eggen

Second Advisor

Dr. Sanjay P. Ahuja

Third Advisor

Dr. Behrooz Seyed Abbassi

Department Chair

Dr. Asai Asaithambi

College Dean

Dr. Mark A. Tumeo


Parallel programming is prevalent in every field mainly to speed up computation. Advancements in multiprocessor technology fuel this trend toward parallel programming. However, modern compilers are still largely single threaded and do not take advantage of the machine resources available to them. There has been a lot of work done on compilers that add parallel constructs to the programs they are compiling, enabling programs to exploit parallelism at run time. Auto parallelization of loops by a compiler is one such example. Researchers have done very little work towards parallelizing the compilation process itself.

The research done here focuses on parallel compilers that target computation speedup by parallelizing the process of program compilation during the lexical analysis and semantic analysis phase. Parallelization brings along with it issues like synchronization, concurrency and communication overhead. In the semantic analysis phase, these issues are of particular relevance during the construction of the symbol table. Research done on a concurrent compiler developed at the University of Toronto in 1991 proposed three techniques to address the generation of the symbol table [Seshadri91]. The goal here is to implement a parallel compiler using concepts from those techniques as references. The research done here will augment the work done formerly and measure the performance speedup obtained.