File mode.h
Enums
-
enum ApproxTopK_mode_t
Represents the mode of use of approximate top-k computations that allows to trade accuracy vs speed. So, every options besides EXACT_TOPK increases the speed.
B represents the number of buckets. D is the number of min-k elements to track within every bucket.
Default option is EXACT_TOPK. APPROX_TOPK_BUCKETS_B16_D2 is worth starting from, if you’d like to experiment a bit.
It seems that only the limited number of combinations are meaningful, because of the limited supply of SIMD registers. Also, certain combinations, such as B32_D1 and B16_D1, were concluded to be not very precise in benchmarks, so ones were not introduced.
TODO: Consider d-ary SIMD heap.
Values:
-
enumerator EXACT_TOPK
-
enumerator APPROX_TOPK_BUCKETS_B32_D2
-
enumerator APPROX_TOPK_BUCKETS_B8_D3
-
enumerator APPROX_TOPK_BUCKETS_B16_D2
-
enumerator APPROX_TOPK_BUCKETS_B8_D2
-
enumerator EXACT_TOPK