Write a Blog >>
PLDI 2021
Sun 20 - Sat 26 June 2021 PLDI

Most implementations of machine learning algorithms are based on special-purpose frameworks such as TensorFlow or PyTorch. While these frameworks are convenient to use, they introduce multi-million lines of code dependency that one has to trust, understand and potentially modify. As an alternative, this paper investigates a direct implementation of a state of the art Convolutional Neural Network (CNN) in an array language. While our implementation requires 150 lines of code to define the special-purpose operators needed for CNNs, which are readily provided through frameworks such as TensorFlow and PyTorch, our implementation outperforms these frameworks by factors 2 and 3 on a fixed set of hardware — a 64-core GPU-accelerated machine. The resulting specification is written in a rank-polymorphic data-parallel style, and it can be immediately leveraged by optimising compilers. Indeed, array languages make neural networks fast.

Mon 21 Jun

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

13:30 - 16:15
Session 2 (keynote) and 3 (applications)ARRAY at ARRAY
Chair(s): Aggelos Biboudis Swisscom AG, Sandra Catalán
Keynote: Tilting at Windmills with the Humble Array
Tim Mattson Intel, USA
File Attached
Array Languages Make Neural Networks Fast
Artjoms Šinkarovs Heriot-Watt University, UK, Hans-Nikolai Vießmann Radboud University Nijmegen, Netherlands, Sven-Bodo Scholz Radboud University
Acceleration of Lattice Models for Pricing Portfolios of Fixed-Income Derivatives
Wojciech Michal Pawlak University of Copenhagen, Denmark, Marek Hlava Department of Computer Science, University of Copenhagen, Martin Metaksov Department of Computer Science, University of Copenhagen, Cosmin Oancea University of Copenhagen, Denmark