Libraries, Languages and Compilers for Array ProgrammingARRAY 2023
Array-oriented programming unites two uncommon properties. As an abstraction, it directly mirrors high-level mathematical concepts commonly used in many fields from natural sciences over engineering to financial modeling. As a language feature, it exposes regular control flow, exhibits structured data dependencies, and lends itself to many types of program analysis. Furthermore, many modern computer architectures, particularly highly parallel architectures such as GPUs and FPGAs, are well-suited to efficiently execute array operations.
The ARRAY series of workshops explores all aspects of array programming, such as languages, formal semantics, array theories, productivity/performance tradeoffs, libraries, notation such as including axis- and index-based approaches, intermediate languages, and efficient compilation.
Array programming is at home in many communities, including language design, library development, optimization, scientific computing, and across many existing language communities. ARRAY is intended as a forum where these communities can exchange ideas on the construction of computational tools for manipulating arrays as well as fundamental principles of array programming.
This year, the invited talk will be by Gilbert Bernstein from the University of Washington.
Sun 18 JunDisplayed time zone: Eastern Time (US & Canada) change
09:00 - 11:00 | |||
09:00 60mKeynote | Performance vs. Correctness When Writing Low-Level HPC/Tensor/Array Code ARRAY Gilbert Bernstein University of Washington, Seattle | ||
10:00 30mTalk | Accurate Array Program Mapping with Neural Program Translation and Synthesis (cancelled) ARRAY Hui Shi University of California, San Diego, Sicun Gao University of California San Diego, Jishen Zhao UCSD | ||
10:30 30mTalk | Array Programming via Multi-Dimensional Homomorphisms ARRAY Ari Rasch University of Muenster, Richard Schulze University of Muenster, Sergei Gorlatch University of Muenster File Attached |
11:20 - 12:30 | |||
11:20 30mTalk | Faster APL with Lazy Extensions ARRAY Andrew Sengul Independent Researcher DOI File Attached | ||
11:50 30mTalk | U-Net CNN in APL: Exploring Zero-Framework, Zero-Library Machine Learning ARRAY DOI |
14:00 - 15:30 | |||
14:00 30mTalk | HERO-ML: A Very High-Level Array Language for Executable Modelling of Data Parallel Algorithms ARRAY DOI | ||
14:30 30mTalk | OptiTrust: an Interactive Optimization Framework ARRAY Thomas Koehler INRIA, Arthur Charguéraud Inria; Université de Strasbourg; CNRS; ICube, Begatim Bytyqi Inria, Damien Rouhling Inria, Yann Barsamian Ecole Européenne de Bruxelles Pre-print File Attached | ||
15:00 30mTalk | Polymorphic Types with Polynomial Sizes ARRAY DOI |
16:00 - 17:50 | |||
16:00 30mTalk | A MultiGPU Performance-Portable Solution for Array Programming Based on Kokkos ARRAY DOI | ||
16:30 30mTalk | Opportunities for Linear Algebraic Graph Databases ARRAY Yuttapichai Kerdcharoen Carnegie Mellon University, Upasana Sridhar Carnegie Mellon University, Tze Meng Low Carnegie Mellon University | ||
17:00 30mTalk | Towards Structured Algebraic Programming ARRAY Denis Jelovina Computing Systems Lab Huawei Zurich Research Center, Daniele Giuseppe Spampinato Computing Systems Lab Huawei Zurich Research Center, Jiawei Zhuang Huawei Technologies Co. Ltd., Albert-Jan Nicholas Yzelman Computing Systems Lab Huawei Zurich Research Center DOI |
Accepted Papers
Call for Papers
Array programming is at home in many communities, including language design, library development, optimization, scientific computing, and across many existing language communities. The ARRAY Workshop series is intended to bring together researchers from many different practical and theoretical communities, including language designers, library developers, type theorists, compiler researchers, and practitioners. These communities can exchange ideas on the construction of computational tools for manipulating arrays and fundamental principles of array programming. Submissions are welcome in two categories: full papers and extended abstracts. All submissions should be formatted in conformance with the ACM SIGPLAN proceedings style. Accepted submissions in either category will be presented at the workshop. The ARRAY series of workshops explores:
-
formal semantics and design issues of array-oriented languages and libraries;
-
correctness of array programs, including type-theoretic issues, formal verification, array models, static analysis;
-
productivity and performance in compute-intensive application areas of array programming;
-
systematic notation for array programming, including axis- and index-based approaches;
-
intermediate languages, virtual machines, and program-transformation techniques for array programs;
-
representation of and automated reasoning about mathematical structure, such as static and dynamic sparsity, low-rank patterns, and hierarchies of these, with connections to applications such as graph processing, HPC, tensor computation and deep learning;
-
interfaces between array- and non-array code, including approaches for embedding array programs in general-purpose programming languages; and
-
efficient mapping of array programs, through compilers, libraries, and code generators, onto execution platforms, targeting multi-cores, SIMD devices, GPUs, distributed systems, and FPGA hardware, by fully automatic and user-assisted means.
All submissions must be in PDF format, printable in black and white on US Letter sized paper. Papers must adhere to the standard SIGPLAN conference format: two columns, ten-point font.
Full papers may be up to 12 papes, on any topic related to the focus of the workshop. They will be thoroughly reviewed according to the usual criteria of relevance, soundness, novelty, and significance; accepted submissions will be published in the ACM Digital Library.
Extended abstracts may be up to 2 pages; they may describe work in progress, tool demonstrations, and summaries of work published in full elsewhere. The focus of the extended abstract should be to explain why the proposed presentation will be of interest to the ARRAY audience. Submissions will be lightly reviewed only for relevance to the workshop, and will not published in the DL.
AUTHORS TAKE NOTE: The official publication date is the date the proceedings are made available in the ACM Digital Library. This date may be up to two weeks prior to the first day of your conference. The official publication date affects the deadline for any patent filings related to published work. (For those rare conferences whose proceedings are published in the ACM Digital Library after the conference is over, the official publication date remains the first day of the conference.)