Embedding tables are critical components of large-scale recommendation systems, facilitating the efficient mapping of high-cardinality categorical features into dense vector representations. However, as the volume of unique IDs expands, traditional hash-based indexing methods suffer from collisions that degrade model performance and personalization quality. We present Multi-Probe Zero Collision Hash (MPZCH), a novel indexing mechanism based on linear probing that effectively mitigates embedding collisions. With reasonable table sizing, it often eliminates these collisions entirely while maintaining production-scale efficiency. MPZCH utilizes auxiliary tensors and high-performance CUDA kernels to implement configurable probing and active eviction policies. By retiring obsolete IDs and resetting reassigned slots, MPZCH prevents the stale embedding inheritance typical of hash-based methods, ensuring new features learn effectively from scratch. Despite its collision-mitigation overhead, the system maintains training QPS and inference latency comparable to existing methods. Rigorous online experiments demonstrate that MPZCH achieves zero collisions for user embeddings and significantly improves item embedding freshness and quality. The solution has been released within the open-source TorchRec library for the broader community.
Figures & tables
Figure 1. A simplified example of ID insertion, lookup, and collision handling. A simplified example of ID insertion, lookup, and collision handling.
Table Size
Capacity
Sigrid Hash
MPZCH Collision Rate (%) at max_probe = P
(Millions)
Ratio
Collision
P=8
P=16
P=32
P=64
P=128
P=256
P=512
100
0.67x
48.2080%
34.0631%
33.4269%
33.3363%
33.3333%
33.3333%
33.3333%
33.3333%
150
1.00x
36.7917%
12.0940%
8.4059%
5.8717%
4.1186%
2.8981%
2.0430%
1.4411%
200
1.33x
29.6472%
3.8475%
1.3054%
0.2875%
0.0299%
0.0008%
0.0000%
0.0000%
250
1.67x
24.8028%
1.2974%
0.1967%
0.0105%
0.0001%
0.0000%
0.0000%
0.0000%
300
2.00x
21.3082%
0.4791%
0.0332%
0.0004%
0.0000%
0.0000%
0.0000%
0.0000%
Table 1. Collision rate comparison between Sigrid Hash and MPZCH using 150 million unique IDs. The Capacity Ratio represents the degree of over-provisioning, calculated as the embedding table size divided by the ID cardinality ( Ntable/Nids ). The results demonstrate that MPZCH achieves zero collisions with adequate capacity and probe depth, whereas the baseline Sigrid Hash retains significant collisions even when the table size is more than triple the ID cardinality. Collision rate comparison between Sigrid Hash and MPZCH using 150 million unique IDs. The Capacity Ratio represents the degree of over-provisioning, calculated as the embedding table size divided by the ID cardinality (Ntable/Nids). The results demonstrate that MPZCH achieves zero collisions with adequate capacity and probe depth, whereas the baseline Sigrid Hash retains significant collisions even when the table size is more than triple the ID cardinality.
Figure 2. An example of kernel execution with TTL eviction policy. Probing details are omitted for clarity, with arrows pointing to the final result slots. An example of kernel execution with TTL eviction policy. Probing details are omitted for clarity, with arrows pointing to the final result slots.
Figure 3. An example of kernel execution with LRU eviction policy. Probing details are omitted for clarity, with arrows pointing to the final result slots. An example of kernel execution with LRU eviction policy. Probing details are omitted for clarity, with arrows pointing to the final result slots.
Hardware & Execution Mode
Latency (ms) at max_probe = P
P=8
P=16
P=32
P=64
P=128
P=256
P=512
HBM / CUDA (GPU Native)
Batched
0.90
0.80
0.90
0.80
0.90
0.80
0.90
Non-batched
14.60
14.50
14.70
14.50
14.50
14.50
14.60
UVM Managed (Unified Virtual Memory)
Batched
4.40
4.40
4.40
4.40
4.40
4.40
4.40
Table 2. MPZCH kernel latency benchmark (in milliseconds). The results demonstrate that MPZCH performance is highly efficient on GPU and remains consistent across varying probe depths, indicating that the linear probing mechanism incurs negligible overhead even at higher search ranges. MPZCH kernel latency benchmark (in milliseconds). The results demonstrate that MPZCH performance is highly efficient on GPU and remains consistent across varying probe depths, indicating that the linear probing mechanism incurs negligible overhead even at higher search ranges.
Figure 4. The MPZCH module is co-sharded with the associated embedding table, ensuring that operations are executed locally within each shard. The MPZCH module is co-sharded with the associated embedding table, ensuring that operations are executed locally within each shard.
Prediction Task
NE Improvement
Share
0.38%
Video View Duration (VVD)
0.12%
Video View Percentage 100% (VVP100)
0.12%
Skip
0.09%
Table 3. Normalized Entropy (NE) improvements for critical tasks following the deployment of MPZCH for the user embedding table. Normalized Entropy (NE) improvements for critical tasks following the deployment of MPZCH for the user embedding table.
Figure 5. Top: Video embeddings from selected creators in the baseline model appear dispersed and uncorrelated. Bottom: With MPZCH, embeddings for the same creators exhibit significantly higher correlation and tighter clustering. Top: Video embeddings from selected creators in the baseline model appear dispersed and uncorrelated. Bottom: With MPZCH, embeddings for the same creators exhibit significantly higher correlation and tighter clustering.
Creation Window
Production
MPZCH
Relative Lift
Same Day
0.66%
0.91%
+38%
Same & Next Day
0.66%
0.91%
+38%
Overall (All Time)
0.62%
0.77%
+25%
Table 4. Comparison of intra-creator embedding similarity. MPZCH consistently yields higher similarity scores across all creation time windows, with the most significant gains observed for videos posted in close temporal proximity. Comparison of intra-creator embedding similarity. MPZCH consistently yields higher similarity scores across all creation time windows, with the most significant gains observed for videos posted in close temporal proximity.
Figure 6. Top: In the absence of MPZCH, video embeddings exhibit volatile shifts attributed to hash collisions. Bottom: MPZCH enables the learning trajectory to follow a consistent, smooth path, free from collision-induced noise. Top: In the absence of MPZCH, video embeddings exhibit volatile shifts attributed to hash collisions. Bottom: MPZCH enables the learning trajectory to follow a consistent, smooth path, free from collision-induced noise.