A distributed backend for Halide
Author(s)Epstein, Aaron, M. Eng. (Aaron B.). Massachusetts Institute of Technology
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
MetadataShow full item record
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.
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).
DepartmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
Massachusetts Institute of Technology
Electrical Engineering and Computer Science.