Scheduling Languages: A Past, Present, and Future Taxonomy

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Hall, Mary, Oancea, Cosmin, Elster, Anne C., Rasch, Ari, Joshi, Sameeran, Tavakkoli, Amir Mohammad, Schulze, Richard
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909366197682176
author Hall, Mary
Oancea, Cosmin
Elster, Anne C.
Rasch, Ari
Joshi, Sameeran
Tavakkoli, Amir Mohammad
Schulze, Richard
author_facet Hall, Mary
Oancea, Cosmin
Elster, Anne C.
Rasch, Ari
Joshi, Sameeran
Tavakkoli, Amir Mohammad
Schulze, Richard
contents Scheduling languages express to a compiler a sequence of optimizations to apply. Compilers that support a scheduling language interface allow exploration of compiler optimizations, i.e., exploratory compilers. While scheduling languages have become a common feature of tools for expert users, the proliferation of these languages without unifying common features may be confusing to users. Moreover, we recognize a need to organize the compiler developer community around common exploratory compiler infrastructure, and future advances to address, for example, data layout and data movement. To support a broader set of users may require raising the level of abstraction. This paper provides a taxonomy of scheduling languages, first discussing their origins in iterative compilation and autotuning, noting the common features and how they are used in existing frameworks, and then calling for changes to increase their utility and portability.
format Preprint
id arxiv_https___arxiv_org_abs_2410_19927
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Scheduling Languages: A Past, Present, and Future Taxonomy
Hall, Mary
Oancea, Cosmin
Elster, Anne C.
Rasch, Ari
Joshi, Sameeran
Tavakkoli, Amir Mohammad
Schulze, Richard
Programming Languages
Distributed, Parallel, and Cluster Computing
Performance
Scheduling languages express to a compiler a sequence of optimizations to apply. Compilers that support a scheduling language interface allow exploration of compiler optimizations, i.e., exploratory compilers. While scheduling languages have become a common feature of tools for expert users, the proliferation of these languages without unifying common features may be confusing to users. Moreover, we recognize a need to organize the compiler developer community around common exploratory compiler infrastructure, and future advances to address, for example, data layout and data movement. To support a broader set of users may require raising the level of abstraction. This paper provides a taxonomy of scheduling languages, first discussing their origins in iterative compilation and autotuning, noting the common features and how they are used in existing frameworks, and then calling for changes to increase their utility and portability.
title Scheduling Languages: A Past, Present, and Future Taxonomy
topic Programming Languages
Distributed, Parallel, and Cluster Computing
Performance
url https://arxiv.org/abs/2410.19927