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

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

Один, вечная тема масштабирования блокчейна

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

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

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

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

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

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

А знакомые нам Rollup или решения по шардинг-расширению относятся к системным механизмам параллелизма и не являются параллельными вычислениями на уровне цепочки. Они достигают расширения за счет "параллельного выполнения нескольких цепей/исполнительных доменов", а не за счет повышения параллелизма внутри одного блока/виртуальной машины. Такие решения по расширению не являются основной темой данной статьи, но мы все равно будем использовать их для сравнения различий в архитектурных концепциях.

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

II. EVM-система параллельного улучшения цепи: прорыв производственных границ в совместимости

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

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

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

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

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

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

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

Основной дизайн:

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

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

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

Механизм исполнения:

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

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

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

Анализ параллельного вычислительного механизма 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 выбрал путь реконструкции: полностью абстрагировать учетные записи и контракты в независимую виртуальную машину, используя асинхронное выполнение для раскрытия предельного параллельного потенциала. Теоретически, параллельный предел MegaETH выше, но также труднее контролировать сложность, больше похожа на суперраспределенную операционную систему в духе Ethereum.

Панорамная карта параллельных вычислений 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), и через повторное стекинг
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 6
  • Поделиться
комментарий
0/400
MrRightClickvip
· 07-24 23:24
Масштабирование — это бездонная бочка.
Посмотреть ОригиналОтветить0
CrossChainBreathervip
· 07-24 23:24
Снова обсуждают план расширения~
Посмотреть ОригиналОтветить0
GmGmNoGnvip
· 07-24 23:19
GPU снова захватывает web3?
Посмотреть ОригиналОтветить0
NotGonnaMakeItvip
· 07-24 23:19
Ай-йо, сколько бы ты ни говорил, всё равно не сдвинешь.
Посмотреть ОригиналОтветить0
DecentralizeMevip
· 07-24 23:10
Ну и дела, Блокчейн снова играет с параллельными вселенными?
Посмотреть ОригиналОтветить0
GateUser-1a2ed0b9vip
· 07-24 23:04
Расширение пришло, но скорость не увеличивается?
Посмотреть ОригиналОтветить0
  • Закрепить