Efficiency, Expressivity, and Extensibility in a Close-to-Metal NPU Programming Interface

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Hunhoff, Erika, Melber, Joseph, Denolf, Kristof, Bisca, Andra, Bayliss, Samuel, Neuendorffer, Stephen, Fifield, Jeff, Lo, Jack, Vasireddy, Pranathi, James-Roxby, Phil, Keller, Eric
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909594461143040
author Hunhoff, Erika
Melber, Joseph
Denolf, Kristof
Bisca, Andra
Bayliss, Samuel
Neuendorffer, Stephen
Fifield, Jeff
Lo, Jack
Vasireddy, Pranathi
James-Roxby, Phil
Keller, Eric
author_facet Hunhoff, Erika
Melber, Joseph
Denolf, Kristof
Bisca, Andra
Bayliss, Samuel
Neuendorffer, Stephen
Fifield, Jeff
Lo, Jack
Vasireddy, Pranathi
James-Roxby, Phil
Keller, Eric
contents Accelerators such as neural processing units (NPUs) deliver an enticing balance of performance and efficiency compared to general purpose compute architectures. However, effectively leveraging accelerator capabilities is not always simple: low-level programming toolkits may require substantial developer effort while high-level programming toolkits may abstract critical optimization features. This work aims to increase efficiency of designers using IRON, a toolkit for close-to-metal NPU performance engineers. We provide an updated programmer interface to IRON containing new and refined programming constructs. The new interface includes extensible features for placement and data transformation. These contributions are evaluated in terms of 1) efficiency, with analysis showing ~26% average reduction in lines of code and decreases in Halstead metrics for a variety of designs; 2) expressivity, demonstrating the new interface supports the wide range of features and patterns already supported by IRON; and 3) extensibility, illustrating the new tooling for placement and tiling can be extended to accommodate common use-cases.
format Preprint
id arxiv_https___arxiv_org_abs_2504_18430
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Efficiency, Expressivity, and Extensibility in a Close-to-Metal NPU Programming Interface
Hunhoff, Erika
Melber, Joseph
Denolf, Kristof
Bisca, Andra
Bayliss, Samuel
Neuendorffer, Stephen
Fifield, Jeff
Lo, Jack
Vasireddy, Pranathi
James-Roxby, Phil
Keller, Eric
Software Engineering
Accelerators such as neural processing units (NPUs) deliver an enticing balance of performance and efficiency compared to general purpose compute architectures. However, effectively leveraging accelerator capabilities is not always simple: low-level programming toolkits may require substantial developer effort while high-level programming toolkits may abstract critical optimization features. This work aims to increase efficiency of designers using IRON, a toolkit for close-to-metal NPU performance engineers. We provide an updated programmer interface to IRON containing new and refined programming constructs. The new interface includes extensible features for placement and data transformation. These contributions are evaluated in terms of 1) efficiency, with analysis showing ~26% average reduction in lines of code and decreases in Halstead metrics for a variety of designs; 2) expressivity, demonstrating the new interface supports the wide range of features and patterns already supported by IRON; and 3) extensibility, illustrating the new tooling for placement and tiling can be extended to accommodate common use-cases.
title Efficiency, Expressivity, and Extensibility in a Close-to-Metal NPU Programming Interface
topic Software Engineering
url https://arxiv.org/abs/2504.18430