Hacker News new | ask | show | jobs
by avdicius 3266 days ago
The usual varint is called varint-SU in the Stepanov's paper. The varint-PU is just like what you call FLIT64, at least I don't see any difference.
1 comments

As a nonacadecic person I find the algorithm description in the paper very hard to read. It says the PU variant packs the "descriptor bits". Thus a 4 byte example would make suffix 0Bxxxx0111 whereas FLIT does 0Bxxxx1000. This minor difference means that one can unmarshall based on tailing zero count and bit shifts rather than the loops described in the paper. In other words, it trades the most expensive CPU operations (jumps) for the cheapest ones. Also FLIT64 has a worst case of 9 bytes rather than varints 10 bytes.