Boost logo

Boost :

Subject: Re: [boost] Looking for some "real world" extended precision integer arithmetic tests
From: Andrii Sydorchuk (sydorchuk.andriy_at_[hidden])
Date: 2012-01-24 18:45:03

Hi John,

I was almost done implementing benchmark with fixed_int and voronoi library
when next problem appeared.
Let's consider following code snippet:

#include <iostream>
#include "boost/multiprecision/fixed_int.hpp"
using namespace boost::multiprecision;

template <typename T>
void foo(const T& that) {
    std::cout << "Using default foo." << std::endl;

template <>
void foo<mp_int512_t>(const mp_int512_t& that) {
    std::cout << "Using fixed_int specialization." << std::endl;

int main() {
    mp_int512_t a = 1;
    mp_int512_t b = 2;
    foo(a); // outputs 'Using fixed_int specialization.'
    foo(a * b); // outputs 'Using default foo.'
    return 0;

I understand the reason of such behaviour (results of the expressions are
stored as some intermediate objects), but in my implementation I need to
specify template function specialization that converts fixed_int to
double. Any suggestions on how to fix this?


On Tue, Jan 24, 2012 at 10:31 PM, Christopher Kormanyos

> > ... So I'd be really interested to put the type through it's paces with
> some real world code that really thrashes an extended precision integer
> type. Any suggestions? Anything in Boost?
> > Thanks in advance, John.
> Ooooops. Disregard my last post. You want integer tests
> and I suggested a float.
> Best regards, Chris.
> _______________________________________________
> Unsubscribe & other changes:

Boost list run by bdawes at, gregod at, cpdaniel at, john at