Boost.Ratio avoids all kind of overflow
that could result of arithmetic operation and that can be simplified. The
typedefs durations don't detect overflow. You will need a duration representation
that handles overflow.

Each clock has his own features. It depends on what do you need to benchmark.
Most of the time, you could be interested in using a thread clock, but if
you need to measure code subject to synchronization a process clock would
be better. If you have a multi-process application, a system-wide clock could
be needed.

The library's code was derived from Howard Hinnant's time2_demo prototype.
Many thanks to Howard for making his code available under the Boost license.
The original code was modified by Beman Dawes to conform to Boost conventions.

The file <boost/chrono_io.hpp> has been adapted from the experimental
header <chrono_io> from Howard Hinnant. Thanks for all Howard.

Howard Hinnant, who is the real author of the library, has provided valuable
feedback and suggestions during the development of the library. In particular,
The chrono_io_io.hpp source has been adapted from the experimental header
<chrono_io> from Howard Hinnant.

The acceptance review of Boost.Ratio took place between November 5th and
15th 2010. Many thanks to Anthony Williams, the review manager, and to all
the reviewers: David Deakins, John Bytheway, Roland Bock and Paul A. Bristow.

Thanks to Ronald Bock, Andrew Chinoff, Paul A. Bristow and John Bytheway
for his help polishing the documentation.

Thanks to Tom Tan for reporting some compiler issues with MSVC V10 beta and
MinGW-gcc-4.4.0 and for the many pushing for an homogeneous process_cpu_clock clock.

Thanks to Ronald Bock for reporting Valgind issues and for the many suggestions
he made concerning the documentation.

chrono I/O: The manipulators duration_short, duration long are
depreceated. You should use the parameterized form duration_fmt
instead.

chrono I/O: The duraction_punc<> facet observers is_short_name,
is_long_name are depreceated. You should use is_prefix and is_symbol
instead.

chrono I/O: The duraction_punc<> facet constructors taking
as argument the literals duraction_punc<>::use_long or use
short are depreceated. You should use duration_style::prefix and
duration_style::symbol instead.

chrono I/O: The duraction_punc<> facet constructors taking
the long names for seconds, minutes and hours and the associated
observers short_name, long_name and name are depreceated. Boost.Chrono
allows the user to use an interface that could be customized to
take care of locale issues. The default behavior been to return
the English words.

When BOOST_CHRONO_IO_V1_DONT_PROVIDE_DEPRECATED is defined the preceding
deprecated functions are not available. In addition, the user needs to define
the macro BOOST_CHRONO_IO_USES_EXTERNAL_LOCALIZATION to be able to customize
the locale interface.