Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Serge Torres is active.

Publication


Featured researches published by Serge Torres.


ACM Transactions on Mathematical Software | 2013

On Ziv's rounding test

Florent de Dinechin; Christoph Lauter; Jean-Michel Muller; Serge Torres

A very simple test, introduced by Ziv, allows one to determine if an approximation to the value f(x) of an elementary function at a given point x suffices to return the floating-point number nearest f(x). The same test may be used when implementing floating-point operations with input and output operands of different formats, using arithmetic operators tailored for manipulating operands of the same format. That test depends on a “magic constant” e. We show how to choose that constant e to make the test reliable and efficient. Various cases are considered, depending on the availability of an fma instruction, and on the range of f(x).


application specific systems architectures and processors | 2008

An efficient method for evaluating polynomial and rational function approximations

Nicolas Brisebarre; Sylvain Chevillard; Milos D. Ercegovac; Jean-Michel Muller; Serge Torres

In this paper we extend the domain of applicability of the E-method [7, 8], as a hardware-oriented method for evaluating elementary functions using polynomial and rational function approximations. The polynomials and rational functions are computed by solving a system of linear equations using digit-serial iterations on simple and highly regular hardware. For convergence, these systems must be diagonally dominant. The E-method offers an efficient way for the fixed-point evaluation of polynomials and rational functions if their coefficients conform to the diagonal dominance condition. Until now, there was no systematic approach to obtain good approximations to f over an interval [a, b] by rational functions satisfying the constraints required by the E-method. In this paper, we present such an approach which is based on linear programming and lattice basis reduction. We also discuss a design and performance characteristics of a corresponding implementation.


Archive | 2018

Verifying Floating-Point Algorithms

Jean-Michel Muller; Nicolas Brunie; Florent de Dinechin; Claude-Pierre Jeannerod; Mioara Joldes; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Serge Torres

While the previous chapters have made clear that it is common practice to verify floating-point algorithms with pen-and-paper proofs, this practice can lead to subtle bugs. Indeed, floating-point arithmetic introduces numerous special cases, and examining all the details would be tedious. As a consequence, the verification process tends to focus on the main parts of the correctness proof, so that it does not grow out of reach.


Archive | 2018

Handbook of Floating-point Arithmetic (2nd edition)

Jean-Michel Muller; Nicolas Brunie; Florent de Dinechin; Claude-Pierre Jeannerod; Mioara Joldes; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Serge Torres

This handbook is a definitive guide to the effective use of modern floating-point arithmetic. Floating-point arithmetic has considerably evolved, from the frequently inconsistent floating-point number systems of early computing to the recent IEEE 754-2008 standard. Most of computational mathematics depends on floating-point numbers, and understanding their various implementations will allow readers to develop programs specifically tailored for the standard’s technical features. Algorithms for floating-point arithmetic are presented throughout the book and illustrated where possible by example programs which show how these techniques appear in actual coding and design.The volume itself breaks its core topic into four parts: the basic concepts and history of floating-point arithmetic; methods of analyzing floating-point algorithms and optimizing them; implementations of IEEE 754-2008 in hardware and software; and useful extensions to the standard floating-point system, such as interval arithmetic, double- and triple-word arithmetic, operations on complex numbers, and formal verification of floating-point algorithms. This new edition updates chapters to reflect recent changes to programming languages and compilers and the new prevalence of GPUs in recent years. The revisions also add material on fused multiply-add instruction, and methods of extending the floating-point precision. As supercomputing becomes more common, more numerical engineers will need to use number representation to account for trade-offs between various parameters, such as speed, accuracy, energy consumption. The Handbook of Floating-Point Arithmetic is designed for students and researchers in numerical analysis, programmers of numerical algorithms, compiler designers, and designers of arithmetic operators.


Archive | 2018

Algorithms for the Basic Operations

Jean-Michel Muller; Nicolas Brunie; Florent de Dinechin; Claude-Pierre Jeannerod; Mioara Joldes; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Serge Torres

Among the many operations that the IEEE 754 standards specify (see Chapter 3), we will focus here and in the next two chapters on the five basic arithmetic operations: addition, subtraction, multiplication, division, and square root. We will also study the fused multiply-add (FMA) operator. We review here some of the known properties and algorithms used to implement each of those operators. Chapter 8 and Chapter 9 will detail some examples of actual implementations in, respectively, hardware and software.


Archive | 2010

Formalisms for Certifying Floating-Point Algorithms

Jean-Michel Muller; Nicolas Brisebarre; Florent de Dinechin; Claude-Pierre Jeannerod; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Damien Stehlé; Serge Torres

While the previous chapters have made clear that it is common practice to certify floating-point algorithms with pen-and-paper proofs, this practice can lead to subtle bugs. Indeed, floating-point arithmetic introduces numerous special cases, and examining all the details would be tedious. As a consequence, the certification process tends to focus on the main parts of the correctness proof, so that it does not grow out of reach.


Archive | 2010

Extending the Precision

Jean-Michel Muller; Nicolas Brisebarre; Florent de Dinechin; Claude-Pierre Jeannerod; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Damien Stehlé; Serge Torres

Though very useful in many situations, the fixed-precision floating-point formats that are available in hardware or software in our computers may sometimes prove insufficient. There are reasonably rare cases when the binary64/decimal64 or binary128/decimal128 floating-point numbers of the IEEE 754 standard are too crude as approximations of the real numbers. This may occur for example when dealing with ill-conditioned numerical problems: internal computations with very high precision may be needed to obtain a meaningful final result.


Archive | 2010

Languages and Compilers

Jean-Michel Muller; Nicolas Brisebarre; Florent de Dinechin; Claude-Pierre Jeannerod; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Damien Stehlé; Serge Torres

The previous chapters have given an overview of interesting properties and algorithms that can be built on an IEEE 754-compliant floating-point arithmetic. In this chapter, we discuss the practical issues encountered when trying to implement such algorithms in actual computers using actual programming languages. In particular, we discuss the relationship between standard compliance, portability, accuracy, and performance. This chapter is useful to programmers wishing to obtain a standard-compliant behavior from their programs, but it is also useful for understanding how performance may be improved by relaxing standard compliance and also what traps one may fall into.


Archive | 2010

The Fused Multiply-Add Instruction

Jean-Michel Muller; Nicolas Brisebarre; Florent de Dinechin; Claude-Pierre Jeannerod; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Damien Stehlé; Serge Torres

The fused multiply-add (FMA) instruction makes it possible to evaluate ab + c, where a, b, and c are floating-point numbers, with one final rounding only.


Archive | 2010

Evaluating Floating-Point Elementary Functions

Jean-Michel Muller; Nicolas Brisebarre; Florent de Dinechin; Claude-Pierre Jeannerod; Vincent Lefèvre; Guillaume Melquiond; Nathalie Revol; Damien Stehlé; Serge Torres

The elementary functions are the most common mathematical functions: sine, cosine, tangent and their inverses, exponentials and logarithms of radices e, 2 or 10, etc. They appear everywhere in scientific computing; thus being able to evaluate them quickly and accurately is important for many applications. Various very different methods have been used for evaluating them: polynomial or rational approximations, shift-and-add algorithms, table-based methods, etc. The choice of the method greatly depends on whether the function will be implemented on hardware or software, on the target precision (for instance, table-based methods are very good for low precision, but unrealistic for very high precision), and on the required performance (in terms of speed, accuracy, memory consumption, size of code, etc.). With regard to performance, one will also resort to different methods depending on whether one wishes to optimize average performance or worst-case performance.

Collaboration


Dive into the Serge Torres's collaboration.

Top Co-Authors

Avatar

Florent de Dinechin

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jean-Michel Muller

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Nathalie Revol

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Guillaume Melquiond

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Nicolas Brisebarre

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Vincent Lefèvre

French Institute for Research in Computer Science and Automation

View shared research outputs
Top Co-Authors

Avatar

Nicolas Brunie

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Jean-Michel Muller

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Damien Stehlé

École normale supérieure de Lyon

View shared research outputs
Researchain Logo
Decentralizing Knowledge