|
You are here |
probablydance.com | ||
| | | | |
tessil.github.io
|
|
| | | | | ||
| | | | |
attractivechaos.wordpress.com
|
|
| | | | | Array and hash table are probably the most important data structures. Some programming languages such as Perl, Lua and Javascript, almost build the language core on top of the two data structures. While array is straightforward to implement, hash table is not. This is why we have paid continuous efforts in improving the hash table... | |
| | | | |
codecapsule.com
|
|
| | | | | This is Part 5 of the IKVS series, "Implementing a Key-Value Store". You can also check the Table of Contents for other parts. In this article, I will study the actual implementations of hash tables in C++ to understand where are the bottlenecks. Hash functions are CPU-intensive and should be optimized for that. However, most of the | |
| | | | |
www.bazhenov.me
|
|
| | | Introduction Link to heading Varint is a widely recognized technique used for compressing integer streams. Essentially, it suggests that it can be more efficient to encode a number using a variable-length representation instead of a fixed-size binary representation. By removing leading zeros from the binary number, the overall representation size can be reduced. This technique works particularly well for encoding smaller numbers. In this article, I provide a brief introduction and rationale for varint encoding. Additionally, I describe the Stream VByte format, which enables fully vectorized decoding through SSSE3 instructions. I also share my findings from implementing this algorithm in Rust, which includes both encoding and decoding primitives and the abili... | ||