Boost logo

Boost Users :

Subject: [Boost-users] [multiprecision] FMA without expression templates?
From: Francesco Biscani (bluescarni_at_[hidden])
Date: 2013-11-26 14:14:39


Hello,

I would like to start using the Boost multiprecision library in my code.
For a series of reasons, I would like to disable the expression template
support (I need the return type of a + b to be the type of a or b, and not
an expression).

My understanding after briefly venturing into the library code is that
there is the concept of a multiply_add() function (e.g., in
boost/multiprecision/detail/default_ops.hpp), but that such support is
hidden behind the expression template magic and it is not exposed when ET
is disabled.

I tried to look into Boost math as well, where there is a fused
multiply-add function, but it seems like it is built to support
floating-point types and I need support for integral types (for the
implementation of algebraic operations on polynomials with integer
coefficients).

Is my understanding correct or is there a way to use some kind of a
multiply_accumulate function in multiprecision without using ET?

Many thanks,

  Francesco.



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net