LRUHashTable es una biblioteca en C++20 que implementa una tabla hash con política de desalojo LRU (menos usado recientemente) diseñada para entornos de programación de sistemas con alta concurrencia y requisitos de latencia determinista. Su objetivo declarado es superar los cuellos de botella de las combinaciones convencionales de std::unordered_map y std::list protegidas por std::shared_mutex, que sufren contención global de bloqueo, fragmentación de heap y degradación de localidad de caché en CPUs con muchos núcleos.
La arquitectura se basa en fragmentación (sharding): los datos se reparten en shards independientes alineados a línea de caché, cada uno con su propio spinlock TTAS (test-and-test-and-set) en modo usuario o EX_PUSH_LOCK en modo kernel de Windows. El número de shards se escala dinámicamente con la topología del procesador, aproximadamente 32 por núcleo físico, y las claves se distribuyen mediante un mezclador tipo MurmurHash3 para uniformizar la carga. Los nodos y los buckets se preasignan en arreglos contiguos (Mega-Blocks), lo que elimina asignaciones en tiempo de ejecución y permite representar las listas LRU y las cadenas de colisión con índices de 32 bits en lugar de punteros de 64 bits.
Entre las características destacadas figuran el enrutamiento NUMA-aware, que reparte las asignaciones entre sockets para aprovechar el ancho de banda del controlador de memoria; una zona segura (Safe Zone) configurable que evita promociones LRU en lecturas calientes y aporta alrededor de un 20% más de rendimiento; y una destrucción sin bloqueos que saca la liberación de carga útil fuera de la sección crítica para mantener latencias de cola planas. El proyecto declara más de 14 veces de rendimiento frente a implementaciones con std::shared_mutex y latencias de cola inferiores al microsegundo, y se orienta a casos como infraestructura de trading de alta frecuencia, cachés de almacenamiento, enrutamiento de red en tiempo real, componentes de kernel y servidores web de alto throughput. La implementación ofrece operaciones de inserción, búsqueda y borrado en tiempo medio O(1) y es compatible con Windows 10+ en modo kernel (IRQL menor que DISPATCH_LEVEL) además de los entornos de usuario multiplataforma.
