Skip to content

Commit 1a14607

Browse files
authored
Merge pull request #22 from ashvardanian/pointer-tagging
Pointer tagging 🏷️ This PR provides a prototype of a memory-tagging allocator arena, documenting the complexity of using memory tagging techniques even on Linux: - Intel's Linear Address Masking - AMD's Upper Address Ignore - ARM's Top Byte Ignore - ARM's Memory Tagging Extension
2 parents 431d5f8 + 3a4b1d7 commit 1a14607

File tree

2 files changed

+232
-55
lines changed

2 files changed

+232
-55
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Some of the highlights include:
2626
- __How to handle JSON avoiding memory allocations?__ Is it easier with C or C++ libraries?
2727
- __How to properly use associative containers__ with custom keys and transparent comparators?
2828
- __How to beat a hand-written parser__ with `consteval` RegEx engines?
29+
- __Is the pointer size really 64 bits__ and how to exploit [pointer-tagging](https://en.wikipedia.org/wiki/Tagged_pointer)?
2930

3031
To read, jump to the [`less_slow.cpp` source file](https://github.com/ashvardanian/less_slow.cpp/blob/main/less_slow.cpp) and read the code snippets and comments.
3132
Follow the instructions below to run the code in your environment and compare it to the comments as you read through the source.

0 commit comments

Comments
 (0)