/usr/include/stxxl/bits/algo
NameSizeModeActions
adaptor.h64440644editdlrm
async_schedule.h23450644editdlrm
inmemsort.h20660644editdlrm
intksort.h91840644editdlrm
ksort.h367030644editdlrm
losertree.h76460644editdlrm
random_shuffle.h133570644editdlrm
run_cursor.h30740644editdlrm
scan.h109880644editdlrm
sort.h344360644editdlrm
sort_base.h14180644editdlrm
sort_helper.h49020644editdlrm
stable_ksort.h186050644editdlrm
Edit: /usr/include/stxxl/bits/algo/sort_base.h (1418B)
/*************************************************************************** * include/stxxl/bits/algo/sort_base.h * * Part of the STXXL. See http://stxxl.sourceforge.net * * Copyright (C) 2009 Andreas Beckmann * * Distributed under the Boost Software License, Version 1.0. * (See accompanying file LICENSE_1_0.txt or copy at * http://www.boost.org/LICENSE_1_0.txt) **************************************************************************/ #ifndef STXXL_ALGO_SORT_BASE_HEADER #define STXXL_ALGO_SORT_BASE_HEADER #include #include #ifndef STXXL_NO_WARN_RECURSIVE_SORT #define STXXL_WARNMSG_RECURSIVE_SORT STXXL_ERRMSG #else #define STXXL_WARNMSG_RECURSIVE_SORT STXXL_VERBOSE #endif #ifndef STXXL_SORT_OPTIMAL_PREFETCHING #define STXXL_SORT_OPTIMAL_PREFETCHING 1 #endif #ifndef STXXL_CHECK_ORDER_IN_SORTS #define STXXL_CHECK_ORDER_IN_SORTS 0 #endif #ifndef STXXL_L2_SIZE #define STXXL_L2_SIZE (512 * 1024) #endif STXXL_BEGIN_NAMESPACE // Optimal merging: merge r = pow(nruns,1/ceil(log(nruns)/log(m))) runs at once inline unsigned_type optimal_merge_factor(unsigned_type num_runs, unsigned_type max_concurrent_runs) { return unsigned_type(ceil(pow(double(num_runs), 1. / ceil(log(double(num_runs)) / log(double(max_concurrent_runs)))))); } STXXL_END_NAMESPACE #endif // !STXXL_ALGO_SORT_BASE_HEADER // vim: et:ts=4:sw=4