View Item 
        •   Utrecht University Student Theses Repository Home
        • UU Theses Repository
        • Theses
        • View Item
        •   Utrecht University Student Theses Repository Home
        • UU Theses Repository
        • Theses
        • View Item
        JavaScript is disabled for your browser. Some features of this site may not work without it.

        Browse

        All of UU Student Theses RepositoryBy Issue DateAuthorsTitlesSubjectsThis CollectionBy Issue DateAuthorsTitlesSubjects

        Array-Oriented Languages and Polyhedral Compilation

        Thumbnail
        View/Open
        report.pdf (413.2Kb)
        Publication date
        2020
        Author
        Paston-Cooper, J.
        Metadata
        Show full item record
        Summary
        Collection-oriented languages are characterised by their provision of a set of primitives which work on data in aggregate, and are intrinsically suited to parallelisation. Polyhedral compilation systems aim at optimising aggregate computations using an abstract, mathematical representation. However, they are typically run as optimisation passes not over high-level programmes representing aggregate computations, but over the low-level intermediate representation they compile down to. This means that information can be lost if code is not written in the correct form. Accelerate is a collection-oriented language embedded in Haskell. Programmes are compiled into LLVM-IR, that code being passed to the LLVM compiler. Polly, a polyhedral optimisation pass of LLVM, aims specifically at optimising programmes typical in Accelerate, namely computations over regular, multi-dimensional arrays. In this project we investigate the strengths of each system in order to see how they can together produce faster code.
        URI
        https://studenttheses.uu.nl/handle/20.500.12932/36415
        Collections
        • Theses
        Utrecht university logo