по результатам эксперимента, папку на 200 гб с 1.7kk файлов 7z с опциями -m0=lzma -mx=9 -mfb=64 -md=256m сжимает на шесть процентов лучше чем tar c | xz -9 -e -M 12G. и по времени раза в полтора быстрее. 28 часов против 36
Итак, как оказалось, хэшмапа на связных списках на сишечке пишется просто «на коленке» за 10 минут.
При этом:
1. Можно в ноду впихнуть и ключ и значение и на каждую ноду будет выполняться строго одна аллокация
2. Ввиду отсутствия «лишних» действий, работает быстро
tfw просматриваешь байткод, чтобы найти lookupswitch в performance-critical функции и заменить его вручную на лукап в таблице. mfw функция начинает работать двое быстрее.