Saved in:
| Main Authors: | , , , , , , , , |
|---|---|
| Format: | Preprint |
| Published: |
2025
|
| Subjects: | |
| Online Access: | https://arxiv.org/abs/2509.09774 |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1866908534744023040 |
|---|---|
| author | Popovici, Doru Thom Vega, Mario Ioannou, Angelos Chaix, Fabien Mosuli, Dania Reasoner, Blair Nguyen, Tan Yang, Xiaokun Shalf, John |
| author_facet | Popovici, Doru Thom Vega, Mario Ioannou, Angelos Chaix, Fabien Mosuli, Dania Reasoner, Blair Nguyen, Tan Yang, Xiaokun Shalf, John |
| contents | Developing efficient hardware accelerators for mathematical kernels used in scientific applications and machine learning has traditionally been a labor-intensive task. These accelerators typically require low-level programming in Verilog or other hardware description languages, along with significant manual optimization effort. Recently, to alleviate this challenge, high-level hardware design tools like Chisel and High-Level Synthesis have emerged. However, as with any compiler, some of the generated hardware may be suboptimal compared to expert-crafted designs. Understanding where these inefficiencies arise is crucial, as it provides valuable insights for both users and tool developers. In this paper, we propose a methodology to hierarchically decompose mathematical kernels - such as Fourier transforms, matrix multiplication, and QR factorization - into a set of common building blocks or primitives. Then the primitives are implemented in the different programming environments, and the larger algorithms get assembled. Furthermore, we employ an automatic approach to investigate the achievable frequency and required resources. Performing this experimentation at each level will provide fairer comparisons between designs and offer guidance for both tool developers and hardware designers to adopt better practices. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2509_09774 |
| institution | arXiv |
| publishDate | 2025 |
| record_format | arxiv |
| spellingShingle | Towards An Approach to Identify Divergences in Hardware Designs for HPC Workloads Popovici, Doru Thom Vega, Mario Ioannou, Angelos Chaix, Fabien Mosuli, Dania Reasoner, Blair Nguyen, Tan Yang, Xiaokun Shalf, John Hardware Architecture Developing efficient hardware accelerators for mathematical kernels used in scientific applications and machine learning has traditionally been a labor-intensive task. These accelerators typically require low-level programming in Verilog or other hardware description languages, along with significant manual optimization effort. Recently, to alleviate this challenge, high-level hardware design tools like Chisel and High-Level Synthesis have emerged. However, as with any compiler, some of the generated hardware may be suboptimal compared to expert-crafted designs. Understanding where these inefficiencies arise is crucial, as it provides valuable insights for both users and tool developers. In this paper, we propose a methodology to hierarchically decompose mathematical kernels - such as Fourier transforms, matrix multiplication, and QR factorization - into a set of common building blocks or primitives. Then the primitives are implemented in the different programming environments, and the larger algorithms get assembled. Furthermore, we employ an automatic approach to investigate the achievable frequency and required resources. Performing this experimentation at each level will provide fairer comparisons between designs and offer guidance for both tool developers and hardware designers to adopt better practices. |
| title | Towards An Approach to Identify Divergences in Hardware Designs for HPC Workloads |
| topic | Hardware Architecture |
| url | https://arxiv.org/abs/2509.09774 |