Related Experiment Video
Updated: Jan 3, 2026

14:58
Silicon Metal-oxide-semiconductor Quantum Dots for Single-electron Pumping
Published on: June 3, 2015
15.3K
Quicker ADC : Unlocking the Hidden Potential of Product Quantization With SIMD
IEEE Transactions on Pattern Analysis and Machine Intelligence
|November 15, 2019
Summary
Quicker ADC accelerates nearest neighbor search in high-dimensional data using Product Quantization (PQ). This new method enhances performance by optimizing memory access for large vector databases.
Area of Science:
- Computer Science
- Information Retrieval
- Machine Learning
Background:
- Nearest Neighbor (NN) search in high-dimensional spaces is crucial for multimedia retrieval.
- Product Quantization (PQ) enables efficient storage and distance computation for large vector databases.
- Existing PQ implementations are often limited by memory access bottlenecks.
Purpose of the Study:
- To introduce Quicker ADC, a generalization of Quick ADC for faster nearest neighbor search.
- To overcome challenges in efficiently handling non-byte-aligned bit shuffles (5, 6, and 7 bits) in AVX-512.
- To improve the performance of PQ-based nearest neighbor search in high-dimensional vector databases.
Main Methods:
- Developed Quicker ADC, supporting AVX-512 and generalized PQ codes beyond PQ m×4.
- Introduced irregular product quantizers with varying sub-quantizer granularities.
- Implemented split tables to accommodate lookup tables larger than CPU registers.
Main Results:
- Quicker ADC demonstrated superior performance compared to optimized implementations like FAISS and polysemous codes.
- Evaluated Quicker ADC on multiple index structures, including Inverted Multi-Indexes and IVF HNSW.
- Achieved significant speedups, outperforming existing optimized solutions in numerous configurations.
Conclusions:
- Quicker ADC offers a substantial performance improvement for nearest neighbor search using Product Quantization.
- The techniques developed, including irregular quantizers and split tables, effectively address challenges with non-byte-aligned bit manipulations.
- An open-source fork of FAISS incorporating Quicker ADC is released, promoting wider adoption and further research.
Related Concept Videos
Phasor Arithmetics
682
Phasors and their corresponding sinusoids are interrelated, offering unique insights into the behavior of alternating current (AC) circuits. One way to understand this relationship is through the operations of differentiation and integration in both the time and phasor domains.
When the derivative of a sinusoid is taken in the time domain, it transforms into its corresponding phasor multiplied by j-omega (jω) in the phasor domain, where j is the imaginary unit, and ω is the angular...
When the derivative of a sinusoid is taken in the time domain, it transforms into its corresponding phasor multiplied by j-omega (jω) in the phasor domain, where j is the imaginary unit, and ω is the angular...
682
Downsampling
556
When considering a sampled sequence with zero values between sampling instants, one can replace it by taking every N-th value of the sequence. At these integer multiples of N, the original and sampled sequences coincide. This process, known as decimation, involves extracting every N-th sample from a sequence, thereby creating a more efficient sequence.
The Fourier transform of the decimated sequence reveals a combination of scaled and shifted versions of the original spectrum. This...
The Fourier transform of the decimated sequence reveals a combination of scaled and shifted versions of the original spectrum. This...
556
Upsampling
555
Managing signal sampling rates is essential in digital signal processing to maintain signal integrity. A decimated signal, characterized by a reduced frequency range due to its lower sampling rate, can be upsampled by inserting zeros between each sample. This upsampling process expands the original spectrum and introduces repeated spectral replicas at intervals dictated by the new Nyquist frequency. To refine this zero-inserted sequence, it is passed through a lowpass filter with a cutoff...
555
Sampling Theorem
1.2K
In signal processing, the analysis of continuous-time signals, denoted as x(t), often involves sampling techniques to convert these signals into discrete-time signals. This process is essential for digital representation and manipulation. A critical component in sampling is the train of impulses, characterized by the sampling interval and the sampling frequency. The relationship between these parameters and the original signal's properties dictates the success of the sampling process.
1.2K
Acceleration Vectors
21.5K
In everyday conversation, accelerating means speeding up. Acceleration is a vector in the same direction as the change in velocity, Δv, therefore the greater the acceleration, the greater the change in velocity over a given time. Since velocity is a vector, it can change in magnitude, direction, or both. Thus acceleration is a change in speed or direction, or both. For example, if a runner traveling at 10 km/h due east slows to a stop, reverses direction, and continues their run at 10 km/h...
21.5K
Sampling Continuous Time Signal
634
In signal processing, a continuous-time signal can be sampled using an impulse-train sampling technique, followed by the zero-order hold method. Impulse-train sampling involves the use of a periodic impulse train, which consists of a series of delta functions spaced at regular intervals determined by the sampling period. When a continuous-time signal is multiplied by this impulse train, it generates impulses with amplitudes corresponding to the signal's values at the sampling points.
In the...
In the...
634

