A distributed backend for Halide
Author(s)
Epstein, Aaron, M. Eng. (Aaron B.). Massachusetts Institute of Technology
DownloadFull printable version (2.197Mb)
Other Contributors
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
Advisor
Saman Amarasinghe.
Terms of use
Metadata
Show full item recordAbstract
Halide is a tool that makes writing efficient code easier to design, maintain, and operate. However, Halide is currently limited to building programs that run on one machine, which bounds both the size of the input and the speed of computation. My work involves adding distributed computation as an option for running Halide programs. Enabling distributed computation would allow Halide to be run at a much larger scale and solve larger problems like weather simulation and 3D rendering. This project has dealt with how Halide can analyze what data programs will need to share and how they can efficiently share it. Using my work, a programmer can easily divide their input into several small chunks and start an instance of their program to solve each chunk with synchronization and data sharing handled through Halide.
Description
Thesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2015. Cataloged from PDF version of thesis. Includes bibliographical references (page 37).
Date issued
2015Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology
Keywords
Electrical Engineering and Computer Science.