Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9282: performance regression in boost::unordered on 64-bit platforms
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-10-23 22:26:44
#9282: performance regression in boost::unordered on 64-bit platforms
--------------------------+------------------------------------------------
Reporter: aiapub- | Owner: danieljames
cpp@⦠| Status: assigned
Type: Bugs | Component: unordered
Milestone: To Be | Severity: Regression
Determined | Keywords: unordered mix64_policy performance
Version: Boost |
1.53.0 |
Resolution: |
--------------------------+------------------------------------------------
Comment (by danieljames):
It just occurred to me that my old laptop is running a 64 bit operating
system. It only has 2 GB memory, so I couldn't run it for as many records.
I ran it for 30M records and I got the kind of distribution I'd expect.
But the performance was worse than I expected (about twice as long for the
mix policy). I'm not sure, but I think it might be because of bad cache
coherency. The mix policy is jumping around the buckets array, while the
prime policy is moving through it linearly. So even if there's an empty
bucket the mix policy is much more likely to have a cache miss when
checking the bucket. I'll think about this.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9282#comment:5> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC