Запрос технической литературы по реализации RandomX / rx/0
Всех приветствую.
Интересует самостоятельная реализация алгоритма для RandomX (XMR, rx/0) с нуля, в образовательных целях. Не интересуют готовые решения, бинарники, сборки или инструкции "как запустить xmrig". Цель — глубоко разобраться в алгоритме и написать свою программу на C++.
Ищу ссылки на техническую документацию и материалы, которые подробно разбирают:
1. Спецификация виртуальной машины RandomX — набор инструкций, работа с регистрами, организация кэша.
2. Детали реализации rx/0 — отличия от базового RandomX, работа с Dataset.
3. Оптимизация доступа к памяти — как эффективно работать с кэшем L3, паттерны доступа.
4. Низкоуровневые оптимизации под x86-64 (ASM, использование FPU, конвейеризация).
5. Реализация хэш-функции Blake2b на уровне алгоритма, не используя готовые библиотеки.
Интересуют именно материалы для углубленного изучения — академические статьи, технические отчёты, спецификации, может быть, даже переписка разработчиков, где обсуждались детали реализации.
Если вы встречали что-то действительно ценное и глубокое по теме — поделитесь, пожалуйста, в комментариях. Особенно ценны были бы русскоязычные технические разборы, если такие существуют в открытом интернете.