Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

How to square floats accurately and efficiently on the ST231 integer processor

Claude-Pierre Jeannerod 1, * Jingyan Jourdan-Lu 1, 2 Christophe Monat 2 Guillaume Revy 3 
* Corresponding author
1 ARIC - Arithmetic and Computing
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
2 Compilation Expertise Center
ST-GRENOBLE - STMicroelectronics [Grenoble]
3 DALI - Digits, Architectures et Logiciels Informatiques
LIRMM - Laboratoire d'Informatique de Robotique et de Microélectronique de Montpellier, UPVD - Université de Perpignan Via Domitia
Abstract : We consider the problem of computing IEEE floating-point squares by means of integer arithmetic. We show how the specific properties of squaring can be exploited in order to design and implement algorithms that have much lower latency than those for general multiplication, while still guaranteeing correct rounding. Our algorithm descriptions are parameterized by the floating-point format, aim at high instruction-level parallelism (ILP) exposure, and cover all rounding modes. We show further that their C implementation for the binary32 format yields efficient codes for targets like the ST231 VLIW integer processor from STMicroelectronics, with a latency at least 1.75x smaller than that of general multiplication in the same context.
Document type :
Preprints, Working Papers, ...
Complete list of metadata

Cited literature [11 references]  Display  Hide  Download
Contributor : Claude-Pierre Jeannerod Connect in order to contact the contributor
Submitted on : Friday, November 19, 2010 - 7:00:22 AM
Last modification on : Friday, September 30, 2022 - 4:13:56 AM
Long-term archiving on: : Friday, October 26, 2012 - 4:00:13 PM


Files produced by the author(s)


  • HAL Id : ensl-00532829, version 1


Claude-Pierre Jeannerod, Jingyan Jourdan-Lu, Christophe Monat, Guillaume Revy. How to square floats accurately and efficiently on the ST231 integer processor. 2010. ⟨ensl-00532829⟩



Record views


Files downloads