fastpfor

package
v0.0.0-...-b90e310 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 23, 2017 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package fastpfor is an implementation of the fastpfor integer compression algorithm in in Go. It is mostly suitable for arrays containing small positive integers. Given a list of sorted integers, you should first compute the successive differences prior to compression. For details, please see Daniel Lemire and Leonid Boytsov, Decoding billions of integers per second through vectorization Software: Practice & Experience http://onlinelibrary.wiley.com/doi/10.1002/spe.2203/abstract or

http://arxiv.org/abs/1209.2137

Index

Constants

View Source
const (
	DefaultBlockSize     = 128
	OverheadOfEachExcept = 8
	DefaultPageSize      = 65536
)

Variables

This section is empty.

Functions

func New

func New() encoding.Integer

Types

type FastPFOR

type FastPFOR struct {
	// contains filtered or unexported fields
}

FastPFOR codec structure: this is not thread-safe (need one per thread)

func (*FastPFOR) Compress

func (this *FastPFOR) Compress(in []int32, inpos *cursor.Cursor, inlength int, out []int32, outpos *cursor.Cursor) error

func (*FastPFOR) Uncompress

func (this *FastPFOR) Uncompress(in []int32, inpos *cursor.Cursor, inlength int, out []int32, outpos *cursor.Cursor) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL