TGViewer
Чайник из Юты Чайник из Юты @irrationalthings · 121 subscribers
Post #490 212
Бакет (в коде именуется bmap) в исходниках определён, как структура, в которой находится только поле tophash типа [8]uint8. На самом деле, это довольно хитрая хуйня, потому что это не совсем так. После него на самом деле следуют 8 ключей и 8 значений, и указатель на тот самый overflow bucket в самом конце. Одним предложением я породил сразу 2 вопроса:
1) Почему там ещё и ключи сохраняются?
2) Почему ключи и значения идут отдельно, а не как 8 пар ключ-значение (вряд-ли он у вас возник, конечно, но это используется просто как подводка к коротенькому фанфакту)?

И если на второй вопрос ответить ещё просто (чтобы уменьшить траты на выравнивание - пара из int64 ключа и 8 uint8 значеня привела бы к 56 байтам выравнивания - а таких 8! И это только основной бакет!), то первый требует немного бэкграунда.
More from @irrationalthings
  1. Sep 21, 2026я хрюкнул
  2. Sep 21, 2026гемини
  3. Sep 15, 2026Тот факт, что между нейронками и компрессорами больше общего, чем может показаться - забав…
  4. Sep 15, 2026"Low-Resource" Text Classification: A Parameter-Free Classification Method with Compressor…
  5. Sep 15, 2026Конечно, они сравнивали со средненькими классифицирующими моделями. Там есть пространство…
  6. Sep 15, 2026GZIP наносит ответный удар Вот мы хотим классифицировать текст. Классическая задача для ML…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →