Array-oriented programming unites two uncommon properties. As an abstraction, it directly mirrors high-level mathematical abstractions 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, lend themselves to efficiently executing array operations.

ARRAY2022 will be organized as a one-day workshop, affiliated with PLDI. Talks from accepted submissions, and 1 - 2 invited talks will be organized as part of the workshop.

The ARRAY series of workshops explores:

  • formal semantics and design issues of array-oriented languages and libraries;

  • 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.

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.

Dates
You're viewing the program in a time zone which is different from your device's time zone - change time zone

Mon 13 Jun

Displayed time zone: Pacific Time (US & Canada) change

09:00 - 10:00
Invited TalkARRAY at Macaw
09:00
60m
Talk
Multidimensional C++
ARRAY
File Attached
10:30 - 12:00
Array Languages for ApplicationsARRAY at Macaw +12h
10:30
22m
Talk
Distributed parallel computing with Futhark
ARRAY
Michaël El Kharroubi University of Applied Sciences and Arts Western Switzerland, Baptiste Coudray , Orestis Malaspinas
10:52
22m
Talk
Mech: An Array Programming Language for Robots (extended abstract)
ARRAY
Corey Montella Lehigh University
11:15
22m
Talk
Probabilistic Array Programming on Galois Fields (extended abstract)
ARRAY
Breandan Considine McGill University, Jin L.C. Guo McGill University, Xujie Si McGill University, Canada
11:37
22m
Talk
Parallel Scan As a Multidimensional Array Problem
ARRAY
Artjoms Šinkarovs Heriot-Watt University, UK, Sven-Bodo Scholz Heriot-Watt University
22:30 - 00:00
Array Languages for ApplicationsARRAY at Macaw
22:30
22m
Talk
Distributed parallel computing with Futhark
ARRAY
Michaël El Kharroubi University of Applied Sciences and Arts Western Switzerland, Baptiste Coudray , Orestis Malaspinas
22:52
22m
Talk
Mech: An Array Programming Language for Robots (extended abstract)
ARRAY
Corey Montella Lehigh University
23:15
22m
Talk
Probabilistic Array Programming on Galois Fields (extended abstract)
ARRAY
Breandan Considine McGill University, Jin L.C. Guo McGill University, Xujie Si McGill University, Canada
23:37
22m
Talk
Parallel Scan As a Multidimensional Array Problem
ARRAY
Artjoms Šinkarovs Heriot-Watt University, UK, Sven-Bodo Scholz Heriot-Watt University

Tue 14 Jun

Displayed time zone: Pacific Time (US & Canada) change

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 communities, including language designers, library developers, compiler researchers, and practitioners, where these communities can exchange ideas on the construction of computational tools for manipulating arrays. 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;

  • 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.