Package io.github.jbellis.jvector.util


package io.github.jbellis.jvector.util
  • Class
    Description
    A min heap that stores longs; a primitive priority queue that like all priority queues maintains a partial ordering of its elements such that the least element can always be found in constant time.
     
    Methods for manipulating arrays.
    A BitSet implementation that offers concurrent reads and writes through an AtomicLongArray as bit storage.
    Interface for Bitset-like structures.
    Bits with all bits set.
    Bits with no bits set.
    Base implementation for a bit set.
    A variety of high efficiency bit twiddling routines and encoders for primitives.
    An AbstractLongHeap with a fixed maximum size, allocated at construction time.
    Some useful constants.
    A map (but not a Map) of int -> T where the int keys are dense-ish and start at zero, but the size of the map is not known in advance.
     
    BitSet of fixed length (numBits), backed by accessible (FixedBitSet.getBits()) long[], accessed with an int index, implementing Bits.
    A BitSet implementation that grows as needed to accommodate set(index) calls.
    An AbstractLongHeap that can grow in size (unbounded, except for memory and array size limits).
    Helper APIs to encode numeric values as sortable bytes and vice-versa.
    A fork join pool which is sized to match the number of physical cores on the machine (avoiding hyper-thread count) This is important for heavily vectorized sections of the code since it can easily saturate memory bandwidth.
    Allows any object to be pooled and released when work is done.
    Wrapper class for items in the pool These are AutoClosable and are intended to be used in a try-with-resources statement.
    Estimates the size (memory representation) of Java objects.
    A bit set that only stores longs that have at least one bit which is set.
    A thread-safe BitSet implementation that grows as needed to accommodate set(index) calls.