An Object-Oriented Interface to The Sparse Polyhedral Library

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Published in Proceedings of 2021 IEEE 45th Annual Computers, Software, and Applications Conference. Abstract: Many important applications including machine learning, molecular dynamics, and computational fluid dynamics, use sparse data. Processing sparse data leads to non-affine loop bounds and frustrates the use of the polyhedral model for code transformation. The Sparse Polyhedral Framework (SPF) addresses limitations of the Polyhedral model by supporting non-affine constraints in sets and relations using uninterpreted functions. This work contributes an object-oriented API that wraps the SPF intermediate representation (IR) and integrates the Inspector/Executor Generation Library and Omega+ for precise set and relation manipulation and code generation. The result is a well-specified definition of a full computation using the SPF IR. The API provides a single entry point for tools to interact with the SPF, generate and manipulate polyhedral data flow graphs, and transform sparse applications.

Author(s): Tobi Popoola, Ravi Shankar, Anna Rift, Shivani Singh, Eddie C. Davis, Michelle Mills Strout, Catherine Olschanowsky
Publisher: IEEE
Year: 2021

Language: English
Pages: 1825-1831
City: Madrid

Introduction
Computation: A C++ Class
Data Spaces
Statements
Data Dependence Relationships
Execution Schedules
Code Generation
Visualizing a Computation on a Graph
Loop Carried Dependences
Imperfect loop nests
Dot File Graph
Operations on Computations
Inlining
Loop Transformations as Graph Operations
Fusion
Reschedule
Related Work
Polyhedral Model Tools
Program Dependence Graphs
Sparse Polyhedral Model Tools
Conclusion
References