Boost logo

Boost Users :

Subject: Re: [Boost-users] [chrono] float-based milliseconds?
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2013-08-31 05:06:43


Le 31/08/13 01:26, Michael Powell a écrit :
> Hello,
>
> Or any of the chrono-steady-clock-based time units...
>
> I am noticing some what appear to be rounding errors outputting
> resulting millisecond values using the boost::chrono::milliseconds(x).
>
> It's a design-decision, most if not all of our floating-point values
> are single-precision-float, don't need to be double-precision-float.
>
> When we output the milliseconds(x).count() values, however, what I am
> finding is that the values are sometimes inaccurate, the same value in
> 3.0, for instance, output as 2.99995, stuff like this.
Please, could you provide an example an the output you are getting?

Is there a way to tell milliseconds what precision floating point it
is? float or double?

I don't see yet where the double is playing on

     typedef duration<boost::int_least64_t, milli> milliseconds; // at
least 45 bits needed

Which version are you using, V1 or V2?

>
> We are targeting ARM, BTW, without hardware floating point support,
> which is the main reason, I'd like to keep things single-precision
> float, if at all possible.
>
>
Vicente


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