Boost logo

Boost Users :

Subject: Re: [Boost-users] [chrono] float-based milliseconds?
From: Michael Powell (mwpowellhtx_at_[hidden])
Date: 2013-08-30 19:52:06


On Fri, Aug 30, 2013 at 6:50 PM, Michael Powell <mwpowellhtx_at_[hidden]> wrote:
> I should clarify, I suspect that it is being configure as doubles, but
> I could be mistaken. Instead I need to find out whether it's possible
> to set it up as single-precision float. Or does the fact that the
> high-resolution nature of Chrono steady-clock "long long int" preclude
> that?

And to clarify my clarification: it's not an issue in its usage per
se, but I have logs reporting what the values is/are/were type thing:
they need to be accurate if precise there. So if we configured 5
(milliseconds), we expect to see 5 and not 4.99995 type thing.
(Rounding here, as far as it goes, for sake of example only.)

> On Fri, Aug 30, 2013 at 6:34 PM, Brian Budge <brian.budge_at_[hidden]> wrote:
>> On Fri, Aug 30, 2013 at 4:26 PM, Michael Powell <mwpowellhtx_at_[hidden]> wrote:
>>> 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.
>>>
>>> Is there a way to tell milliseconds what precision floating point it
>>> is? float or double?
>>>
>>> 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.
>>>
>>
>> Hi Michael -
>>
>> I don't know the answer to this question (can chrono be configured to
>> use doubles); however, I thought it might be useful to point out that
>> when you're talking about 5 decimal digits of precision at
>> milliseconds, you're only going to be off by a couple of tens of
>> nanoseconds, which is likely less than the precision of any timer on
>> the system.
>>
>> Brian
>> _______________________________________________
>> Boost-users mailing list
>> Boost-users_at_[hidden]
>> http://lists.boost.org/mailman/listinfo.cgi/boost-users


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