Files
ARSV/for_me.md
T
2026-07-02 00:08:54 +03:00

1.8 KiB

Notes

Hash

в данный момент используется Jenkins OAAT. Считается чуть устаревшим(check), главным аналогом является:

https://github.com/cyan4973/xxhash

xxHash64 (XXH64): относительно простая имплементация на си, хвалят за скорость, 64 бит, параллель

необходимы тесты и графики:

  1. насколько быстрее/медленнее
  2. коллизии на наборе букв в сравнении с рандомными данными
  3. коллизии у первого и второго хэшей между собой

В XXH3 внутренний цикл, который оптимально обрабатывается векторизацией. Благодаря этому функция использует аппаратную поддержку на наборах инструкций SSE2, AVX2 и NEON. Производительность зависит от комилятора. Неожиданно оказалось, что версия, скомпилированная clang, намного превосходит остальные. Ян Колле даже подумал, что производительность хеш-функции здесь превысит пропускную способность памяти. Этой версии на графике соответствует пунктирная линия.

есть ещё cityhash от гугла, но она c++

в случае XXH64 строк кода ~200, можно вставить в файл в случае XXH3 строк кода ~2к, стоит использовать библиотеку напрямую, бессмысленно