|
STXXL
1.4.0
|
Group of classes which help controlling external memory space, managing disks, and allocating and deallocating blocks of external storage. More...
Collaboration diagram for Block Management Layer:Modules | |
| Allocation Functors | |
| Standard allocation strategies encapsulated in functors. | |
| Block Scheduling Sublayer | |
| Group of classes which help in scheduling sequences of read and write requests via prefetching and buffered writing. | |
| Internals | |
| Internals and support classes. | |
Namespaces | |
| stxxl::helper | |
| stxxl::mng_local | |
| Block Manager Internals. | |
Classes | |
| class | stxxl::array_of_sequences_iterator< array_type, value_type, modulo > |
| struct | stxxl::BID< SIZE > |
| Block identifier class. More... | |
| struct | stxxl::BID< 0 > |
| Specialization of block identifier class (BID) for variable size block size. More... | |
| class | stxxl::BIDArray< BLK_SIZE > |
| class | stxxl::block_manager |
| Block manager class. More... | |
| class | stxxl::blocked_index< modulo > |
| class | stxxl::config |
| Access point to disks properties. Since 1.4.0: no config files are read automatically! More... | |
| class | stxxl::disk_allocator |
| class | stxxl::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... | |
| struct | stxxl::element_iterator_traits< BlockType > |
| struct | stxxl::two2one_dim_array_adapter_base< one_dim_array_type, data_type, pos_type > |
| class | stxxl::typed_block< RawSize, Type, NRef, MetaInfoType > |
| Block containing elements of fixed length. More... | |
Macros | |
| #define | BLOCK_ADAPTOR_OPERATORS(two_to_one_dim_array_adaptor_base) |
| #define | STXXL_ADAPTOR_ARITHMETICS(pos) |
| #define | STXXL_DEFAULT_BLOCK_SIZE(type) (2 * 1024 * 1024) |
Functions | |
| template<unsigned BLK_SIZE> | |
| void | stxxl::block_manager::delete_block (const BID< BLK_SIZE > &bid) |
| Deallocates a block. More... | |
| template<class BIDIteratorClass > | |
| void | stxxl::block_manager::delete_blocks (const BIDIteratorClass &bidbegin, const BIDIteratorClass &bidend) |
| Deallocates blocks. More... | |
| template<typename BlockType > | |
| element_iterator_traits < BlockType > ::element_iterator | stxxl::make_element_iterator (BlockType *blocks, unsigned_type offset) |
| template<class BIDType , class DiskAssignFunctor , class OutputIterator > | |
| void | stxxl::block_manager::new_blocks_int (const unsigned_type nblocks, const DiskAssignFunctor &functor, unsigned_type offset, OutputIterator out) |
| template<unsigned blk_sz> | |
| bool | stxxl::operator!= (const BID< blk_sz > &a, const BID< blk_sz > &b) |
| template<unsigned blk_sz> | |
| std::ostream & | stxxl::operator<< (std::ostream &s, const BID< blk_sz > &bid) |
| template<unsigned blk_sz> | |
| bool | stxxl::operator== (const BID< blk_sz > &a, const BID< blk_sz > &b) |
Group of classes which help controlling external memory space, managing disks, and allocating and deallocating blocks of external storage.
| #define BLOCK_ADAPTOR_OPERATORS | ( | two_to_one_dim_array_adaptor_base | ) |
| #define STXXL_DEFAULT_BLOCK_SIZE | ( | type | ) | (2 * 1024 * 1024) |
Definition at line 270 of file block_manager.h.
Referenced by stxxl::deque< ValueType, VectorType >::clear().
| void stxxl::block_manager::delete_block | ( | const BID< BLK_SIZE > & | bid | ) |
Deallocates a block.
| bid | block identifier |
Definition at line 240 of file block_manager.h.
References FMT_BID, stxxl::BID< SIZE >::is_managed(), stxxl::BID< SIZE >::offset, stxxl::BID< SIZE >::size, stxxl::BID< SIZE >::storage, and STXXL_VERBOSE_BLOCK_LIFE_CYCLE.
Referenced by stxxl::sort_local::create_runs(), stxxl::ksort_local::create_runs(), stxxl::ksort(), stxxl::sort_local::merge_runs(), stxxl::ksort_local::merge_runs(), and stxxl::sort().
| void stxxl::block_manager::delete_blocks | ( | const BIDIteratorClass & | bidbegin, |
| const BIDIteratorClass & | bidend | ||
| ) |
Deallocates blocks.
Deallocates blocks in the range [ bidbegin, bidend)
| bidbegin | iterator object of bid_iterator concept |
| bidend | iterator object of bid_iterator concept |
Definition at line 258 of file block_manager.h.
Referenced by stxxl::stream::basic_runs_creator< Input_, CompareType_, BlockSize_, AllocStr_ >::compute_result(), stxxl::stream::sorted_runs< TriggerEntryType, CompareType >::deallocate_blocks(), and stxxl::priority_queue_local::ext_merger< BlockType_, Cmp_, Arity_, AllocStr_ >::sequence_state::~sequence_state().
|
inline |
Definition at line 631 of file adaptor.h.
Referenced by stxxl::ksort_local::check_ksorted_runs(), stxxl::sort_local::check_sorted_runs(), stxxl::stream::check_sorted_runs(), stxxl::sort_local::create_runs(), stxxl::stream::basic_runs_creator< stream::use_push< ValueType >, cmp_type, BlockSize_, alloc_strategy_type >::fetch(), stxxl::stream::basic_runs_creator< stream::use_push< ValueType >, cmp_type, BlockSize_, alloc_strategy_type >::fill_with_max_value(), stxxl::stream::runs_creator< use_push< ValueType_ >, CompareType_, BlockSize_, AllocStr_ >::fill_with_max_value(), 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(), and stxxl::stl_in_memory_sort().
| void stxxl::block_manager::new_blocks_int | ( | const unsigned_type | nblocks, |
| const DiskAssignFunctor & | functor, | ||
| unsigned_type | offset, | ||
| OutputIterator | out | ||
| ) |
Definition at line 189 of file block_manager.h.
References FMT_BID, stxxl::simple_vector< ValueType >::memzero(), stxxl::simple_vector< ValueType >::resize(), stxxl::STXXL_MAX(), and STXXL_VERBOSE_BLOCK_LIFE_CYCLE.
| bool stxxl::operator!= | ( | const BID< blk_sz > & | a, |
| const BID< blk_sz > & | b | ||
| ) |
Definition at line 120 of file bid.h.
References stxxl::BID< SIZE >::offset, stxxl::BID< SIZE >::size, and stxxl::BID< SIZE >::storage.
| std::ostream& stxxl::operator<< | ( | std::ostream & | s, |
| const BID< blk_sz > & | bid | ||
| ) |
| bool stxxl::operator== | ( | const BID< blk_sz > & | a, |
| const BID< blk_sz > & | b | ||
| ) |
Definition at line 114 of file bid.h.
References stxxl::BID< SIZE >::offset, stxxl::BID< SIZE >::size, and stxxl::BID< SIZE >::storage.