STXXL v1.2.0 Release Notes
Release Date: 2015-06-15 // almost 9 years ago-
๐ Version 1.2.0 (05 July 2008)
- made the block management layer thread-safe
- made all size_types unsigned
- stxxl::priority_queue
- fixed a rare assertion
- fixed a race condition by using proper block hinting
- insert_queue: replaced std::priority_queue with a special
implementation internal_priority_queue that allows for
fast exporting of all elements - even more bugs and inefficiencies fixed
- significant speed improvements
- ๐ random number generators are now all seedable,
should allow redoing identical program runs for debugging purposes - stxxl::noncopyable, inspired by boost::noncopyable: inheriting from this
class forbids copying of objects when this is undesirable- used in all classes that had implemented their own variants previously
- stxxl::vector, all sorting functions: replaced two2one_dim_array_row_adapter
with array_of_sequences_iterator which is much faster, especially
if blocks have padding - if required, verify that the sentinels satisfy a strict weak ordering
- stxxl::vector: several operations sped up, several more implemented
- ๐ fix existing allocation strategies and add experimental support for
distinguishing between regular disks and flash devices - stxxl::stable_ksort
- add experimental warning, some parts are not yet implemented
- fixed an off-by-one error in memory allocation vs. usage
- btree: fuse last two nodes/leaves if possible, rebalancing can fail
- โ btree tests: ensure uniqueness of test data if required
- โฌ๏ธ reduce function call overhead of stxxl::debugmon if it's not activated
- โ add public interface headers: stxxl/types, stxxl/aligned_alloc
- โ add compatibility wrappers for standard extensions
hash_map, hash_set, auto_ptr - ๐ MCSTL is only supported with g++ 4.2 and icpc 10.x
- ๐ lots of small bugfixes
- โ made the TPIE, BDB and LEDA_SM tests compile again
- general code cleanup
- fixed most compiler warnings
- elimination of duplicate and unused code
- cleaned up and sanitized debugging macros
- no more 'using namespace std' and 'using namespace stxxl'
- fixed ambiguities noted by g++ 4.3
- unify the #include directives
- add/unify/cleanup copyright headers
- general code reformatting (uncrustify)
- โ add support for new compiler releases
- ๐ portability fixes for different platforms
- ๐ implemented file truncation on windows platforms
- ๐ท build system
- lots of small modifications
- now only requires GNU make 3.78 or later
- check whether STXXL_ROOT has been set correctly and if unset, try
0๏ธโฃ autoconfiguration by creating make.settings.local with defaults - improved and simplified boost support for posix systems
- Mac OS X support
- ๐ changed all tests so that they behave well in their default parameters,
system assumptions and return values and can be run from a script- use aligned_alloc/aligned_dealloc appropriately
- โ added some more test programs
- add misc/run_all_tests that runs all tests with sensible parameters,
optionally via valgrind - โ
checked all tests with valgrind
- fixed use of uninitialized memory when writing to normal files
- (optionally) initialize typed_blocks and payload data in test structs
to suppress (most) uninitialized write errors when writing to disk files - fix mismatched new/delete in mcstl
- โก๏ธ update install and usage instructions
- ๐ spell checked sources and documentation