adiar
adiar copied to clipboard
An I/O-efficient implementation of (Binary) Decision Diagrams
When going from *v1.0.1* to *v1.1.0*, we changed the way the levelized priority queue distributes its memory. Specifically, for *M* being the total amount of memory given to the levelized...
Adiar is built ontop of abstractions of the TPIE library to improve the code quality of our own code base and extend it with some custom functionality. An alternative to...
While solving #412 , I created the `reduce_flags` class to hold a tuple of `bool` values inside of a single unsigned integer. This class should be generalised into a specialialisation...
- [ ] Add conversion-constructors from nodes with a longer node_carry: the remaining items are filled with `NO_CHILDREN()`. - [ ] Add conversion-constructors from nodes with a shorter node_carry: the...
We can add a third constructor argument `max_bucket_size` to the *levelized priority queue*. Whereas the `max_size` can be computed by the (less precise) 2-level cut the `max_bucket_size` can be computed...
The implementation of `meta_writer::has_pushed()` can be replaced with `size() > 0 || levels() > 0`. This would remove almost identical code, but would also be slower than the current piece...
When printing statistics in our unit tests it is very hard to see whether they parsed or not. If statistics are turned on, we ought to do a nice summary...
The `tpie::stream_size_type` is designed specifically to ensure large enough numbers are supported on a system, e.g. on some systems `std::size_t` is a 32-bit integer whereas `tpie::stream_size_type` always is (at least?)...
As was evident in #447 and #450 , the benchmarking CI breaks for non-collaborators, since they do not have any privileges to post a comment on this repo (for reasonably...
Currently, we expose to the end user the `__dd` class that encapsulates a possibly-unreduced output; the Reduce algorithm is then run as part of the conversion constructor from `__dd` to...