By: Jan Wassenberg (jan.wassenberg.delete@this.gmail.com), May 29, 2022 10:48 pm
Room: Moderated Discussions
Michael S (already5chosen.delete@this.yahoo.com) on May 29, 2022 1:38 pm wrote:
> A bit too much of templatism to figure out [in this late hour] what exactly
> is sorted, what is the key and what is the payload. Esp. the later.
Indeed lots of templates :) All key types between 16-128 bit are supported. Payload is whatever fits in the unused lower bits of the key. I'm told that 64+0 and 64+64 are very interesting use cases (for example, a columnar DB). If you're interested, there is some discussion of use cases in our paper: https://arxiv.org/abs/2205.05982.
> More often than not it is soundly beaten by variations of radix sort.
I wrote such a thing in 2010 :) Time flies. https://arxiv.org/abs/1008.2849
Turns out 32-bit keys are not enough for many use cases, and virtual memory tricks to reduce/avoid branching are not very practical.
> A bit too much of templatism to figure out [in this late hour] what exactly
> is sorted, what is the key and what is the payload. Esp. the later.
Indeed lots of templates :) All key types between 16-128 bit are supported. Payload is whatever fits in the unused lower bits of the key. I'm told that 64+0 and 64+64 are very interesting use cases (for example, a columnar DB). If you're interested, there is some discussion of use cases in our paper: https://arxiv.org/abs/2205.05982.
> More often than not it is soundly beaten by variations of radix sort.
I wrote such a thing in 2010 :) Time flies. https://arxiv.org/abs/1008.2849
Turns out 32-bit keys are not enough for many use cases, and virtual memory tricks to reduce/avoid branching are not very practical.