Революция GPU: как мы можем сделать Ethereum в 1000 раз быстрее с помощью zk-SNARKs

В этой статье будет рассмотрен ключевой технологический прорыв: благодаря сочетанию высокопроизводительных GPU и zk-SNARKs мы увеличиваем эффективность работы Ethereum в сотни, а то и в тысячи раз. Это не только решает долгосрочные проблемы производительности Блокчейн, но и предоставляет жизнеспособный технологический путь для инфраструктуры Web3 в будущем.

Если вы когда-либо задавались вопросом: почему Ethereum работает медленно и высокие затраты на транзакции? Или вы следите за ключевыми факторами, влияющими на технологии следующего поколения Блокчейн? Тогда эта статья предоставит вам четкие ответы.

Суть проблемы: почему Блокчейн похож на перегруженное шоссе?

Думайте об Ethereum как о шоссе. Сегодня все пользователи и приложения конкурируют за ограниченные ресурсы полос движения, что приводит к перегрузке сети, медленной обработке транзакций и высокой плате за газ.

Традиционные подходы к решению проблемы сводятся к двум основным вариантам:

  • Ремонт большего количества дорожек — то есть создание сети второго уровня (например, Rollups)
  • Уменьшение размера транспортного средства — то есть сжатие данных транзакции

Но если бы был способ «телепортировать» автомобили, а не продолжать их сжимать на полосе? Это именно то, что предлагает парадигмальное обновление с помощью нулевых знаний (Zero-Knowledge Proofs, ZKPs). Его основная идея заключается в том, что не нужно передавать все данные о транзакциях, а достаточно сгенерировать математическое доказательство, чтобы подтвердить подлинность транзакции. Другими словами, нам больше не нужно, чтобы каждый автомобиль проезжал по автомагистрали, мы можем просто подтвердить, что «эти машины действительно достигли конца». Это не только снижает нагрузку на передачу данных, но и позволяет совместить «высокую пропускную способность + высокую безопасность + доверительную проверку».

The Verge: Следующий этап эволюции Ethereum

Ethereum в настоящее время реализует грандиозный технический план — The Verge, который можно рассматривать как «программу по снижению веса» Ethereum. Цель состоит в том, чтобы значительно упростить запуск узлов Ethereum, чтобы это было так же легко, как запустить приложение на мобильном телефоне. В будущем каждый сможет легко присоединиться к сети Ethereum, не полагаясь на мощный игровой компьютер.

Но за этим проектом стоит ключевая техническая проблема: он требует выполнения миллионов сложных математических операций за долю времени.

Это именно то направление прорыва, на которое ориентирована команда Polyhedra — как использовать GPU для ускорения масштабных ZK вычислений, значительно повысив производительность выполнения при обеспечении безопасности проверки.

Технические вызовы: этот набор данных изменит ваше представление

Чтобы понять сложность, с которой мы имеем дело, вот реальные масштабы текущих операций на блокчейне Ethereum:

  • Проверка консенсуса (Consensus Verification): Каждый Блок содержит около 90 миллионов вычислений SHA 2-256 хеширования и 2048 проверок цифровой подписи BLS.
  • Доказательства перехода состояния (State Transition Proofs): Каждый блок требует выполнения примерно 500000 операций хеширования Keccak.
  • Текущая проблема:
    Процессорный доказатель нулевых знаний (Prover) в настоящее время может выполнять всего около 2 миллионов вычислений хеш-функции Poseidon в секунду.

Настоящая проблема заключается в том, что нам необходимо использовать zk-SNARKs для выполнения всех вышеуказанных вычислений, что, безусловно, значительно увеличивает вычислительную сложность.

Точка прорыва: революция вычислительной мощности GPU

Как известно, GPU являются любимыми устройствами как геймеров, так и инженеров по ИИ. Но на самом деле эти графические процессоры демонстрируют способности, значительно превосходящие CPU, при выполнении массовых параллельных математических вычислений, необходимых для zk-SNARKs.

В Polyhedra мы провели нативную оптимизацию ZK доказательных систем для GPU и добились потрясающих прорывных показателей производительности:

Переход производительности, значительно превышающий ожидания

  • Ускорение базовых数学 операций (область Мерсенна 31) в 362 раза
  • Сложные криптографические вычисления (эллиптическая кривая BN 254) ускорены до 2826 раз
  • Исходные расчёты с использованием zk-SNARKs, которые занимали 21 минуту, теперь сокращены до всего 450 миллисекунд.

Иными словами, это эквивалентно тому, что ваше время на утреннюю поездку на работу сократилось с 20 минут до менее чем полсекунды. Это не постепенная оптимизация, а парадигмальный переход в вычисления.

Почему этот прорыв имеет для вас значение?

  1. Более низкие транзакционные издержки: более быстрая генерация доказательства означает значительное снижение общих вычислительных затрат, что приводит к более низким Gas-расходам. Выигрыш для пользователей и сети.
  2. Более высокая защита безопасности: Помните, мы упоминали, что ежегодный бюджет безопасности Ethereum превышает 40 миллионов долларов? Благодаря нашей технологии легкие узлы могут легко проверять всю цепочку консенсуса Ethereum, наслаждаясь уровнем безопасности главной сети без необходимости в огромных ресурсных затратах.
  3. Более доступная работа узлов, теперь Эфир можно запускать на мобильном телефоне: наши постоянные оптимизации производительности и эффективности делают возможным запуск узлов Эфира на обычных устройствах. В будущем, для проверки данных Блокчейна, возможно, будет достаточно одного мобильного телефона.

Техническое ядро: как мы это сделали

1. GPU нативный дизайн: оптимизированный для CUDA протокол Sumcheck

Наша реализация Sumcheck, построенная на базе CUDA, в полной мере использует преимущества параллельных вычислений GPU:

  • Разработка пользовательских CUDA ядер для вычислений в числовых полях (сложение, умножение, возведение в степень)
  • Используя режим объединенного доступа к памяти, максимизируйте использование пропускной способности GPU (реальная пропускная способность RTX 4090 достигает 1008 ГБ/с)
  • Используйте примитивы уровня warp для эффективного выполнения операций редукции (Reduction)

Этот уровень глубокой настройки позволяет протоколу Sumcheck больше не ограничиваться последовательными瓶颈ами CPU.

  1. Память — это король: Оптимизация узкого места пропускной способности Традиционная точка зрения считает, что вычислительное узкое место ZK Prover связано с вычислительной мощностью, но наши эмпирические данные показывают — Sumcheck является典型ной проблемой узкого места пропускной способности памяти:
  • Анализ пропускной способности памяти: использование полосы пропускания достигло теоретического предела 95% +
  • Оптимизация структуры данных: использование Structure-of-Arrays (SoA) вместо традиционной структуры Array-of-Structures (AoS)
  • Повышение коэффициента использования SM-единиц: оптимизация конфигурации блоков потоков для достижения наилучшей загрузки оборудования

Решив проблему пропускной способности памяти, мы превратили ZK вычисления в действительно эффективную потоковую задачу.

3. Индивидуализированные стратегии оптимизации для различных числовых полей

Разные области криптографии имеют разные вычислительные характеристики, и мы разработали оптимизированные пути для каждого основного поля:

  • Mersenne 31 (M 31): оптимизация 31-битного целого числа, эффективная структура модульных вычислений
  • M 31 ext 3 : Поддержка расширенных полей, учитывающая полиномиальное расширение и низкие затраты
  • BN 254: Настраиваемый умножитель на основе алгоритма Монтгомери, специально разработанный для полей больших целых чисел размером 254 бита.

Такая высоко целенаправленная оптимизация на нижнем уровне делает наш ZK Prover как универсальным, так и исключительно эффективным.

Разделение данных о производительности: места, где произошли оптимизации

Мы не просто сделали "значительно быстрее", а подняли производительность ZK на беспрецедентную высоту. Вот данные о производительности из тестов:

Революция GPU: как мы с помощью zk-SNARKs ускоряем Ethereum в 1000 раз

Техническая архитектура: Правда под капотом

GKR Протокол: Ускоренное ядро

Наше ускоренное оптимизирование сосредоточено на протоколе GKR (Goldwasser-Kalai-Rothblum), в частности, включает в себя:

  • Линейный GKR слой: используется для обработки сложения и умножения
  • Протокол Sumcheck: где находятся узкие места производительности, занимающие почти 50% общего времени вычислений CPU
  • Этап оценки многочленов: время вычисления на GPU сокращено с 8,4 секунды до 9,5 миллисекунд

Подробное руководство по проектированию ядер GPU

Первый этап: оценка многочлена

  • Параллельные вычисления на 2 ^n точках
  • Использование коэффициента кэширования в общей памяти для повышения скорости доступа
  • Использование warp shuffle для эффективной редукции операций
  • Второй этап: Генерация вызова
  • Выполнение хэш-операции Fiat-Shamir внутри GPU, избегая частого переключения между CPU и GPU
  • Снизить задержку связи между ЦП и ГП

Оптимизация передачи данных в памяти: преодоление "последней мили" данных

Мы также провели системную оптимизацию взаимодействия CPU-GPU, чтобы гарантировать, что пропускная способность не станет узким местом:

  • Оптимизация пропускной способности PCIe: обработка 2^{27} элементов занимает всего 737 миллисекунд
  • Закрепленная память: поддерживает передачу данных "без копирования", снижая затраты на копирование
  • Асинхронное управление операциями: вычисления и коммуникации происходят параллельно, максимизируя использование ресурсов

Говоря по правде: вызовы все еще существуют

Мы всегда придерживаемся прозрачности — ускорение GPU не является универсальным решением, в процессе реализации мы также столкнулись с рядом технических ограничений:

  1. Пропускная способность памяти достигла пика
  • Даже если H100 имеет пропускную способность до 3,35 ТБ/с, при высокой нагрузке он все равно станет узким местом производительности.
  • В сравнении: более крупные поля эллиптических кривых (например, BN 254) быстрее достигают предела, чем малые поля (например, M 31)
  1. Объем видеопамяти GPU ограничен
  • RTX 4090 исчерпал память при обработке 2 ^{ 29 } элементов
  • При реальной развертке требуется тщательная стратегия распределения памяти, чтобы избежать рисков переполнения.
  1. Баланс между размером области и производительностью

Революция GPU: как мы с помощью zk-SNARKs ускоряем Ethereum в 1000 раз

  1. Сравнение "Преимущества GPU": с какого момента они начали превосходить CPU?

Революция GPU: как мы используем zk-SNARKs, чтобы ускорить Ethereum в 1000 раз

Кроссплатформенная производительность тестирования

Мы провели бенчмаркинг на различных уровнях GPU, охватывающих потребительское и центровое оборудование:

Потребительский GPU

  • RTX 3090: Ширина памяти 936 ГБ/с, максимальное повышение производительности до 951 раз
  • RTX 4090: пропускная способность памяти 1008 ГБ/с, прирост производительности до 1565 раз
  • Центр обработки данных GPU
  • NVIDIA H100: пропускная способность до 3.35 ТБ/с, производительность увеличена до 2826 раз

Ясный и четкий вывод: пропускная способность памяти является ключевым переменным для ускорения zk-SNARKs.

Перспектива будущего: наша дорожная карта

Мы далеко не остановились, в дальнейшем мы продолжим упорную работу над следующими целями:

  • Более экстремальное ускорение: для определенных операций цель состоит в том, чтобы достичь увеличения скорости в 10 000 раз.
  • Более широкая совместимость с аппаратным обеспечением: от высокопроизводительных игровых видеокарт до ускорителей уровня дата-центра.
  • Нативная интеграция Ethereum: Мы сотрудничаем с командой разработчиков клиентского ПО Ethereum, чтобы напрямую интегрировать наш стек GPU ZK-доказательств на уровень L1.

Присоединяйтесь к этой волне перемен!

Это не просто повышение скорости, это полная переработка доступности Блокчейна. Независимо от того, кто вы, вы сможете найти способ участвовать:

  • Разработчики: добро пожаловать в наши репозитории Expander и CUDA, давайте вместе строить будущее
  • Учащиеся: следите за нашими семинарами по исследованиям и техническими углублениями, чтобы постоянно обновляться и не отставать.
  • Все: Распространяйте эту технологию! Чем больше людей поймут, тем ближе будущее Web3.

Обзор ключевых идей

Мы находимся на увлекательной технологической развилке. Сочетание zk-SNARKs и GPU-ускорения — это не просто крайнее улучшение производительности, а настоящая парадигмальная трансформация.

Мы переопределяем границы скорости, стоимости и доступности Ethereum.

Краткий обзор ключевых технических результатов:

  • Реализация ZK-доказательства для производственной среды с ускорением более чем в 1000 раз
  • Использование пропускной способности памяти GPU превышает 95%
  • Открытая реализация, может быть интегрирована в любое время

Будущее Web3 не только децентрализовано, но и крайне доступно, и оно приходит быстрее, чем вы можете себе представить.

Какой из этих прогрессов вас больше всего интересует? Вы можете оставить комментарий или взаимодействовать со мной в Twitter, мы с удовольствием углубимся в эти технические детали!

Будущее принадлежит скорости, а также тебе. Увидимся в следующий раз, продолжаем строить, не ограничиваясь только скоростью!

Посмотреть Оригинал
Содержание носит исключительно справочный характер и не является предложением или офертой. Консультации по инвестициям, налогообложению или юридическим вопросам не предоставляются. Более подробную информацию о рисках см. в разделе «Дисклеймер».
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить