Web3 параллельные вычисления: новая парадигма, преодолевающая пределы производительности EVM

Полный обзор параллельных вычислений в Web3: лучшее решение для нативного масштабирования?

"Невозможный треугольник" блокчейна (Blockchain Trilemma) "безопасность", "децентрализация", "масштабируемость" раскрывает сущностные компромиссы в проектировании блокчейн-систем, а именно то, что блокчейн-проекты трудно одновременно достигнуть "максимальной безопасности, участия всех и высокой скорости обработки". В отношении "масштабируемости" этой вечной темы, текущие основные решения по масштабированию блокчейна на рынке различаются по парадигмам, включая:

  • Выполнение усовершенствованного расширения: повышение исполнительной способности на месте, например, параллельная обработка, GPU, многопоточность.
  • Изоляция состояния для масштабирования: горизонтальное разделение состояния / Shard, например, шардирование, UTXO, многоподсети
  • Внешняя масштабируемость через аутсорсинг: выполнение вне цепи, например, Rollup, Копрограммный процессор, DA
  • Декуплированное расширение структуры: модульная архитектура, совместная работа, например, модульные цепи, общий упорядочиватель, Rollup Mesh
  • Асинхронное параллельное масштабирование: модель актера, изоляция процессов, управление сообщениями, например, агенты, многопоточное асинхронное соединение

Решения по масштабированию блокчейна включают: параллельные вычисления внутри цепи, Rollup, шардирование, DA-модули, модульные структуры, системы Actor, сжатие zk-доказательств, безгосударственную архитектуру и т.д., охватывающие несколько уровней исполнения, состояния, данных и структуры, представляя собой "многослойную координацию и модульное сочетание" полную систему масштабирования. В данной статье основное внимание уделяется способом масштабирования, основанным на параллельных вычислениях.

Внутреннее параллельное вычисление (intra-chain parallelism), фокусируется на параллельном выполнении транзакций / инструкций внутри блока. По механизму параллелизма его методы масштабирования можно разделить на пять основных категорий, каждая из которых представляет собой различные стремления к производительности, модели разработки и архитектурную философию, постепенно уменьшая размеры параллельных задач, увеличивая интенсивность параллелизма, а также усложняя планирование, сложность программирования и степень реализации.

  • Уровень аккаунта параллельно (Account-level): представляет проект Solana
  • Объектный уровень параллелизма (Object-level): представляет проект Sui
  • Уровень транзакций (Transaction-level): представляет проект Monad, Aptos
  • Уровень вызова / Микро-ВМ параллельность (Call-level / MicroVM): представляет проект MegaETH
  • Уровень параллелизма инструкций (Instruction-level): представляет проект GatlingX

Внецепочечная асинхронная конкурентная модель, представленная системой умных агентов (Agent / Actor Model), относится к другой парадигме параллельных вычислений. В качестве системы межцепочечного/асинхронного обмена сообщениями (не синхронизированная модель блокчейна) каждый агент функционирует как независимый "умный процесс", работающий в параллельном режиме, асинхронно обрабатывающий сообщения и события без необходимости синхронного расписания. К таким проектам относятся AO, ICP, Cartesi и др.

Знакомые нам решения по масштабированию, такие как Rollup или шардирование, относятся к системным механизмам параллелизма, а не к параллельным вычислениям внутри цепочки. Они достигают масштабирования, «параллельно выполняя несколько цепочек / исполняющих сред», а не увеличивая параллелизм внутри одного блока / виртуальной машины. Данные решения по масштабированию не являются основной темой данной статьи, но мы все же будем использовать их для сравнительного анализа архитектурных концепций.

Обзор Web3 параллельных вычислений: лучший способ нативного масштабирования?

Два, Параллельная усовершенствованная цепь EVM: Прорыв в производительности в рамках совместимости

Архитектура последовательной обработки Ethereum за время своего развития прошла через множество попыток масштабирования, включая шarding, Rollup и модульные архитектуры, однако узкое место в пропускной способности исполнительного уровня все еще не было преодолено принципиально. Тем не менее, EVM и Solidity по-прежнему являются наиболее развитыми платформами смарт-контрактов с точки зрения разработчиков и экосистемного потенциала. Таким образом, параллельные цепи на основе EVM становятся ключевым направлением, которое учитывает совместимость экосистемы и повышение производительности. Monad и MegaETH являются наиболее представительными проектами в этом направлении, строя архитектуру параллельной обработки EVM для сценариев высокой степени параллелизма и высокой пропускной способности, начиная с задержанного выполнения и разложения состояния.

Анализ механизма параллельных вычислений Monad

Monad - это высокопроизводительная блокчейн-сеть Layer1, заново спроектированная для виртуальной машины Ethereum (EVM), основанная на основном принципе параллельной обработки (Pipelining), осуществляющая асинхронное выполнение на уровне консенсуса (Asynchronous Execution) и оптимистичное параллельное выполнение на уровне исполнения (Optimistic Parallel Execution). Кроме того, на уровнях консенсуса и хранения Monad соответственно внедряет высокопроизводительный BFT-протокол (MonadBFT) и специализированную систему баз данных (MonadDB), обеспечивая оптимизацию от конца до конца.

Пайплайнинг: Механизм параллельного выполнения многоступенчатого конвейера

Пайплайнинг — это основная концепция параллельного выполнения Monad, суть которой заключается в разделении процесса выполнения блокчейна на несколько независимых этапов и параллельной обработке этих этапов, что формирует многослойную архитектуру конвейера. Каждый этап выполняется в независимых потоках или ядрах, обеспечивая параллельную обработку между блоками, что в конечном итоге приводит к повышению пропускной способности и снижению задержек. Эти этапы включают: предложение транзакции (Propose), достижение консенсуса (Consensus), выполнение транзакции (Execution) и подтверждение блока (Commit).

Асинхронное выполнение: консенсус - асинхронное декомпозирование выполнения

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

Ядро дизайна:

  • Процесс консенсуса (уровень консенсуса) отвечает только за упорядочение транзакций, не выполняя логику контрактов.
  • Процесс исполнения (уровень исполнения) асинхронно запускается после завершения консенсуса.
  • После завершения консенсуса немедленно переходите к процессу консенсуса следующего блока, не дожидаясь завершения выполнения.

Оптимистичное Параллельное Выполнение:乐观并行执行

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

Исполнительный механизм:

  • Monad будет оптимистично выполнять все транзакции параллельно, предполагая, что между большинством транзакций нет конфликтов состояния.
  • Одновременно запускается "Детектор конфликтов (Conflict Detector))" для мониторинга того, обращаются ли транзакции к одному и тому же состоянию (например, конфликты чтения/записи).
  • Если обнаружен конфликт, конфликтные транзакции будут сериализованы и повторно выполнены, чтобы обеспечить корректность состояния.

Monad выбрал совместимый путь: минимально изменяя правила EVM, он реализует параллельность в процессе выполнения, откладывая запись состояния и динамически определяя конфликты, больше похож на производительную версию Ethereum, с хорошей зрелостью, что облегчает миграцию экосистемы EVM, являясь параллельным ускорителем мира EVM.

Веб3 Параллельные вычисления: лучший вариант нативного масштабирования?

Анализ механизма параллельных вычислений MegaETH

В отличие от L1 позиционирования Monad, MegaETH позиционируется как модульный высокопроизводительный параллельный исполняющий слой, совместимый с EVM, который может использоваться как независимая L1 публичная цепочка, а также как слой улучшенного исполнения (Execution Layer) или модульный компонент на Ethereum. Его основная цель проектирования заключается в том, чтобы разделить логику аккаунта, исполняющую среду и состояние на независимые минимальные единицы, которые можно планировать отдельно, для достижения высокой параллельной обработки внутри цепочки и низкой задержки ответа. Ключевое новшество, предложенное MegaETH, заключается в архитектуре Micro-VM + State Dependency DAG (направленный ациклический граф зависимостей состояния) и модульном синхронном механизме, которые вместе создают параллельную исполнительную систему, ориентированную на "потоковую обработку внутри цепочки".

Архитектура Micro-VM (микровиртуальная машина): учетная запись как поток

MegaETH внедряет модель выполнения "микровиртуальной машины (Micro-VM) для каждого аккаунта", которая "потоковая" для среды выполнения, предоставляя минимальную единицу изоляции для параллельного планирования. Эти VM общаются друг с другом через асинхронные сообщения (Asynchronous Messaging), а не через синхронные вызовы, что позволяет множеству VM выполнять операции независимо и хранить данные независимо, обеспечивая естественную параллельность.

Зависимость состояния DAG: механизм планирования на основе графа зависимостей

MegaETH построила систему планирования DAG, основанную на доступе к состоянию аккаунтов, которая в реальном времени поддерживает глобальный граф зависимостей (Dependency Graph). Каждая транзакция моделирует, какие аккаунты изменяются и какие аккаунты читаются, все это представлено в виде зависимостей. Неконфликтующие транзакции могут выполняться параллельно, а транзакции с зависимостями будут планироваться и сортироваться по топологическому порядку последовательно или с задержкой. Граф зависимостей обеспечивает согласованность состояния и отсутствие повторных записей в процессе параллельного выполнения.

Асинхронное выполнение и механизм обратного вызова

MegaETH построен на основе парадигмы асинхронного программирования, аналогичной асинхронному обмену сообщениями в модели акторов, которая решает проблему традиционных последовательных вызовов EVM. Вызовы контракта являются асинхронными (нерекурсивное выполнение), и когда вызывается контракт A -> B -> C, каждый вызов является асинхронным без блокировки ожидания; Стек вызовов разворачивается в асинхронный граф вызовов; Обработка транзакций = обход асинхронного графа + разрешение зависимостей + параллельное планирование.

В общем, MegaETH разрушает традиционную модель однопоточной модели состояния EVM, реализуя микро-виртуальные машины на уровне аккаунтов, осуществляя планирование транзакций через граф состояния и заменяя синхронный стек вызовов асинхронным механизмом сообщений. Это платформа параллельных вычислений, которая была заново спроектирована по всем измерениям "структура аккаунта → архитектура планирования → процесс выполнения", предлагая новую парадигму для создания систем следующего поколения с высокой производительностью на цепочке.

MegaETH выбрал путь реконструкции: полностью абстрагировав счета и контракты в независимую VM, используя асинхронное выполнение для освобождения максимального потенциала параллелизма. Теоретически, параллельный предел MegaETH выше, но также труднее контролировать сложность, больше похож на супер распределенную операционную систему в духе Эфириума.

Web3 параллельные вычисления: лучший вариант нативного расширения?

Дизайнерские концепции Monad и MegaETH значительно отличаются от шардирования (Sharding): шардирование делит блокчейн на несколько независимых подцепей (шардов), каждая из которых отвечает за часть транзакций и состояний, разрушая ограничения единой цепочки на уровне сети; в то время как Monad и MegaETH сохраняют целостность единой цепочки, только горизонтально расширяясь на уровне выполнения, оптимизируя производительность за счет предельного параллельного выполнения внутри единой цепочки. Оба представляют собой два направления в пути расширения блокчейна: вертикальное усиление и горизонтальное расширение.

Проекты параллельных вычислений, такие как Monad и MegaETH, сосредоточены на оптимизации пропускной способности, с основной целью повышения TPS в блокчейне, достигая параллельной обработки на уровне транзакций или аккаунтов с помощью отложенного выполнения (Deferred Execution) и архитектуры микровиртуальной машины (Micro-VM). Pharos Network, как модульная, полностековая параллельная сеть L1 блокчейна, использует механизм параллельных вычислений, известный как "Rollup Mesh". Эта архитектура поддерживает многовиртуальную среду (EVM и Wasm) через совместную работу основной сети и сети специальной обработки (SPNs) и интегрирует передовые технологии, такие как нулевое доказательство (ZK) и доверенная вычислительная среда (TEE).

Анализ механизма параллельных вычислений Rollup Mesh:

  1. Полный жизненный цикл асинхронной конвейерной обработки (Full Lifecycle Asynchronous Pipelining): Pharos разъединяет различные этапы транзакции (такие как консенсус, выполнение, хранение) и использует асинхронный способ обработки, что позволяет каждому этапу выполняться независимо и параллельно, тем самым повышая общую эффективность обработки.
  2. Параллельное выполнение двух виртуальных машин (Dual VM Parallel Execution): Pharos поддерживает две среды виртуальных машин: EVM и WASM, позволяя разработчикам выбирать подходящую среду выполнения в зависимости от требований. Эта архитектура с двумя виртуальными машинами не только повышает гибкость системы, но и увеличивает пропускную способность обработки транзакций за счет параллельного выполнения.
  3. Специальные сети обработки (SPNs): SPNs являются ключевыми компонентами архитектуры Pharos, похожими на модульные подсети, специально предназначенные для обработки определенных типов задач или приложений. С помощью SPNs Pharos может реализовать динамическое распределение ресурсов и параллельную обработку задач, что дополнительно увеличивает масштабируемость и производительность системы.
  4. Модульный консенсус и механизм повторной стейкинга (Modular Consensus & Restaking): Pharos вводит гибкий механизм консенсуса, поддерживающий различные модели консенсуса (такие как PBFT, PoS, PoA), а также через протокол повторной стейкинга (Rest
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 8
  • Репост
  • Поделиться
комментарий
0/400
AirdropBuffetvip
· 08-01 11:54
Белые деньги потратили на аирдроп.
Посмотреть ОригиналОтветить0
TeaTimeTradervip
· 08-01 05:18
Сложные задачи нужно решать медленно.
Посмотреть ОригиналОтветить0
SatoshiSherpavip
· 07-31 06:56
Безопасность по-прежнему является приоритетом.
Посмотреть ОригиналОтветить0
CryptoDouble-O-Sevenvip
· 07-31 04:04
Безопасность превыше всего
Посмотреть ОригиналОтветить0
BrokenDAOvip
· 07-31 03:59
Оптимизация более сильной цепи
Посмотреть ОригиналОтветить0
MetaverseVagabondvip
· 07-31 03:58
Увеличение пропускной способности — это правильное решение.
Посмотреть ОригиналОтветить0
BearHuggervip
· 07-31 03:56
Исполнительный уровень является ключевым моментом.
Посмотреть ОригиналОтветить0
LiquidationKingvip
· 07-31 03:54
Ключевым является изоляция состояния
Посмотреть ОригиналОтветить0
  • Закрепить