Authors:
Matthieu Martel
;
Amine Najahi
and
Guillaume Revy
Affiliation:
Univ. Perpignan Via Domitia, DALI, Univ. Montpellier II, LIRMM, UMR 5506, CNRS, LIRMM and UMR 5506, France
Keyword(s):
Automated Code Synthesis, Matrix Multiplication, Fixed-point Arithmetic, Certified Numerical Accuracy.
Related
Ontology
Subjects/Areas/Topics:
Embedded Communications Systems
;
Pervasive Embedded Devices
;
Software Architectures
;
Telecommunications
Abstract:
In digital signal processing, many primitives boil down to a matrix multiplication. In order to enable savings in time, energy consumption, and on-chip area, these primitives are often implemented in fixed-point arithmetic. Various conflicting goals undermine the process of writing fixed-point codes, such as numerical accuracy, runtime latency, and size of the codes. In this article, we introduce a new methodology to automate the synthesis of small and accurate codes for matrix multiplication in fixed-point arithmetic. Our approach relies on a heuristic to merge matrix rows or columns in order to reduce the synthesized code size, while guaranteeing a target accuracy. We suggest a merging strategy based on finding closest pairs of vectors, which makes it possible to address in a few seconds problems such as the synthesis of small and accurate codes for size-64 and more matrix multiplication. Finally, we illustrate its efficiency on a set of benchmarks, and we show that it allows to re
duce the synthesized code size by more than 50% while maintaining good numerical properties.
(More)