Thrill
0.1
|
Block scheduling algorithm caching via the longest forward distance policy (offline).
Definition at line 908 of file block_scheduler.hpp.
#include <block_scheduler.hpp>
Classes | |
class | priority |
Protected Member Functions | |
internal_block_type * | get_free_internal_block () |
void | init (block_scheduler_algorithm_type *old_algo) |
void | return_free_internal_block (internal_block_type *iblock) |
Protected Member Functions inherited from block_scheduler_algorithm< SwappableBlockType > | |
block_scheduler_algorithm * | get_algorithm_from_block_scheduler () |
internal_block_type * | get_free_internal_block_from_block_scheduler () |
void | return_free_internal_block_to_block_scheduler (internal_block_type *iblock) |
Return an internal_block to the block_scheduler. More... | |
Protected Attributes | |
addressable_priority_queue< swappable_block_identifier_type, priority > | evictable_blocks |
Holds swappable blocks, whose internal block can be freed, i.e. that are internal but unacquired. More... | |
std::deque< std::pair< bool, time_type > > | next_use |
Stores for the sequence of releases extracted from the prediction_sequence: (true, timestamp of the blocks next acquire) if it is acquired next (false, 0) if it is deinitialized next (false, 1) if it is not accessed any more (false, 2) if it is extracted next (false, 3) if it is initialized next. More... | |
Protected Attributes inherited from block_scheduler_algorithm< SwappableBlockType > | |
prediction_sequence_type | prediction_sequence |
std::vector< SwappableBlockType > & | swappable_blocks |
Additional Inherited Members | |
Public Attributes inherited from block_scheduler_algorithm< SwappableBlockType > | |
block_scheduler_type & | bs |
|
protected |
Definition at line 912 of file block_scheduler.hpp.
|
protected |
Definition at line 911 of file block_scheduler.hpp.
|
protected |
Definition at line 914 of file block_scheduler.hpp.
|
protected |
Definition at line 913 of file block_scheduler.hpp.
|
protected |
Definition at line 917 of file block_scheduler.hpp.
|
protected |
Definition at line 915 of file block_scheduler.hpp.
|
protected |
Definition at line 916 of file block_scheduler.hpp.
|
inlineexplicit |
Definition at line 1025 of file block_scheduler.hpp.
|
inlineexplicit |
Definition at line 1030 of file block_scheduler.hpp.
|
inlinevirtual |
Definition at line 1034 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::empty(), addressable_priority_queue< KeyType, PriorityType, Cmp >::pop(), and TLX_LOG1.
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1052 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::erase().
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1120 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::erase().
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1046 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::empty().
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1049 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::pop().
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1135 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::erase().
|
inlineprotected |
Definition at line 968 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::empty(), and addressable_priority_queue< KeyType, PriorityType, Cmp >::pop().
|
inlineprotected |
Definition at line 981 of file block_scheduler.hpp.
References block_scheduler_algorithm< SwappableBlockType >::get_prediction_sequence(), and addressable_priority_queue< KeyType, PriorityType, Cmp >::insert().
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1129 of file block_scheduler.hpp.
|
inlinevirtual |
Implements block_scheduler_algorithm< SwappableBlockType >.
Definition at line 1090 of file block_scheduler.hpp.
References addressable_priority_queue< KeyType, PriorityType, Cmp >::insert(), block_scheduler_algorithm< SwappableBlockType >::release(), block_scheduler_algorithm_online_lru< SwappableBlockType >::release(), and TLX_LOG1.
|
inlineprotected |
Definition at line 978 of file block_scheduler.hpp.
|
protected |
Holds swappable blocks, whose internal block can be freed, i.e. that are internal but unacquired.
Definition at line 957 of file block_scheduler.hpp.
|
protected |
Stores for the sequence of releases extracted from the prediction_sequence: (true, timestamp of the blocks next acquire) if it is acquired next (false, 0) if it is deinitialized next (false, 1) if it is not accessed any more (false, 2) if it is extracted next (false, 3) if it is initialized next.
Definition at line 966 of file block_scheduler.hpp.