STXXL v1.4.1 Release Notes
Release Date: 2015-06-15 // over 8 years ago-
๐ Version 1.4.1 (29 October 2014)
- ๐ support kernel based asynchronous I/O on Linux (new file type "linuxaio"),
which exploits Native Command Queuing (NCQ) if available.
disable/enable with the define STXXL_FILE_LINUXAIO 0/1 via cmake - adding new disk_config entry device_id, which specifies the physical device
id of the "disk" used during prefetching sequence calculations. This used to
๐ง be identical with the queue id, however, for linuxaio there is only one
0๏ธโฃ queue; thus the distinction had to be made. In a default config, no changes
are necessary, as the device_id parameter is automatically enumerated. - โ adding stxxl::binary_buffer which can be used for compact serialization and
reading via a stxxl::binary_reader cursor interface. - stxxl::unordered_map is a hash map, backed by external memory. It probably
only works well when lots of internal memory is used to buffer access to a
relatively small working set. Then, however, fast direct in-memory item
access can be used. - stxxl::external_shared_ptr is a proxy class to allow use of shared_ptr
classes inside stxxl containers. Reference counts are kept in memory, while
data may be swapped out to disk. - removing struct default_completion_handler, using a NULL pointer in default
complete handler instead, since otherwise a default_completion_handler
objects is cloned for each_io_request! Using a NULL pointer avoids
superfluous new/delete work on the heap. - minor changes:
- disable TPIE benchmarks by default, removing a warning.
- compilation and tests work under MinGW 64-bit with special threads.
- fixed compilation on 32-bit systems, everything is -Wconversion safe.
- adding 32-bit and 64-bit cmdline_parser::add_bytes() variants.
- removing all double underscores.
- use atomic_counted_object in class file for request reference counting.
- adding local/test2.cpp containing a stxxl::sorter example.
- ๐ support kernel based asynchronous I/O on Linux (new file type "linuxaio"),