Show simple item record

dc.contributor.advisorSaman Amarasinghe.en_US
dc.contributor.authorZingales, Giuseppe Paolo Ernesto Toffaninen_US
dc.contributor.otherMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.en_US
dc.date.accessioned2017-01-12T18:33:45Z
dc.date.available2017-01-12T18:33:45Z
dc.date.copyright2015en_US
dc.date.issued2015en_US
dc.identifier.urihttp://hdl.handle.net/1721.1/106444
dc.descriptionThesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2015.en_US
dc.descriptionCataloged from PDF version of thesis.en_US
dc.descriptionIncludes bibliographical references (page 77).en_US
dc.description.abstractHalide is a programming language designed to make it easier to write high-performance image processing code. Halide separates the scientific problem of how to write the image processing algorithm to get the required result from the engineering problem of how to schedule the different parts of this algorithm to get a fast solution. This allows Halide's users to test out different schedules for a single image processing algorithm to get the fastest program. Unfortunately, the amount of possible schedules is staggeringly large, and there is no deterministic way to find the fastest schedules. This leads to a lot of man-hours spent trying to find good Halide schedules. As Halide grows in popularity and the platforms on which it runs diversify, the need for Halide schedules will increase. As the need for good Halide schedules increases, so will the need for good schedule designers. However, given the elusiveness of highly performant schedules, machine generated schedules will become highly preferred to human trial and error. HalideTuner solves this problem by automating the entire process. The automation of the the schedule generation and tuning is done by a machine learning framework called Opentuner. Before Opentuner can operate, defining how to iterate through the search space needs to be codified. In this paper we present HalideTuner a codification of how Opentuner can manipulate Halide schedules to improve them in the process of clever trial and error. HalideTuner serves as the foundation for generating and tuning Halide schedules.en_US
dc.description.statementofresponsibilityby Giuseppe Paolo Ernesto Toffanin Zingales.en_US
dc.format.extent77 pagesen_US
dc.language.isoengen_US
dc.publisherMassachusetts Institute of Technologyen_US
dc.rightsM.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission.en_US
dc.rights.urihttp://dspace.mit.edu/handle/1721.1/7582en_US
dc.subjectElectrical Engineering and Computer Science.en_US
dc.titleHalideTuner : generating and tuning halide schedules with Opentuneren_US
dc.title.alternativeHalide Tuner : generating and tuning halide schedules with Opentuneren_US
dc.title.alternativeGenerating and tuning halide schedules with Opentuneren_US
dc.typeThesisen_US
dc.description.degreeM. Eng.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
dc.identifier.oclc967346582en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record