HDNN: a cross-platform MLIR dialect for deep neural networks


Antonio Martinez P., Bernabe G., Manuel Garcia J.

JOURNAL OF SUPERCOMPUTING, vol.78, no.11, pp.13814-13830, 2022 (Peer-Reviewed Journal) identifier identifier

  • Publication Type: Article / Article
  • Volume: 78 Issue: 11
  • Publication Date: 2022
  • Doi Number: 10.1007/s11227-022-04417-3
  • Journal Name: JOURNAL OF SUPERCOMPUTING
  • Journal Indexes: Science Citation Index Expanded, Scopus, Academic Search Premier, Applied Science & Technology Source, Compendex, Computer & Applied Sciences, INSPEC, zbMATH
  • Page Numbers: pp.13814-13830
  • Keywords: High-performance computing, LLVM, MLIR, Heterogeneous computing, Domain-specific languages, Deep neural networks

Abstract

This paper presents HDNN, a proof-of-concept MLIR dialect for cross-platform computing specialized in deep neural networks. As target devices, HDNN supports CPUs, GPUs and TPUs. In this paper, we provide a comprehensive description of the HDNN dialect, outlining how this novel approach aims to solve the P-3 problem of parallel programming (portability, productivity, and performance). An HDNN program is device-agnostic, i.e., only the device specifier has to be changed to run a given workload in one device or another. Moreover, HDNN has been designed to be a domain-specific language, which ultimately helps programming productivity. Finally, HDNN relies on optimized libraries for heavy, performance-critical work-loads. HDNN has been evaluated against other state-of-the-art machine learning frameworks on all the hardware platforms achieving excellent performance. We conclude that the ideas and concepts used in HDNN can be crucial for designing future generation compilers and programming languages to overcome the challenges of the forthcoming heterogeneous computing era.