dsa64 0.1.0

64-byte aligned data structures for high-performance computing.
Documentation

dsa64

64-byte aligned data structures for high-performance computing.

Requires nightly Rust.

Overview

dsa64 is backed by Vec64 for SIMD-friendly memory layout.

Structures

This crate is going to be a very slow burn. Expect very little on it, but, progress will occur on an as needed basis by the author.

These will be published back here for the public benefit.

BinaryHeap64

A binary heap generic over Numeric types, backed by Vec64<T>.

  • Min-heap by default, max-heap via new_max()
  • NaN values are tracked separately and never interfere with heap operations
  • into_sorted_vec64() produces sorted output with NaN at the tail
use dsa64::BinaryHeap64;

let mut h = BinaryHeap64::<f64>::new();
h.push(3.0);
h.push(1.0);
h.push(4.0);

assert_eq!(h.pop(), Some(1.0));

License

Apache-2.0