STXXL v1.4.1 Release Notes
Release Date: 2015-06-15 // almost 9 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"),