STXXL
1.4-dev
|
STXXL
library namespace
More...
Namespaces | |
async_schedule_local | |
btree | |
compat | |
hash_map | |
External memory hash-map. | |
helper | |
ksort_local | |
matrix_local | |
matrix low-level operations and tools | |
mng_local | |
Block Manager Internals. | |
parallel | |
potentially_parallel | |
this namespace provides parallel or sequential algorithms depending on the compilation settings. it should be used by all components, where parallelism is optional. | |
ppq_local | |
priority_queue_local | |
sort_helper | |
sort_local | |
stable_ksort_local | |
stream | |
Stream package subnamespace. | |
Classes | |
class | addressable_fifo_queue |
An internal fifo queue that allows removing elements addressed with (a copy of) themselves. More... | |
class | addressable_priority_queue |
An internal priority queue that allows removing elements addressed with (a copy of) themselves. More... | |
struct | aligned_alloc_settings |
class | array_of_sequences_iterator |
class | atomic_counted_object |
Provides reference counting abilities for use with counting_ptr with mutex locking. More... | |
class | bad_ext_alloc |
class | bad_parameter |
struct | basic_allocation_strategy |
Example disk allocation scheme functor. More... | |
struct | BID |
Block identifier class. More... | |
struct | BID< 0 > |
Specialization of block identifier class (BID) for variable size block size. More... | |
class | BIDArray |
class | binary_buffer |
binary_buffer represents a dynamically growable area of memory, which can be modified by appending integral data types via put() and other basic operations. More... | |
class | binary_buffer_ref |
binary_buffer_ref represents a memory area as pointer and valid length. More... | |
class | binary_reader |
binary_reader represents a binary_buffer_ref with an additional cursor with which the memory can be read incrementally. More... | |
class | block_manager |
Block manager class. More... | |
class | block_prefetcher |
Encapsulates asynchronous prefetching engine. More... | |
class | block_scheduler |
Schedules swapping of blocks and provides blocks for temporary storage. More... | |
class | block_scheduler_algorithm |
Interface of a block scheduling algorithm. More... | |
class | block_scheduler_algorithm_offline_lfd |
Block scheduling algorithm caching via the longest forward distance policy (offline). More... | |
class | block_scheduler_algorithm_offline_lru_prefetching |
Block scheduling algorithm caching via the least recently used policy (offline), and prefetching in addition. More... | |
class | block_scheduler_algorithm_online_lru |
Block scheduling algorithm caching via the least recently used policy (online). More... | |
class | block_scheduler_algorithm_simulation |
Pseudo block scheduling algorithm only recording the request sequence. More... | |
class | blocked_index |
class | buf_istream |
Buffered input stream. More... | |
class | buf_istream_reverse |
Buffered input stream, reading the items in the blocks in reverse order. More... | |
class | buf_ostream |
Buffered output stream. More... | |
class | buffered_writer |
Encapsulates asynchronous buffered block writing engine. More... | |
struct | CASE |
struct | choose_int_types |
struct | choose_int_types< 4 > |
struct | choose_int_types< 8 > |
class | cmdline_parser |
class | column_vector |
external column-vector container for matrix multiplication More... | |
struct | compat_hash |
struct | compat_hash_map |
struct | compat_hash_multimap |
struct | compat_unique_ptr |
class | completion_handler |
Completion handler class (Loki-style). More... | |
class | completion_handler1 |
class | completion_handler_impl |
class | condition_variable |
class | config |
Access point to disks properties. Since 1.4.0: no config files are read automatically! More... | |
class | const_counting_ptr |
High-performance smart pointer used as a wrapping reference counting pointer. More... | |
class | const_deque_iterator |
class | const_matrix_col_major_iterator |
column-major const_iterator that points to single elements inside a matrix More... | |
class | const_matrix_iterator |
general const_iterator type that points to single elements inside a matrix More... | |
class | const_matrix_row_major_iterator |
row-major const_iterator that points to single elements inside a matrix More... | |
class | const_vector_iterator |
Const external vector iterator, model of ext_random_access_iterator concept. More... | |
class | counted_object |
Provides reference counting abilities for use with counting_ptr. More... | |
class | counting_ptr |
High-performance smart pointer used as a wrapping reference counting pointer. More... | |
class | custom_stats_counter |
This class provides a statistical counter that can easily be deactivated using a typedef to dummy_custom_stats_counter. More... | |
class | deque |
A deque container. Introduction to deque container: see STXXL Deque tutorial. Design and Internals of deque container: see Deque. More... | |
class | deque_iterator |
class | disk_allocator |
class | disk_config |
Encapsulate the configuration of one "disk". The disk is actually a file I/O object which block_manager uses to read/write blocks. More... | |
class | disk_queued_file |
Implementation of some file methods based on serving_request. More... | |
class | disk_queues |
Encapsulates disk queues. More... | |
class | double_blocked_index |
class | dummy_custom_stats_counter |
Dummy class for custom_stats_counter. More... | |
struct | element_iterator_traits |
class | external_shared_ptr |
This class takes a shared pointer, increments its reference count and wraps it in a way that the resulting object can be copied, dumped to disk, and destroyed without affecting the refcount. More... | |
class | fake_timer |
Class fake_timer is a drop-in replacement for timer, which does nothing. More... | |
class | file |
Defines interface of file. More... | |
class | fileperblock_file |
Implementation of file based on other files, dynamically allocate one file per block. Allows for dynamic disk space consumption. More... | |
struct | first_disk_only |
struct | FR |
Fully randomized disk allocation scheme functor. More... | |
class | grow_shrink_stack |
Efficient implementation that uses prefetching and overlapping using internal buffers. More... | |
class | grow_shrink_stack2 |
Efficient implementation that uses prefetching and overlapping using (shared) buffers pools. More... | |
class | IC35L080AVVA07 |
struct | IF |
IF template metaprogramming statement. More... | |
struct | IF< false, Type1, Type2 > |
struct | IF_N |
If Flag is true then IF<>::result is Num1 otherwise of IF<>::result is Num2. More... | |
struct | IF_N< false, Num1, Num2 > |
struct | interleaved_alloc_traits |
struct | interleaved_alloc_traits< FR > |
struct | interleaved_alloc_traits< RC > |
struct | interleaved_alloc_traits< RC_disk > |
struct | interleaved_alloc_traits< RC_flash > |
struct | interleaved_alloc_traits< single_disk > |
struct | interleaved_alloc_traits< SR > |
struct | interleaved_alloc_traits< striping > |
struct | interleaved_FR |
struct | interleaved_RC |
struct | interleaved_SR |
struct | interleaved_striping |
class | io_error |
struct | ksort_defaultkey |
class | linuxaio_file |
Implementation of file based on the Linux kernel interface for asynchronous I/O. More... | |
class | linuxaio_queue |
Queue for linuxaio_file(s) More... | |
class | linuxaio_request |
Request for an linuxaio_file. More... | |
class | LOG2 |
class | LOG2< 0 > |
class | LOG2< 1 > |
class | LOG2_floor |
class | LOG2_floor< 0 > |
class | LOG2_floor< 1 > |
class | logger |
class | loser_tree |
class | lru_pager |
Pager with LRU replacement strategy. More... | |
class | malloc_setup |
class | malloc_stats |
Access to some useful malloc statistics. More... | |
class | map |
External associative container (map). Introduction to map container: see STXXL Map (B+-tree) tutorial. Design and Internals of map container: see Map (B+-tree). More... | |
class | matrix |
External matrix container. Introduction to matrix container: see STXXL Matrix tutorial. Design and Internals of matrix container: see Matrix. More... | |
class | matrix_col_major_iterator |
column-major iterator that points to single elements inside a matrix More... | |
class | matrix_iterator |
general iterator type that points to single elements inside a matrix More... | |
struct | matrix_operation_statistic |
struct | matrix_operation_statistic_data |
struct | matrix_operation_statistic_dataset |
class | matrix_row_major_iterator |
row-major iterator that points to single elements inside a matrix More... | |
class | matrix_swappable_block |
Specialized swappable_block that interprets uninitialized as containing zeros. More... | |
class | mem_file |
Implementation of file based on new[] and memcpy. More... | |
class | migrating_stack |
A stack that migrates from internal memory to external when its size exceeds a certain threshold. More... | |
class | mmap_file |
Implementation of memory mapped access file. More... | |
class | mutex |
class | new_alloc |
struct | new_alloc_rebind |
struct | new_alloc_rebind< Type, Type > |
struct | NilCase |
class | noncopyable |
class | normal_stack |
External stack container. Introduction to stack container: see STXXL Stack tutorial. Design and Internals of stack container: see Stack Conservative implementation. Fits best if your access pattern consists of irregularly mixed push'es and pop's. For semantics of the methods see documentation of the STL std::stack . To gain full bandwidth of disks StackConfig::BlocksPerPage must >= number of disks More... | |
struct | offset_allocator |
Allocator functor adaptor. More... | |
class | onoff_switch |
class | parallel_priority_queue |
Parallelized External Memory Priority Queue. More... | |
struct | Plug |
class | prefetch_pool |
Implements dynamically resizable prefetching pool. More... | |
class | priority_queue |
External priority queue data structure Introduction to priority queue container: see STXXL Priority Queue tutorial. Design and Internals of priority queue container: see Priority Queue. More... | |
struct | priority_queue_config |
class | PRIORITY_QUEUE_GENERATOR |
Priority queue type generator. Introduction to priority queue container: see STXXL Priority Queue tutorial. Design and Internals of priority queue container: see Priority Queue. More... | |
class | queue |
External FIFO queue container. Introduction to queue container: see STXXL Queue tutorial Design and Internals of queue container: see Queue. More... | |
struct | random_number |
Uniform [0, N) pseudo-random generator. More... | |
struct | random_number32 |
Fast uniform [0, 2^32) pseudo-random generator with period 2^32, random bits: 32. More... | |
struct | random_number32_r |
Fast uniform [0, 2^32) pseudo-random generator with period 2^32, random bits: 32. Reentrant variant of random_number32 that keeps it's private state. More... | |
struct | random_number64 |
Slow and precise uniform [0, 2^64) pseudo-random generator. More... | |
class | random_number8_r |
Fast uniform [0, 255] pseudo-random generator with period 2^8, random bits: 8 (one byte). More... | |
class | random_pager |
Pager with random replacement strategy. More... | |
struct | random_uniform_fast |
Fast uniform [0.0, 1.0) pseudo-random generator. More... | |
struct | random_uniform_slow |
Slow and precise uniform [0.0, 1.0) pseudo-random generator period: at least 2^48, random bits: at least 31. More... | |
struct | RC |
Randomized cycling disk allocation scheme functor. More... | |
struct | RC_disk |
struct | RC_flash |
class | read_write_pool |
Implements dynamically resizable buffered writing and prefetched reading pool. More... | |
class | request |
Request object encapsulating basic properties like file and offset. More... | |
class | request_interface |
Functional interface of a request. More... | |
class | request_queue |
Interface of a request_queue to which requests can be added and canceled. More... | |
class | request_queue_impl_1q |
Implementation of a local request queue having only one queue for both read and write requests, thus having only one thread. More... | |
class | request_queue_impl_qwqr |
Implementation of a local request queue having two queues, one for read and one for write requests, thus having two threads. This is the default implementation. More... | |
class | request_queue_impl_worker |
Implementation of request queue worker threads. Worker threads can be started by start_thread and stopped with stop_thread. The queue state is checked before termination and updated afterwards. More... | |
class | request_with_state |
Request with completion state. More... | |
class | request_with_waiters |
Request that is aware of threads waiting for it to complete. More... | |
class | resource_error |
class | row_vector |
external row-vector container for matrix multiplication More... | |
struct | run_cursor |
struct | run_cursor2 |
struct | runs2bid_array_adaptor |
struct | runs2bid_array_adaptor2 |
class | scoped_mutex_lock |
Aquire a lock that's valid until the end of scope. More... | |
class | scoped_print_timer |
Simple scoped timer, which takes a text message and prints the duration until the scope is destroyed. More... | |
class | semaphore |
class | sequence |
External sequence or deque container without random access. Introduction to sequence container: see STXXL Sequence tutorial. Design and Internals of sequence container: see Queue. More... | |
class | serving_request |
Request which serves an I/O by calling the synchronous routine of the file. More... | |
class | set_switch_handler |
class | settings |
class | sim_disk_file |
Implementation of disk emulation. More... | |
class | simdisk_geometry |
class | simple_vector |
Simpler non-growing vector without initialization. More... | |
struct | single_disk |
'Single disk' disk allocation scheme functor. More... | |
class | singleton |
class | sorter |
External sorter container. Introduction to sorter container: see STXXL Sorter tutorial. Design and Internals of sorter container: see Sorter. More... | |
struct | SR |
Simple randomized disk allocation scheme functor. More... | |
struct | stack_config_generator |
class | STACK_GENERATOR |
Stack type generator Introduction to stack container: see STXXL Stack tutorial. Design and Internals of stack container: see Stack. More... | |
class | state |
class | stats |
Collects various I/O statistics. More... | |
class | stats_data |
struct | striping |
Striping disk allocation scheme functor. More... | |
class | swap_vector |
Vector that avoids copying of ValueType objects in push_back() (here: swap_back()) and resize() operations. More... | |
class | swappable_block |
Virtualization of a block of data. Holds information for allocating and swapping. To use in cooperation with block_scheduler. More... | |
class | swappable_block_matrix |
External container for a (sub)matrix. Not intended for direct use. More... | |
class | SWITCH |
class | SWITCH< tag, NilCase > |
class | syscall_file |
Implementation of file based on UNIX syscalls. More... | |
class | timer |
Class timer is a simple stop watch timer. More... | |
struct | trigger_entry_iterator |
struct | tuple |
k-Tuple data type More... | |
struct | tuple< T1, Plug, Plug, Plug, Plug > |
Partial specialization for 1- tuple . More... | |
struct | tuple< T1, T2, Plug, Plug, Plug, Plug > |
Partial specialization for 2- tuple (equivalent to std::pair) More... | |
struct | tuple< T1, T2, T3, Plug, Plug, Plug > |
Partial specialization for 3- tuple (triple) More... | |
struct | tuple< T1, T2, T3, T4, Plug, Plug > |
Partial specialization for 4- tuple . More... | |
struct | tuple< T1, T2, T3, T4, T5, Plug > |
Partial specialization for 5- tuple . More... | |
struct | tuple_base |
struct | tuple_greater1st |
struct | tuple_less1st |
struct | tuple_less1st_less2nd |
struct | tuple_less2nd |
struct | tuple_less2nd_less1st |
struct | two2one_dim_array_adapter_base |
class | typed_block |
Block containing elements of fixed length. More... | |
class | ufs_file_base |
Base for UNIX file system implementations. More... | |
class | uint_pair |
Construct an 40-bit or 48-bit unsigned integer stored in five or six bytes. More... | |
class | unordered_map |
An external memory implementation of the STL unordered_map container, which is based on an external memory hash map. More... | |
class | unreachable |
class | vector |
External vector container. Introduction to vector container: see STXXL Vector tutorial. Design and Internals of vector container: see Vector. More... | |
class | vector_bufreader |
Buffered sequential reader from a vector using overlapped I/O. More... | |
class | vector_bufreader_iterator |
Adapter for vector_bufreader to match iterator requirements of C++11 range-based loop construct. More... | |
class | vector_bufreader_reverse |
Buffered sequential reverse reader from a vector using overlapped I/O. More... | |
class | vector_bufwriter |
Buffered sequential writer to a vector using overlapped I/O. More... | |
struct | VECTOR_GENERATOR |
External vector type generator. More... | |
class | vector_iterator |
External vector iterator, model of ext_random_access_iterator concept. More... | |
class | wbtl_file |
Implementation of file based on buffered writes and block remapping via a translation layer. More... | |
class | wfs_file_base |
Base for Windows file system implementations. More... | |
class | wincall_file |
Implementation of file based on Windows native I/O calls. More... | |
class | winner_tree |
The class winner_tree is a binary tournament tree. More... | |
class | write_pool |
Implements dynamically resizable buffered writing pool. More... | |
Typedefs | |
typedef uint64 | external_size_type |
typedef mutex | fastmutex |
typedef short | int16 |
typedef int | int32 |
typedef long long int | int64 |
typedef char | int8 |
typedef choose_int_types < my_pointer_size >::int_type | int_type |
typedef unsigned_type | internal_size_type |
typedef counting_ptr< request > | request_ptr |
A reference counting pointer for request . More... | |
typedef scoped_mutex_lock | scoped_fast_mutex_lock |
typedef settings | SETTINGS |
typedef unsigned short | uint16 |
typedef unsigned int | uint32 |
typedef uint_pair< uint8 > | uint40 |
Construct a 40-bit unsigned integer stored in five bytes. More... | |
typedef uint_pair< uint16 > | uint48 |
Construct a 48-bit unsigned integer stored in six bytes. More... | |
typedef unsigned long long int | uint64 |
typedef unsigned char | uint8 |
typedef choose_int_types < my_pointer_size > ::unsigned_type | unsigned_type |
Enumerations | |
enum | { my_pointer_size = sizeof(void*) } |
enum | pager_type { random, lru } |
enum | stack_behaviour { normal, grow_shrink, grow_shrink2 } |
enum | stack_externality { external, migrating, internal } |
Functions | |
template<typename HighType > | |
class stxxl::uint_pair | __attribute__ ((packed)) |
std::string | add_IEC_binary_multiplier (uint64 number, const char *unit="") |
std::string | add_SI_multiplier (uint64 number, const char *unit="") |
template<size_t Alignment> | |
void * | aligned_alloc (size_t size, size_t meta_info_size=0) |
template<size_t Alignment> | |
void | aligned_dealloc (void *ptr) |
stxxl::int64 | atoi64 (const char *s) |
stxxl::uint64 | atouint64 (const char *s) |
template<class RequestIterator > | |
std::iterator_traits < RequestIterator > ::difference_type | cancel_all (RequestIterator reqs_begin, RequestIterator reqs_end) |
Cancel requests. The specified requests are canceled unless already being processed. However, cancelation cannot be guaranteed. Cancelled requests must still be waited for in order to ensure correct operation. More... | |
int | check_library_version () |
Check for a mismatch between library and headers. More... | |
void | check_sort_settings () |
template<typename TypeKey > | |
static void | classify (TypeKey *a, TypeKey *aEnd, TypeKey *b, int_type *bucket, typename TypeKey::key_type offset, unsigned shift) |
template<typename Type , typename TypeKey , typename KeyExtractor > | |
void | classify_block (Type *begin, Type *end, TypeKey *&out, int_type *bucket, typename KeyExtractor::key_type offset, unsigned shift, KeyExtractor keyobj) |
template<typename Type , typename TypeKey , typename KeyExtractor > | |
void | classify_block (Type *begin, Type *end, TypeKey *&out, int_type *bucket, typename Type::key_type offset, unsigned shift, const int_type K, KeyExtractor keyobj) |
template<class Type > | |
static void | cleanup (Type *b, int_type *bucket, int_type K) |
void | compute_prefetch_schedule (const int_type *first, const int_type *last, int_type *out_first, int_type m, int_type D) |
void | compute_prefetch_schedule (int_type *first, int_type *last, int_type *out_first, int_type m, int_type D) |
template<typename RunType > | |
void | compute_prefetch_schedule (const RunType &input, int_type *out_first, int_type m, int_type D) |
template<typename BidIteratorType > | |
void | compute_prefetch_schedule (BidIteratorType input_begin, BidIteratorType input_end, int_type *out_first, int_type m, int_type D) |
template<typename TypeKey > | |
static void | count (TypeKey *a, TypeKey *aEnd, int_type *bucket, int_type K, typename TypeKey::key_type offset, unsigned shift) |
file * | create_file (const std::string &io_impl, const std::string &filename, int options, int physical_device_id=file::DEFAULT_QUEUE, int disk_allocator_id=file::NO_ALLOCATOR) |
create fileio object from io_impl string and a few parameters More... | |
file * | create_file (disk_config &config, int mode, int disk_allocator_id=file::NO_ALLOCATOR) |
create fileio object from disk_config parameter More... | |
template<typename Integral , typename Integral2 > | |
compat::remove_const< Integral > ::type | div_ceil (Integral n, Integral2 d) |
bool | do_parallel_merge () |
static void | exclusive_prefix_sum (int_type *bucket, int_type K) |
static bool | exist_file (const std::string &path) |
template<typename ExtIterator , typename EqualityComparable > | |
ExtIterator | find (ExtIterator begin, ExtIterator end, const EqualityComparable &value, int_type nbuffers=0) |
External equivalent of std::find, see stxxl::find. More... | |
template<typename ExtIterator , typename UnaryFunction > | |
UnaryFunction | for_each (ExtIterator begin, ExtIterator end, UnaryFunction functor, int_type nbuffers=0) |
External equivalent of std::for_each, see stxxl::for_each. More... | |
template<typename ExtIterator , typename UnaryFunction > | |
UnaryFunction | for_each_m (ExtIterator begin, ExtIterator end, UnaryFunction functor, int_type nbuffers=0) |
External equivalent of std::for_each (mutating), see stxxl::for_each_m (mutating). More... | |
std::string | format_IEC_size (uint64 number) |
Format a byte size using IEC (Ki, Mi, Gi, Ti) suffixes (powers of two). Returns "123 Ki" or similar. More... | |
std::string | format_SI_size (uint64 number) |
Format a byte size using SI (K, M, G, T) suffixes (powers of ten). Returns "123 M" or similar. More... | |
std::string | format_with_SI_IEC_unit_multiplier (uint64 number, const char *unit="", int multiplier=1000) |
template<typename ExtIterator , typename Generator > | |
void | generate (ExtIterator begin, ExtIterator end, Generator generator, int_type nbuffers=0) |
External equivalent of std::generate, see stxxl::generate. More... | |
const char * | get_library_version_string () |
returns "X.Y.Z" version string of library More... | |
const char * | get_library_version_string_long () |
returns longer "X.Y.Z (feature) (version)" string of library More... | |
unsigned | get_next_seed () |
get a seed value for prng initialization, subsequent calls return a sequence of different values More... | |
const char * | get_version_string () |
Return "X.Y.Z" version string (of headers) More... | |
const char * | get_version_string_long () |
Return longer "X.Y.Z (feature) (version)" version string (of headers) More... | |
template<typename IntegerType > | |
unsigned int | ilog2_ceil (const IntegerType &i) |
calculate the log2 ceiling of an integer type (by repeated bit shifts) More... | |
template<typename IntegerType > | |
unsigned int | ilog2_floor (IntegerType i) |
calculate the log2 floor of an integer type (by repeated bit shifts) More... | |
unsigned | initial_seed () |
template<class Type > | |
void | insertion_sort (Type *a, Type *aEnd) |
template<typename RandomAccessIterator , typename StrictWeakOrdering > | |
bool | is_heap (RandomAccessIterator first, RandomAccessIterator last, StrictWeakOrdering comp=std::less< typename std::iterator_traits< RandomAccessIterator >::value_type >()) |
template<class ForwardIterator , class StrictWeakOrdering > | |
bool | is_sorted (ForwardIterator first, ForwardIterator last, StrictWeakOrdering comp) |
template<class ForwardIterator > | |
bool | is_sorted (ForwardIterator first, ForwardIterator last) |
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize> | |
bool | is_sorted (stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > first, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > last) |
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize, typename StrictWeakOrdering > | |
bool | is_sorted (stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > first, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > last, StrictWeakOrdering comp) |
template<typename ExtIterator , typename KeyExtractor > | |
void | ksort (ExtIterator first, ExtIterator last, KeyExtractor keyobj, unsigned_type M) |
Sort records with integer keys, see stxxl::ksort -- Sorting Integer Keys. More... | |
template<typename ExtIterator > | |
void | ksort (ExtIterator first, ExtIterator last, unsigned_type M) |
Sort records with integer keys, see stxxl::ksort -- Sorting Integer Keys. More... | |
template<typename TypeKey > | |
void | l1sort (TypeKey *a, TypeKey *aEnd, TypeKey *b, int_type *bucket, int_type K, typename TypeKey::key_type offset, int shift) |
template<typename Integral > | |
Integral | log2_ceil (Integral i) |
calculate the log2 floor of an integral type using math.h More... | |
template<typename Integral > | |
Integral | log2_floor (Integral i) |
calculate the log2 ceiling of an integral type using math.h More... | |
size_t | longhash1 (uint64 key_) |
template<typename Iterator > | |
trigger_entry_iterator< Iterator > | make_bid_iterator (Iterator iter) |
template<typename BlockType , typename SizeType > | |
element_iterator_traits < BlockType, SizeType > ::element_iterator | make_element_iterator (BlockType *blocks, SizeType offset) |
static HANDLE | open_file_impl (const std::string &filename, int mode) |
template<unsigned BlockSize> | |
bool | operator!= (const BID< BlockSize > &a, const BID< BlockSize > &b) |
template<class Type1 , class Type2 > | |
bool | operator!= (const new_alloc< Type1 > &, const new_alloc< Type2 > &) throw () |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator!= (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator!= (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator< (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<class ValueType , class VectorType > | |
bool | operator< (const deque< ValueType, VectorType > &a, const deque< ValueType, VectorType > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator< (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
std::ostream & | operator<< (std::ostream &o, const matrix_operation_statistic_data &statsd) |
std::ostream & | operator<< (std::ostream &out, const request &req) |
std::ostream & | operator<< (std::ostream &s, const malloc_stats &st) |
Prints current malloc statistics in a convenient way. More... | |
template<unsigned BlockSize> | |
std::ostream & | operator<< (std::ostream &s, const BID< BlockSize > &bid) |
std::ostream & | operator<< (std::ostream &o, const stats_data &s) |
std::ostream & | operator<< (std::ostream &o, const stats &s) |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator<= (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator<= (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
template<unsigned BlockSize> | |
bool | operator== (const BID< BlockSize > &a, const BID< BlockSize > &b) |
template<class Type1 , class Type2 > | |
bool | operator== (const new_alloc< Type1 > &, const new_alloc< Type2 > &) throw () |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator== (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<class ValueType , class VectorType > | |
bool | operator== (const deque< ValueType, VectorType > &a, const deque< ValueType, VectorType > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator== (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator> (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator> (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
template<class KeyType , class DataType , class CompareType , unsigned RawNodeSize, unsigned RawLeafSize, class PDAllocStrategy > | |
bool | operator>= (const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &a, const map< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy > &b) |
template<typename ValueType , unsigned PageSize, typename PagerType , unsigned BlockSize, typename AllocStr , typename SizeType > | |
bool | operator>= (stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &a, stxxl::vector< ValueType, PageSize, PagerType, BlockSize, AllocStr, SizeType > &b) |
unsigned_type | optimal_merge_factor (unsigned_type num_runs, unsigned_type max_concurrent_runs) |
bool | parse_SI_IEC_size (const std::string &str, uint64 &size, char def_unit=0) |
Parse a string like "343KB" or "44 GiB" into the corresponding size in bytes. Returns the number of bytes and sets ok = true if the string could be parsed correctly. If no units indicator is given, use def_unit in k/m/g/t/p (powers of ten) or in K/M/G/T/P (power of two). More... | |
template<class RequestIterator > | |
RequestIterator | poll_any (RequestIterator reqs_begin, RequestIterator reqs_end) |
Polls requests. More... | |
bool | poll_any (request_ptr req_array[], size_t count, size_t &index) |
Polls requests. More... | |
template<class Container > | |
Container::value_type | pop (Container &c) |
template<class Container > | |
Container::value_type | pop_back (Container &c) |
template<class Container > | |
Container::value_type | pop_begin (Container &c) |
template<class Container > | |
Container::value_type | pop_front (Container &c) |
void | print_library_version_mismatch () |
Check and print mismatch between header and library versions. More... | |
void | print_msg (const char *label, const std::string &msg, unsigned flags) |
static void | print_stacktrace (FILE *out=stderr, unsigned int max_frames=64) |
template<typename ExtIterator , typename RandomNumberGenerator , unsigned BlockSize, unsigned PageSize, typename AllocStrategy > | |
void | random_shuffle (ExtIterator first, ExtIterator last, RandomNumberGenerator &rand, unsigned_type M, AllocStrategy AS=STXXL_DEFAULT_ALLOC_STRATEGY()) |
External equivalent of std::random_shuffle. More... | |
template<typename Type , typename AllocStrategy , typename SizeType , typename DiffType , unsigned BlockSize, typename PageType , unsigned PageSize, typename RandomNumberGenerator > | |
void | random_shuffle (stxxl::vector_iterator< Type, AllocStrategy, SizeType, DiffType, BlockSize, PageType, PageSize > first, stxxl::vector_iterator< Type, AllocStrategy, SizeType, DiffType, BlockSize, PageType, PageSize > last, RandomNumberGenerator &rand, unsigned_type M) |
External equivalent of std::random_shuffle (specialization for stxxl::vector) More... | |
template<typename Type , typename AllocStrategy , typename SizeType , typename DiffType , unsigned BlockSize, typename PageType , unsigned PageSize> | |
void | random_shuffle (stxxl::vector_iterator< Type, AllocStrategy, SizeType, DiffType, BlockSize, PageType, PageSize > first, stxxl::vector_iterator< Type, AllocStrategy, SizeType, DiffType, BlockSize, PageType, PageSize > last, unsigned_type M) |
External equivalent of std::random_shuffle (specialization for stxxl::vector) More... | |
int | register_exit_handler (void(*function)(void)) |
template<typename Integral > | |
static Integral | round_up_to_power_of_two (Integral n) |
template<typename Integral > | |
Integral | round_up_to_power_of_two (Integral n, unsigned_type power) |
round n up to next larger multiple of 2^power. example: (48,4) = 64, (48,3) = 48. More... | |
void | run_exit_handlers () |
seed_generator_t & | seed_generator () |
void | set_seed (unsigned seed) |
set the global stxxl seed value More... | |
template<typename ExtIterator , typename StrictWeakOrdering > | |
void | sort (ExtIterator first, ExtIterator last, StrictWeakOrdering cmp, unsigned_type M) |
Sort records comparison-based, see stxxl::sort -- Sorting Comparison-Based. More... | |
template<unsigned BlockSize, class RandomAccessIterator , class CmpType , class AllocStr > | |
void | sort (RandomAccessIterator begin, RandomAccessIterator end, CmpType cmp, unsigned_type MemSize, AllocStr AS) |
Sorts range of any random access iterators externally. More... | |
template<class Type > | |
void | sort2 (Type &a, Type &b) |
template<class Type > | |
void | sort3 (Type &a, Type &b, Type &c) |
template<class Type > | |
void | sort4 (Type &a, Type &b, Type &c, Type &d) |
template<class Type > | |
void | sort5 (Type &a, Type &b, Type &c, Type &d, Type &e) |
unsigned | sort_memory_usage_factor () |
static std::vector< std::string > | split (const std::string &str, const std::string &sep, unsigned int min_fields=0, unsigned int limit_fields=std::numeric_limits< unsigned int >::max()) |
Split a string by given separator string. Returns a vector of strings with at least min_fields and at most limit_fields. More... | |
void | srandom_number32 (unsigned seed=get_next_seed()) |
Set a seed value for random_number32 . More... | |
template<typename ExtIterator > | |
void | stable_ksort (ExtIterator first, ExtIterator last, unsigned_type M) |
Sort records with integer keys. More... | |
template<typename ExtIterator , typename StrictWeakOrdering > | |
void | stl_in_memory_sort (ExtIterator first, ExtIterator last, StrictWeakOrdering cmp) |
template<typename Type > | |
const Type & | STXXL_MAX (const Type &a, const Type &b) |
template<typename Type > | |
const Type & | STXXL_MIN (const Type &a, const Type &b) |
template<typename U > | |
void | STXXL_UNUSED (const U &) |
template<class A > | |
void | swap (counting_ptr< A > &a1, counting_ptr< A > &a2) |
swap enclosed object with another counting pointer (no reference counts need change) More... | |
template<class A > | |
void | swap (const_counting_ptr< A > &a1, const_counting_ptr< A > &a2) |
swap enclosed object with another const_counting pointer (no reference counts need change) More... | |
template<class Type > | |
void | swap_1D_arrays (Type *a, Type *b, unsigned_type size) |
template<class ForwardIterator , class UnaryPredicate > | |
ForwardIterator | swap_remove_if (ForwardIterator first, ForwardIterator last, UnaryPredicate pred) |
Transforms the range [first,last) into a range with all the elements for which pred returns true removed, and returns an iterator to the new end of that range. More... | |
double | timestamp () |
Returns number of seconds since the epoch, high resolution. More... | |
template<typename Type > | |
std::string | to_str (const Type &t) |
Format any ostream-able type into a string. More... | |
int | version_integer () |
return integer version number of the STXXL library More... | |
int | version_major () |
return X if the STXXL library version is X.Y.Z More... | |
int | version_minor () |
return Y if the STXXL library version is X.Y.Z More... | |
int | version_patch () |
return Z if the STXXL library version is X.Y.Z More... | |
template<class RequestIterator > | |
void | wait_all (RequestIterator reqs_begin, RequestIterator reqs_end) |
Collection of functions to track statuses of a number of requests. More... | |
void | wait_all (request_ptr req_array[], size_t count) |
Suspends calling thread until all given requests are completed. More... | |
template<class RequestIterator > | |
RequestIterator | wait_any (RequestIterator reqs_begin, RequestIterator reqs_end) |
Suspends calling thread until any of requests is completed. More... | |
size_t | wait_any (request_ptr req_array[], size_t count) |
Suspends calling thread until any of requests is completed. More... | |
Variables | |
const int | DEFAULT = ~(~0u >> 1) |
static const double | program_start_time_stamp = timestamp() |
unsigned | ran32State = get_next_seed() |
STXXL
library namespace
typedef uint64 stxxl::external_size_type |
typedef mutex stxxl::fastmutex |
typedef short stxxl::int16 |
typedef int stxxl::int32 |
typedef long long int stxxl::int64 |
typedef char stxxl::int8 |
typedef settings stxxl::SETTINGS |
Definition at line 35 of file settings.h.
typedef unsigned short stxxl::uint16 |
typedef unsigned int stxxl::uint32 |
typedef unsigned long long int stxxl::uint64 |
typedef unsigned char stxxl::uint8 |
class stxxl::uint_pair stxxl::__attribute__ | ( | (packed) | ) |
|
inline |
Definition at line 48 of file aligned_alloc.h.
References div_ceil(), free(), malloc(), realloc(), STXXL_ERRMSG, STXXL_VERBOSE2, and STXXL_VERBOSE_ALIGNED_ALLOC.
|
inline |
Definition at line 117 of file aligned_alloc.h.
References free(), and STXXL_VERBOSE_ALIGNED_ALLOC.
|
inline |
|
inline |
|
inline |
Check for a mismatch between library and headers.
Definition at line 76 of file version.h.
References STXXL_VERSION_MAJOR, STXXL_VERSION_MINOR, STXXL_VERSION_PATCH, version_major(), version_minor(), and version_patch().
Referenced by print_library_version_mismatch().
|
inline |
Definition at line 82 of file parallel.h.
References STXXL_ERRMSG.
Referenced by cleanup(), stxxl::stream::basic_runs_creator< Input, CompareType, BlockSize, AllocStr >::compute_result(), stxxl::sort_local::create_runs(), stxxl::stream::basic_runs_creator< stream::use_push< ValueType >, cmp_type, BlockSize, alloc_strategy_type >::sort_run(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::sort_run(), stxxl::priority_queue_local::internal_priority_queue< value_type, std::vector< value_type >, comparator_type >::sort_to(), and stl_in_memory_sort().
|
static |
Definition at line 62 of file intksort.h.
Referenced by stxxl::ksort_local::create_runs(), l1sort(), and stable_ksort().
void stxxl::classify_block | ( | Type * | begin, |
Type * | end, | ||
TypeKey *& | out, | ||
int_type * | bucket, | ||
typename KeyExtractor::key_type | offset, | ||
unsigned | shift, | ||
KeyExtractor | keyobj | ||
) |
Definition at line 329 of file intksort.h.
Referenced by stxxl::ksort_local::create_runs(), and stable_ksort().
void stxxl::classify_block | ( | Type * | begin, |
Type * | end, | ||
TypeKey *& | out, | ||
int_type * | bucket, | ||
typename Type::key_type | offset, | ||
unsigned | shift, | ||
const int_type | K, | ||
KeyExtractor | keyobj | ||
) |
Definition at line 343 of file intksort.h.
References STXXL_UNUSED().
|
static |
Definition at line 261 of file intksort.h.
References check_sort_settings(), insertion_sort(), sort(), sort2(), sort3(), sort4(), and sort5().
Referenced by l1sort().
void stxxl::compute_prefetch_schedule | ( | const int_type * | first, |
const int_type * | last, | ||
int_type * | out_first, | ||
int_type | m, | ||
int_type | D | ||
) |
Definition at line 168 of file async_schedule.cpp.
References _STXXL_FORCE_SEQUENTIAL, stxxl::async_schedule_local::simulate_async_write(), STXXL_UNUSED(), and STXXL_VERBOSE1.
Referenced by stxxl::buf_istream< BlockType, BidIteratorType >::buf_istream(), stxxl::buf_istream_reverse< BlockType, BidIteratorType >::buf_istream_reverse(), compute_prefetch_schedule(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::initialize(), stxxl::sort_local::merge_runs(), and stxxl::ksort_local::merge_runs().
|
inline |
Definition at line 35 of file async_schedule.h.
References compute_prefetch_schedule().
void stxxl::compute_prefetch_schedule | ( | const RunType & | input, |
int_type * | out_first, | ||
int_type | m, | ||
int_type | D | ||
) |
Definition at line 46 of file async_schedule.h.
References stxxl::simple_vector< ValueType >::begin(), compute_prefetch_schedule(), and stxxl::simple_vector< ValueType >::end().
void stxxl::compute_prefetch_schedule | ( | BidIteratorType | input_begin, |
BidIteratorType | input_end, | ||
int_type * | out_first, | ||
int_type | m, | ||
int_type | D | ||
) |
Definition at line 60 of file async_schedule.h.
References stxxl::simple_vector< ValueType >::begin(), compute_prefetch_schedule(), and stxxl::simple_vector< ValueType >::end().
|
static |
Definition at line 26 of file intksort.h.
Referenced by stxxl::sort_helper::count_elements_less_equal(), l1sort(), and poll_any().
file * stxxl::create_file | ( | const std::string & | io_impl, |
const std::string & | filename, | ||
int | options, | ||
int | physical_device_id = file::DEFAULT_QUEUE , |
||
int | disk_allocator_id = file::NO_ALLOCATOR |
||
) |
create fileio object from io_impl string and a few parameters
Definition at line 27 of file create_file.cpp.
References stxxl::disk_config::direct, and stxxl::disk_config::queue.
Referenced by stxxl::block_manager::block_manager().
file * stxxl::create_file | ( | disk_config & | config, |
int | mode, | ||
int | disk_allocator_id = file::NO_ALLOCATOR |
||
) |
create fileio object from disk_config parameter
Definition at line 42 of file create_file.cpp.
References stxxl::disk_config::autogrow, stxxl::disk_config::delete_on_exit, stxxl::disk_config::device_id, stxxl::disk_config::direct, stxxl::disk_config::io_impl, stxxl::ufs_file_base::is_device(), stxxl::ufs_file_base::lock(), stxxl::wfs_file_base::lock(), stxxl::mem_file::lock(), stxxl::fileperblock_file< base_file_type >::lock(), stxxl::wbtl_file::lock(), stxxl::disk_config::path, stxxl::disk_config::queue, stxxl::disk_config::queue_length, stxxl::disk_config::raw_device, stxxl::disk_config::size, stxxl::ufs_file_base::size(), STXXL_THROW, stxxl::ufs_file_base::unlink(), and stxxl::disk_config::unlink_on_open.
|
inline |
Definition at line 199 of file utils.h.
Referenced by stxxl::vector< ValueType >::_resize(), stxxl::vector< ValueType >::_resize_shrink_capacity(), aligned_alloc(), stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction(), stxxl::stream::basic_runs_creator< Input, CompareType, BlockSize, AllocStr >::compute_result(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::compute_result(), stxxl::ppq_local::external_array< ValueType, BlockSize, AllocStrategy >::int_memory(), stxxl::ksort_local::ksort_blocks(), stxxl::stream::basic_runs_merger< RunsType, CompareType, AllocStr >::merge_recursively(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::push(), stxxl::vector< ValueType >::reserve(), stxxl::vector< ValueType >::set_content(), stxxl::matrix< ValueType, BlockSideLength >::set_zero(), stxxl::sort_local::sort_blocks(), and stable_ksort().
|
inline |
Definition at line 102 of file parallel.h.
References stxxl::settings< MustBeInt >::native_merge.
Referenced by stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::fill_buffer_block(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::initialize(), and stxxl::sort_local::merge_runs().
|
inlinestatic |
Definition at line 48 of file intksort.h.
Referenced by stxxl::ksort_local::create_runs(), l1sort(), and stable_ksort().
|
inlinestatic |
Definition at line 35 of file config.cpp.
Referenced by stxxl::config::find_config().
std::string stxxl::format_IEC_size | ( | uint64 | number | ) |
Format a byte size using IEC (Ki, Mi, Gi, Ti) suffixes (powers of two). Returns "123 Ki" or similar.
Definition at line 111 of file utils.cpp.
Referenced by stxxl::custom_stats_counter< ValueType >::as_memory_amount(), and stxxl::scoped_print_timer::~scoped_print_timer().
std::string stxxl::format_SI_size | ( | uint64 | number | ) |
const char * stxxl::get_library_version_string | ( | ) |
returns "X.Y.Z" version string of library
Definition at line 40 of file version.cpp.
References get_version_string().
Referenced by print_library_version_mismatch().
const char * stxxl::get_library_version_string_long | ( | ) |
returns longer "X.Y.Z (feature) (version)" string of library
Definition at line 45 of file version.cpp.
References get_version_string_long().
unsigned stxxl::get_next_seed | ( | ) |
get a seed value for prng initialization, subsequent calls return a sequence of different values
Definition at line 73 of file seed.cpp.
References seed_generator().
|
inline |
Return "X.Y.Z" version string (of headers)
Definition at line 32 of file version.h.
References STXXL_VERSION_STRING.
Referenced by get_library_version_string().
|
inline |
Return longer "X.Y.Z (feature) (version)" version string (of headers)
Definition at line 38 of file version.h.
References stringify, STXXL_VERSION_GIT_SHA1, STXXL_VERSION_PHASE, and STXXL_VERSION_STRING.
Referenced by stxxl::config::config(), and get_library_version_string_long().
unsigned int stxxl::ilog2_ceil | ( | const IntegerType & | i | ) |
calculate the log2 ceiling of an integer type (by repeated bit shifts)
Definition at line 188 of file utils.h.
References ilog2_floor().
Referenced by stxxl::matrix_local::matrix_operations< ValueType, BlockSideLength >::choose_level_for_feedable_sw(), stxxl::ksort_local::create_runs(), stxxl::loser_tree< RunCursorType, RunCursorCmpType >::loser_tree(), stxxl::matrix_local::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add(), stxxl::matrix_local::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add_block_grained(), stxxl::winner_tree< stxxl::parallel_priority_queue::external_min_comparator >::resize(), stable_ksort(), and stxxl::winner_tree< stxxl::parallel_priority_queue::external_min_comparator >::winner_tree().
unsigned int stxxl::ilog2_floor | ( | IntegerType | i | ) |
calculate the log2 floor of an integer type (by repeated bit shifts)
Definition at line 178 of file utils.h.
Referenced by stxxl::ksort_local::create_runs(), stxxl::winner_tree< stxxl::parallel_priority_queue::external_min_comparator >::double_num_slots(), ilog2_ceil(), and stable_ksort().
|
inline |
Definition at line 48 of file seed.cpp.
Referenced by seed_generator().
|
inline |
Definition at line 228 of file intksort.h.
Referenced by cleanup().
bool stxxl::is_heap | ( | RandomAccessIterator | first, |
RandomAccessIterator | last, | ||
StrictWeakOrdering | comp = std::less<typename std::iterator_traits<RandomAccessIterator> ::value_type>() |
||
) |
Definition at line 23 of file is_heap.h.
Referenced by stxxl::parallel_priority_queue< ValueType, CompareType, AllocStrategy, BlockSize, DefaultMemSize, MaxItems >::check_invariants().
bool stxxl::is_sorted | ( | ForwardIterator | first, |
ForwardIterator | last, | ||
StrictWeakOrdering | comp | ||
) |
Definition at line 24 of file is_sorted.h.
Referenced by stxxl::ksort_local::check_ksorted_runs(), stxxl::sort_local::check_sorted_runs(), stxxl::stream::check_sorted_runs(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::fill_buffer_block(), is_sorted(), ksort(), stxxl::sort_local::merge_runs(), stxxl::parallel::multiway_merge_3_combined(), stxxl::parallel::multiway_merge_4_combined(), stxxl::parallel::multiway_merge_loser_tree_combined(), stxxl::parallel::multiway_merge_loser_tree_sentinel(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::operator++(), stxxl::priority_queue< ConfigType >::refill_delete_buffer(), stxxl::priority_queue< ConfigType >::refill_group_buffer(), stxxl::parallel::sequential_multiway_merge(), and sort().
bool stxxl::is_sorted | ( | ForwardIterator | first, |
ForwardIterator | last | ||
) |
Definition at line 40 of file is_sorted.h.
References is_sorted().
void stxxl::l1sort | ( | TypeKey * | a, |
TypeKey * | aEnd, | ||
TypeKey * | b, | ||
int_type * | bucket, | ||
int_type | K, | ||
typename TypeKey::key_type | offset, | ||
int | shift | ||
) |
Definition at line 317 of file intksort.h.
References classify(), cleanup(), count(), and exclusive_prefix_sum().
Referenced by stxxl::ksort_local::create_runs(), and stable_ksort().
|
inline |
|
inline |
|
inline |
Definition at line 230 of file utils.h.
Referenced by stxxl::hash_map::iterator_map< HashMap >::hasher::operator()(), stxxl::btree::node_cache< NodeType, BTreeType >::bid_hash::operator()(), and stxxl::hash_map::block_cache< BlockType >::bid_hash::operator()().
|
inline |
Definition at line 239 of file adaptor.h.
Referenced by stxxl::stream::basic_runs_creator< Input, CompareType, BlockSize, AllocStr >::compute_result(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::compute_result(), stxxl::stream::sorted_runs< TriggerEntryType, CompareType >::deallocate_blocks(), stxxl::stream::runs_creator< from_sorted_sequences< ValueType >, CompareType, BlockSize, AllocStr >::finish(), stxxl::ksort_local::ksort_blocks(), stxxl::stream::basic_runs_merger< RunsType, CompareType, AllocStr >::merge_recursively(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::push(), stxxl::stream::runs_creator< from_sorted_sequences< ValueType >, CompareType, BlockSize, AllocStr >::push(), and stxxl::sort_local::sort_blocks().
|
static |
Definition at line 32 of file wfs_file_base.cpp.
References STXXL_ERRMSG, STXXL_MSG, and STXXL_THROW_WIN_LASTERROR.
Referenced by stxxl::wfs_file_base::set_size(), and stxxl::wfs_file_base::wfs_file_base().
|
inline |
Definition at line 134 of file new_alloc.h.
|
inline |
Prints current malloc statistics in a convenient way.
Definition at line 119 of file malloc.h.
References STXXL_UNUSED().
|
inline |
Definition at line 127 of file new_alloc.h.
|
inline |
Definition at line 40 of file sort_base.h.
Referenced by stxxl::ksort_local::ksort_blocks(), stxxl::stream::basic_runs_merger< RunsType, CompareType, AllocStr >::merge_recursively(), and stxxl::sort_local::sort_blocks().
bool stxxl::parse_SI_IEC_size | ( | const std::string & | str, |
uint64 & | size, | ||
char | def_unit = 0 |
||
) |
Parse a string like "343KB" or "44 GiB" into the corresponding size in bytes. Returns the number of bytes and sets ok = true if the string could be parsed correctly. If no units indicator is given, use def_unit in k/m/g/t/p (powers of ten) or in K/M/G/T/P (power of two).
Parse a string like "343KB" or " 44 GiB " into the corresponding size in bytes.
Definition at line 24 of file utils.cpp.
Referenced by stxxl::disk_config::parse_line(), stxxl::cmdline_parser::argument_bytes32::process(), and stxxl::cmdline_parser::argument_bytes64::process().
|
inline |
|
inline |
Definition at line 295 of file utils.h.
Referenced by stxxl::deque< ValueType, VectorType >::resize().
|
inline |
Definition at line 303 of file utils.h.
Referenced by stxxl::block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::evictable_blocks_pop(), stxxl::block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::schedule_next_operations(), and stxxl::block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::~block_scheduler_algorithm_offline_lru_prefetching().
|
inline |
|
inline |
Check and print mismatch between header and library versions.
Definition at line 88 of file version.h.
References check_library_version(), get_library_version_string(), STXXL_ERRMSG, and STXXL_VERSION_STRING.
Referenced by stxxl::config::config().
void stxxl::print_msg | ( | const char * | label, |
const std::string & | msg, | ||
unsigned | flags | ||
) |
Definition at line 33 of file verbose.cpp.
References _STXXL_PRNT_ADDNEWLINE, _STXXL_PRNT_CERR, _STXXL_PRNT_COUT, _STXXL_PRNT_ERRLOG, _STXXL_PRNT_LOG, _STXXL_PRNT_THREAD_ID, _STXXL_PRNT_TIMESTAMP, stxxl::logger::errlog_stream(), stxxl::logger::log_stream(), program_start_time_stamp, STXXL_THREAD_ID, and timestamp().
|
inlinestatic |
Print a demangled stack backtrace of the caller function to FILE* out.
Definition at line 27 of file stacktrace.h.
int stxxl::register_exit_handler | ( | void(*)(void) | function | ) |
Definition at line 28 of file exithandler.cpp.
Referenced by stxxl::singleton< INSTANCE, destroy_on_exit >::create_instance().
|
inlinestatic |
Definition at line 255 of file utils.h.
Referenced by stxxl::parallel::LoserTreeReference< T, Comparator >::LoserTreeReference(), stxxl::matrix_local::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add(), stxxl::matrix_local::matrix_operations< ValueType, BlockSideLength >::multi_level_strassen_winograd_multiply_and_add_block_grained(), stxxl::parallel::multiseq_partition(), and stxxl::parallel::multiseq_selection().
|
inline |
void stxxl::run_exit_handlers | ( | ) |
Definition at line 34 of file exithandler.cpp.
seed_generator_t& stxxl::seed_generator | ( | ) |
Definition at line 42 of file seed.cpp.
References initial_seed().
Referenced by get_next_seed(), and set_seed().
void stxxl::set_seed | ( | unsigned | seed | ) |
set the global stxxl seed value
Definition at line 67 of file seed.cpp.
References seed_generator().
|
inline |
Definition at line 76 of file intksort.h.
|
inline |
Definition at line 84 of file intksort.h.
Referenced by cleanup().
|
inline |
|
inline |
|
inline |
Definition at line 73 of file parallel.h.
Referenced by stxxl::stream::basic_runs_creator< stream::use_push< ValueType >, cmp_type, BlockSize, alloc_strategy_type >::basic_runs_creator(), stxxl::stream::runs_creator< use_push< ValueType >, CompareType, BlockSize, AllocStr >::runs_creator(), stxxl::stream::runs_creator< from_sorted_sequences< ValueType >, CompareType, BlockSize, AllocStr >::runs_creator(), and sort().
|
inlinestatic |
Split a string by given separator string. Returns a vector of strings with at least min_fields and at most limit_fields.
Definition at line 56 of file utils.h.
Referenced by stxxl::parallel::equally_split(), stxxl::btree::normal_leaf< KeyType, DataType, KeyCmp, LogNElem, BTreeType >::insert(), stxxl::disk_config::parse_fileio(), stxxl::disk_config::parse_line(), stxxl::parallel::prepare_unguarded(), and stxxl::parallel::prepare_unguarded_sentinel().
void stxxl::stl_in_memory_sort | ( | ExtIterator | first, |
ExtIterator | last, | ||
StrictWeakOrdering | cmp | ||
) |
Definition at line 29 of file inmemsort.h.
References stxxl::simple_vector< ValueType >::begin(), check_sort_settings(), make_element_iterator(), sort(), STXXL_VERBOSE, and wait_all().
|
inline |
Definition at line 153 of file utils.h.
Referenced by stxxl::buf_istream< BlockType, BidIteratorType >::buf_istream(), stxxl::buf_istream_reverse< BlockType, BidIteratorType >::buf_istream_reverse(), stxxl::cmdline_parser::calc_opt_max(), stxxl::cmdline_parser::calc_param_max(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::initialize(), stxxl::sort_local::merge_runs(), stxxl::ksort_local::merge_runs(), stxxl::block_manager::new_blocks_int(), stxxl::cmdline_parser::print_result(), stxxl::grow_shrink_stack2< StackConfig >::push(), stxxl::grow_shrink_stack2< StackConfig >::rehint(), stxxl::grow_shrink_stack2< StackConfig >::set_prefetch_aggr(), stable_ksort(), and stxxl::grow_shrink_stack2< StackConfig >::~grow_shrink_stack2().
|
inline |
Definition at line 146 of file utils.h.
Referenced by stxxl::ksort_local::check_ksorted_runs(), stxxl::sort_local::check_sorted_runs(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::fill_buffer_block(), stxxl::stream::basic_runs_merger< typename runs_creator_type::sorted_runs_type, cmp_type, alloc_strategy_type >::initialize(), stxxl::ksort_local::ksort_blocks(), stxxl::stream::basic_runs_merger< RunsType, CompareType, AllocStr >::merge_recursively(), stxxl::sort_local::merge_runs(), stxxl::vector< ValueType >::read_page(), stxxl::simple_vector< BID< BlockSize > >::resize(), stxxl::sort_local::sort_blocks(), and stxxl::vector< ValueType >::write_page().
|
inline |
Definition at line 22 of file unused.h.
Referenced by classify_block(), compute_prefetch_schedule(), stxxl::mem_file::discard(), stxxl::fileperblock_file< base_file_type >::discard(), stxxl::file::discard(), stxxl::fileperblock_file< base_file_type >::export_files(), stxxl::file::export_files(), operator<<(), random_shuffle(), stxxl::request_queue_impl_1q::request_queue_impl_1q(), stxxl::request_queue_impl_qwqr::request_queue_impl_qwqr(), stxxl::request_queue::set_priority_op(), stxxl::request_queue_impl_1q::set_priority_op(), stxxl::request_queue_impl_qwqr::set_priority_op(), sort(), stxxl::stats::scoped_read_write_timer::start(), stxxl::stats::scoped_write_timer::start(), and stxxl::stats::scoped_read_timer::start().
|
inline |
Definition at line 246 of file utils.h.
Referenced by stxxl::priority_queue_local::loser_tree< self_type, CompareType, MaxArity >::swap(), and stxxl::priority_queue_local::int_merger< value_type, comparator_type, IntKMAX >::swap().
std::string stxxl::to_str | ( | const Type & | t | ) |
Format any ostream-able type into a string.
Definition at line 97 of file utils.h.
Referenced by stxxl::disk_config::parse_line().
int stxxl::version_integer | ( | ) |
return integer version number of the STXXL library
Definition at line 35 of file version.cpp.
References STXXL_VERSION_INTEGER.
int stxxl::version_major | ( | ) |
return X if the STXXL library version is X.Y.Z
Definition at line 20 of file version.cpp.
References STXXL_VERSION_MAJOR.
Referenced by check_library_version().
int stxxl::version_minor | ( | ) |
return Y if the STXXL library version is X.Y.Z
Definition at line 25 of file version.cpp.
References STXXL_VERSION_MINOR.
Referenced by check_library_version().
int stxxl::version_patch | ( | ) |
return Z if the STXXL library version is X.Y.Z
Definition at line 30 of file version.cpp.
References STXXL_VERSION_PATCH.
Referenced by check_library_version().
|
static |
Definition at line 31 of file verbose.cpp.
Referenced by print_msg().
unsigned stxxl::ran32State = get_next_seed() |
Definition at line 20 of file rand.cpp.
Referenced by stxxl::random_number32::operator()(), and srandom_number32().