ENOPATCH
On 1 May 2016 at 15:21, Eelis <[email protected]> wrote: > Sorry, forgot to include the libstdc++ list. > > On 2016-05-01 16:18, Eelis wrote: >> >> Hi, >> >> The attached patch optimizes std::shuffle for the very common case >> where the generator range is large enough that a single invocation >> can produce two swap positions. >> >> This reduces the runtime of the following testcase by 37% on my machine: >> >> int main() >> { >> std::mt19937 gen; >> >> std::vector<int> v; >> v.reserve(10000); >> for (int i = 0; i != 10000; ++i) >> { >> v.push_back(i); >> std::shuffle(v.begin(), v.end(), gen); >> } >> >> std::cout << v.front() << '\n'; >> } >> >> Thoughts? >> >> Thanks, >> >> Eelis >> > >
