With diminishing gains in processing power from successive generations of hardware development, there is a new focus on using advances in computer science and parallel programming to build faster, more efficient software. As computers trend toward including multiple and multicore processors, parallel computing serves as a promising option for optimizing the next generation of software applications. However, models for implementing parallel programs remain highly opaque due to their reliance on languages such as Fortran, C, and C++. In this paper I investigate Python an option for implementing parallel programming techniques in application development. I analyze the efficiency and accessibility of MPI for Python and IPython Parallel packages by calculating in parallel using a Monte Carlo simulation and comparing their speeds to the sequential calculation. While MPI for Python offers the core functionality of MPI and C-like syntax in Python, IPython Parallel's architecture provides a truly unique model.
Identifer | oai:union.ndltd.org:CLAREMONT/oai:scholarship.claremont.edu:cmc_theses-2415 |
Date | 01 January 2016 |
Creators | Kohli, Manav S |
Publisher | Scholarship @ Claremont |
Source Sets | Claremont Colleges |
Detected Language | English |
Type | text |
Format | application/pdf |
Source | CMC Senior Theses |
Rights | © 2016 Manav S. Kohli, default |
Page generated in 0.0031 seconds