Subject: Re: [boost] Proposed templated integer_sort
From: Steven Ross (spreadsort_at_[hidden])
Date: 2009-04-19 08:41:41
Thanks Steve, that was the problem.
Oddly, now that I've resolved these file I/O issues, MSVC works best with
similar constants to gcc, and it is slightly faster. Now, on MSVC I see a
27% speedup for integer_sort, 6X speedup for float_sort, and 136% speedup
for string_sort (relative to std::sort). The new version is in the boost
vault, named algorithm_sorting.zip.
As this zip file was built on my new (purchased for this project) Windows
system, it no longer has those annoying MacOS tag files in it. I verified
it works in gcc with my old mac system.
To make the tuning script cross-platform, I send undesired output to a
.tunelog file (/dev/null doesn't work on windows), I have duplicate rm/del
commands, and I modify the user's path to have "." in it for Windows (then
remove it when the script finishes). For some reason I haven't figured out,
it leaves a time.txt file in the directory instead of deleting it on
Windows, but I don't think that's a big deal.
I'm currently rerunning performance tests (trying to see if I can eliminate
the #ifdef MSVC), and once that is done and I've made some graphs for
Windows performance, I should be ready for a formal submission.
On Sat, Apr 18, 2009 at 1:24 PM, Steven Watanabe <watanabesj_at_[hidden]>wrote:
> Steven Ross wrote:
>> What is the best platform-independent file I/O approach to use for writing
>> and reading bytes? ofstream writes 4031 bytes when I tell it to write
>> on Windows, so that doesn't seem appropriate.
> You probably need to open the file in binary mode.
> In Christ,
> Steven Watanabe
> Unsubscribe & other changes:
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk