|
Boost : |
Subject: Re: [boost] sorting floats by casting to integer
From: Steven Ross (spreadsort_at_[hidden])
Date: 2009-07-26 19:06:44
On Mon, Jul 6, 2009 at 8:37 AM, Vladimir Prus <vladimir_at_[hidden]>wrote:
> > I'll test with SSE and other compiler settings next. Is there an easy
> way
> > to add these with bjam?
>
> Because bjam is actually a low-level build engine, it is pretty much
> impossible
> to do anything with it at all. Boost.Build allows you to pass any flags
> to compiler you see fit, my previous post gives the actual syntax I have
> used.
>
Thanks for the suggestion.
I ended up passing those flags you suggested, and obtained this result:
cl : Command line warning D9002 : ignoring unknown option '-march=nocona'
cl : Command line warning D9002 : ignoring unknown option '-mfpmath=sse'
I've checked and my cheap version of MSVC 8.0 apparently doesn't support
sse. So I can't benchmark with your recommended options, without spending
more money on a volunteer project.
With default release optimizations, all 3 of my algorithms are roughly twice
as fast as std::sort on randomized data. I'm stripping out denorms from the
float tests because they skew results so much and aren't realistic data, and
my floating-point performance improvement dropped from fantastic to
reasonable.
I've tested string_sort on a Dickens novel and had comparable results to
random data, relative to std::sort (a little better than 2X faster). For
now I'm using random bits for all my performance testing, which tends to
generate long strings and I admit doesn't seem to be realistic string data,
though it does test corner-cases.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk