Skip to content

Fast uncompressed block #8

Description

@klauspost

When you have an incompressible block that yields the same or more than BitPackingBlockSizeXX+1, you should have a fast uncompressed mode.

You have plenty of unused space in your blocks headers:

  • bitlen gets 7 bits, uses 5 or 6.
  • ntz gets 8 bits, only uses 6.

You can either have a "magic" all ones header to indicate that the block is uncompressed or you can pack the values tighter and use one of the leftover bits.

That will make compression (after and deltaBitLenAndSign) and decompression a memcopy.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions