[Chrono] Boost.Chrono added to sandbox

Work-in-progress for the Boost.Chrono library has been added to the sandbox. See http://svn.boost.org/svn/boost/sandbox/chrono This work is in a very preliminary state. The only testing has been with VC++ 9.0 on XP-64 and a tiny bit on Ubuntu 8.04 Linux. There has been no work done yet on C++0x headers. The Jamfiles are there, but haven't been tested; I've been developing using the provided VC++ solution. The implementation of the clocks is going to be very system specific. If anyone would like to try .../libs/chrono/example/await_keystroke.cpp and report whether or not it compiles and works on their system, it would be appreciated. Patches to make .../libs/chrono/src/chrono.cpp work for various operating systems would be even more appreciated! I'm still unsure about even some of the basics, such as how to partition the three parts for boost. Are the time utilities, the compile-time rational arithmetic, and the type trait common_type three boost libraries, one boost library, or three parts of a larger boost library? There was some discussion of this in a prior thread, but I thought having the actual code available might move the discussion forward. There is a tiny bit of documentation; see .../libs/chrono/doc/index.html. Comments welcome! --Beman

Work-in-progress for the Boost.Chrono library has been added to the sandbox. See http://svn.boost.org/svn/boost/sandbox/chrono
This work is in a very preliminary state. The only testing has been with VC++ 9.0 on XP-64 and a tiny bit on Ubuntu 8.04 Linux. There has been no work done yet on C++0x headers. The Jamfiles are there, but haven't been tested; I've been developing using the provided VC++ solution.
The implementation of the clocks is going to be very system specific. If anyone would like to try .../libs/chrono/example/await_keystroke.cpp and report whether or not it compiles and works on their system, it would be appreciated. Patches to make .../libs/chrono/src/chrono.cpp work for various operating systems would be even more appreciated!
I'm still unsure about even some of the basics, such as how to partition the three parts for boost. Are the time utilities, the compile-time rational arithmetic, and the type trait common_type three boost libraries, one boost library, or three parts of a larger boost library? There was some discussion of this in a prior thread, but I thought having the actual code available might move the discussion forward.
There is a tiny bit of documentation; see .../libs/chrono/doc/index.html.
Comments welcome!
--Beman _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Hi Beman, I've tried the ../libs/chrono/example/await_keystroke.cpp with VC++ 9.0 (SP1) on a XP-32 system in release and debug mode. It seems to work very well. Output at debug mode: Strike any key: abc system_clock-----------: 2.359420300 seconds monotonic_clock--------: 2.360545544 seconds high_resolution_clock--: 2.361268541 seconds system_clock latency-----------: 0 monotonic_clock latency--------: 2235 high_resolution_clock latency--: 1956 system_clock::now() reports UTC is Wed Nov 12 16:02:54 2008 Output at release mode: Strike any key: abc system_clock-----------: 2.734427500 seconds monotonic_clock--------: 2.742866761 seconds high_resolution_clock--: 2.743364311 seconds system_clock latency-----------: 0 monotonic_clock latency--------: 1676 high_resolution_clock latency--: 1676 system_clock::now() reports UTC is Wed Nov 12 16:04:17 2008 Franz

On Wed, Nov 12, 2008 at 11:10 AM, Franz Alt <f.alt@gmx.net> wrote:
I've tried the ../libs/chrono/example/await_keystroke.cpp with VC++ 9.0 (SP1) on a XP-32 system in release and debug mode. It seems to work very well.
Output at debug mode: Strike any key: abc system_clock-----------: 2.359420300 seconds monotonic_clock--------: 2.360545544 seconds high_resolution_clock--: 2.361268541 seconds
system_clock latency-----------: 0 monotonic_clock latency--------: 2235 high_resolution_clock latency--: 1956
system_clock::now() reports UTC is Wed Nov 12 16:02:54 2008
Output at release mode: Strike any key: abc system_clock-----------: 2.734427500 seconds monotonic_clock--------: 2.742866761 seconds high_resolution_clock--: 2.743364311 seconds
system_clock latency-----------: 0 monotonic_clock latency--------: 1676 high_resolution_clock latency--: 1676
system_clock::now() reports UTC is Wed Nov 12 16:04:17 2008
Thanks! Good to know it is working on 32-bit XP. --Beman

Beman Dawes wrote:
On Wed, Nov 12, 2008 at 11:10 AM, Franz Alt <f.alt@gmx.net> wrote:
Ran the await_keystroke test with VC9 SP1 on XP64, built x64 platform debug output: Strike any key: abc system_clock-----------: 1.828089900 seconds monotonic_clock--------: 1.832697574 seconds high_resolution_clock--: 1.833907365 seconds system_clock latency-----------: 0 monotonic_clock latency--------: 502 high_resolution_clock latency--: 337 system_clock::now() reports UTC is Wed Nov 12 22:27:28 2008 Press any key to continue . . . release output: Strike any key: abc system_clock-----------: 1.796840500 seconds monotonic_clock--------: 1.797530107 seconds high_resolution_clock--: 1.798462811 seconds system_clock latency-----------: 0 monotonic_clock latency--------: 210 high_resolution_clock latency--: 206 system_clock::now() reports UTC is Wed Nov 12 22:28:06 2008 Press any key to continue . . . Got some warnings building the x64 target which don't show up buildint the Win32 target. C:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost/config/abi_prefix.hpp(19) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost\config\abi_prefix.hpp' : alignment changed after including header, may be due to missing #pragma pack(pop) 1>c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\boost/chrono.hpp(43) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\boost\chrono.hpp' : alignment changed after including header, may be due to missing #pragma pack(pop) 1>..\..\..\src\chrono.cpp(8) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\libs\chrono\src\chrono.cpp' : alignment changed after including header, may be due to missing #pragma pack(pop) 1>await_keystroke.cpp 1>using native typeof 1>C:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost/config/abi_prefix.hpp(19) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost\config\abi_prefix.hpp' : alignment changed after including header, may be due to missing #pragma pack(pop) 1>c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\boost/chrono.hpp(43) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\boost\chrono.hpp' : alignment changed after including header, may be due to missing #pragma pack(pop) 1>..\..\..\example\await_keystroke.cpp(10) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\sandbox\chrono\libs\chrono\example\await_keystroke.cpp' : alignment changed after including header, may be due to missing #pragma pack(pop) -- Michael Marcin

On Wed, Nov 12, 2008 at 5:30 PM, Michael Marcin <mike.marcin@gmail.com> wrote:
Got some warnings building the x64 target which don't show up buildint the Win32 target.
C:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost/config/abi_prefix.hpp(19) : warning C4103: 'c:\vfxrepo\vfx\mike\third_party\boost\1_36_0\boost\config\abi_prefix.hpp' : alignment changed after including header, may be due to missing #pragma pack(pop)
Fixed. Thanks, --Beman

AMDG Beman Dawes wrote:
Work-in-progress for the Boost.Chrono library has been added to the sandbox. See http://svn.boost.org/svn/boost/sandbox/chrono
__declspec(dllexport) is missing in chrono.cpp, so dynamic linking doesn't work. In Christ, Steven Watanabe

On Wed, Nov 12, 2008 at 10:45 PM, Steven Watanabe <watanabesj@gmail.com> wrote:
AMDG
Beman Dawes wrote:
Work-in-progress for the Boost.Chrono library has been added to the sandbox. See http://svn.boost.org/svn/boost/sandbox/chrono
__declspec(dllexport) is missing in chrono.cpp, so dynamic linking doesn't work.
Fixed. Fix tested for VC++ 9.0 and 8.0 Thanks, --Beman
participants (4)
-
Beman Dawes
-
Franz Alt
-
Michael Marcin
-
Steven Watanabe