TurboQuantPolarQjl

data class TurboQuantPolarQjl(val bitsPerElement: Int = 4, val residualBits: Int = 1, val blockSize: Int = 128) : TensorEncoding(source)

TurboQuant PolarPlusQjl encoding: rotation + scalar quantization + QJL residual + bit-packing.

Closest to the official TurboQuant paper. The QJL residual stage preserves inner-product accuracy at the cost of additional storage.

Parameters

bitsPerElement

Bits for the primary quantization (2, 3, 4, or 8)

residualBits

Bits for the QJL residual (typically 1 or 2)

blockSize

Elements per block

Constructors

Link copied to clipboard
constructor(bitsPerElement: Int = 4, residualBits: Int = 1, blockSize: Int = 128)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override val name: String

Human-readable name for diagnostics and memory reports.

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun physicalBytes(elementCount: Long): Long

Physical bytes required to store elementCount logical elements in this encoding, or null if the encoding is opaque/variable.