Abstract
This thesis presents a new simple lightweight C++ thread based parallelization library, intended for use in numerical algorithms. It provides simple multitasking and task synchronization functions. The library hides all internal system calls from the developer and utilizes thread pooling to provide better performance and utilization of system time and resources. The library is lightweight and platform independent, and has been tested on Linux, and Windows. Experiments were conducted to verify the proper functionality of the library and to show that parallelized algorithms on a single machine are more efficient than using the Message Passing Interface (MPI) using shared memory. In the opinion of several researchers who have used this library, the parallelized code is more easily understood and debugged than MPI. The results of initial experiments show that algorithms are as efficient or better than those using MPI.
Description
Thesis: S.M., Massachusetts Institute of Technology, Computation for Design and Optimization Program, 2014.
Cataloged from PDF version of thesis.
Includes bibliographical references (page 47).
Publisher
Massachusetts Institute of Technology
Keywords
Computation for Design and Optimization Program.