Kaspa (KAS): микроархитектурный анализ kHeavyHash и пределы ASIC-оптимизации
Проект Kaspa (KAS) реализует Proof-of-Work с DAG-консенсусом GHOSTDAG и хеш-функцией kHeavyHash. В отличие от memory-hard алгоритмов, вычислительная нагрузка здесь почти полностью compute-bound, что делает архитектурную специализацию особенно эффективной.
Оглавление
1. Архитектурная постановка задачи
Упрощённый цикл майнинга:
+------------------+
| Block Header |
+------------------+
|
v
+------------------+
| kHeavyHash() |
+------------------+
|
v
+------------------+
| Compare Target |
+------------------+
|
yes / no
Ключевые свойства:
- Высокая операционная интенсивность (FLOPs / byte → очень высокая)
- Минимальный объём внешней памяти
- Линейный, детерминированный pipeline
- Полная параллелизация по nonce
2. Roofline-модель для kHeavyHash
В классической roofline-модели:
P = min(P_peak, I × B_mem)
Где:
- P_peak — пик вычислительной мощности
- I — операционная интенсивность
- B_mem — пропускная способность памяти
Для kHeavyHash:
I → очень большое Memory pressure → низкое
Следовательно:
P ≈ P_peak
Производительность ограничена исключительно количеством логических блоков и частотой.
3. Микроархитектура ASIC под kHeavyHash
Типовой специализированный pipeline:
[ Input Reg ]
|
v
[ Round 1 Logic ]
|
v
[ Round 2 Logic ]
|
v
[ Permutation Network ]
|
v
[ Final Mix ]
|
v
[ Comparator ]
Оптимизации:
- Глубокая конвейеризация (20–40 стадий)
- Полная развертка раундов
- Минимизация routing delay
- Clock gating для снижения утечек
Энергия одного хеша:
E_hash ≈ N_cycles × E_cycle
Поскольку DRAM не участвует, доминируют:
- динамические переключения
- утечки техпроцесса
- частота и напряжение
4. Сравнение: GPU vs ASIC
| Параметр | GPU | Kaspa ASIC |
|---|---|---|
| Гибкость | Высокая | Нулевая |
| Hash/Watt | Средний | Очень высокий |
| Потери на память | Есть | Практически нет |
| Эффективность логики | ~30–40% | >80% |
ASIC выигрывает за счёт:
- отсутствия универсального ALU
- фиксированной логики
- коротких data-path
- низкого overhead управления
5. Почему Kaspa не memory-hard
В отличие от Ethash, kHeavyHash не требует большого внешнего датасета. Это означает:
- нет барьера входа для ASIC
- нет давления на HBM
- нет зависимости от bandwidth
Следствие — майнинг быстро централизуется вокруг специализированных чипов.
6. Пределы масштабирования
Дальнейший рост эффективности возможен только через:
- переход на более тонкий техпроцесс
- снижение напряжения
- улучшение топологии кристалла
- минимизацию паразитных ёмкостей
Архитектурный потенциал уже практически исчерпан.
7. Сравнение с SHA-256 (Bitcoin)
В отличие от двойного SHA-256 в Bitcoin:
- kHeavyHash сложнее по структуре
- имеет более длинный pipeline
- но аналогично compute-bound
С точки зрения транзисторной плотности:
Area ∝ Logic Complexity × Pipeline Depth
Kaspa ASIC немного сложнее SHA-256 ASIC, но остаётся крайне компактным по сравнению с GPU.
8. Гипотеза: возможно ли сделать Kaspa memory-hard?
Теоретически — да. Практически — это потребует:
- введения большого псевдослучайного датасета
- случайного доступа к памяти
- сильной зависимости от bandwidth
Но это изменит фундаментальные свойства сети и повлияет на:
- latency блоков
- энергопотребление
- сложность узлов
Заключение
Kaspa — почти идеальный пример compute-bound Proof-of-Work.
В такой архитектуре:
Эффективность ≈ функция техпроцесса
Поэтому основная гонка происходит не на уровне алгоритма, а на уровне физики кристалла.