• bitcoinBitcoin (BTC) $ 63,111.00
  • ethereumEthereum (ETH) $ 2,447.57
  • tetherTether (USDT) $ 1.00
  • usd-coinUSDC (USDC) $ 1.00
  • dogecoinDogecoin (DOGE) $ 0.105245
  • tronTRON (TRX) $ 0.150797
  • cardanoCardano (ADA) $ 0.350690
  • bitcoin-cashBitcoin Cash (BCH) $ 348.75
  • chainlinkChainlink (LINK) $ 11.32
  • daiDai (DAI) $ 1.00
  • leo-tokenLEO Token (LEO) $ 5.54
  • litecoinLitecoin (LTC) $ 65.86
  • moneroMonero (XMR) $ 173.02
  • stellarStellar (XLM) $ 0.095729
  • ethereum-classicEthereum Classic (ETC) $ 18.73
  • okbOKB (OKB) $ 39.98
  • crypto-com-chainCronos (CRO) $ 0.082010
  • hedera-hashgraphHedera (HBAR) $ 0.052382
  • vechainVeChain (VET) $ 0.022457
  • cosmosCosmos Hub (ATOM) $ 4.49
  • makerMaker (MKR) $ 1,553.76
  • algorandAlgorand (ALGO) $ 0.131261
  • kucoin-sharesKuCoin (KCS) $ 7.44
  • eosEOS (EOS) $ 0.500446
  • neoNEO (NEO) $ 9.73
  • tezosTezos (XTZ) $ 0.673331
  • true-usdTrueUSD (TUSD) $ 1.00
  • zcashZcash (ZEC) $ 32.09
  • iotaIOTA (IOTA) $ 0.130837
  • bitcoin-goldBitcoin Gold (BTG) $ 23.06
  • dashDash (DASH) $ 25.06
  • basic-attention-tokenBasic Attention (BAT) $ 0.180472
  • 0x0x Protocol (ZRX) $ 0.306752
  • ravencoinRavencoin (RVN) $ 0.017585
  • qtumQtum (QTUM) $ 2.33
  • decredDecred (DCR) $ 12.63
  • ontologyOntology (ONT) $ 0.178874
  • nemNEM (XEM) $ 0.017950
  • iconICON (ICX) $ 0.136865
  • liskLisk (LSK) $ 0.835550
  • wavesWaves (WAVES) $ 1.06
  • paxos-standardPax Dollar (USDP) $ 1.01
  • huobi-tokenHuobi (HT) $ 0.267205
  • bitcoin-diamondBitcoin Diamond (BCD) $ 0.067759
  • bytomBytom (BTM) $ 0.005089
Эфириум

Виталик Бутерин предложил способ увеличения эффективности EVM

Специализация и параллелизация вычислений способствуют повышению эффективности и безопасности. Об этом в новом эссе написал сооснователь Ethereum Виталик Бутерин.

Glue and coprocessor architectures:https://t.co/7CwdzKR0ix

— vitalik.eth (@VitalikButerin) September 2, 2024

По мнению криптографа, это открывает возможности для увеличения децентрализации и упрощения аудита кода.

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

  1. Относительно небольшое количество сложной, но не требующей больших затрат бизнес-логики.
  2. Большое количество интенсивной, но высокоструктурированной «дорогой работы».

В первом случае лучше подходит обработка с помощью архитектуры, которая может иметь более низкую эффективность, но должна обладать очень высокой общностью (generality), во втором — с помощью архитектуры с противоположными свойствами.

В EVM эти две формы выполнения обрабатываются по-разному. Сложная бизнес-логика пишется на языке более высокого уровня вроде Solidity, который компилируется в виртуальной машине.

«Дорогая работа» запускается опкодами EVM (SLOAD и т. д.), но свыше 99 % фактических вычислений производится в специализированных модулях непосредственно внутри клиентского кода (или даже библиотек).

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

Данные: vitalik.eth.limo.

Соучредитель Ethereum пояснил, что представленная выше схема упрощена, поскольку на практике, к примеру в архитектуре ZKP, существует более двух уровней на кривой компромисса между эффективностью и общностью. Но, если упростить, достаточно думать о двух уровнях. Параллели этому есть во многих областях вычислений.

Данные: vitalik.eth.limo.

Согласно Бутерину, вычисления только недавно стали настолько быстрыми, что затраты на бизнес-логику стали действительно незначительными. Это создало предпосылки для оптимизации VM, в которой выполняется бизнес-логика, для целей, отличных от эффективности — удобства для разработчиков, привычности, безопасности и т. п.

При этом специализированные «сопроцессорные» модули могут продолжать разрабатываться с учетом эффективности и получать свои свойства безопасности и удобства для разработчиков из относительно простого «интерфейса», который они имеют с «клеем», добавил он.

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

Продолжая повествование, Бутерин делает вывод, что «клей» следует оптимизировать для улучшения его свойств, равно как и сопроцессоры.

Соучредитель Ethereum убежден, что EVM не обязательно должны быть эффективными, они просто должны быть знакомыми. Вычисления в неэффективной VM можно улучшить за счет добавления нужных сопроцессоров («прекомпиляторов»).

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

Бутерин считает лучшими способами улучшения виртуальной машины:

  • добавление оптимальных прекомпиляций или специализированных опкодов;
  • совершенствование компоновки хранилища.

В заключение соучредитель Ethereum отметил, что перечисленные тенденции позволяют:

  1. Увеличить эффективность специализации на стороне клиента, это улучшает способность выполнять чувствительные и требовательные к производительности вычисления локально на аппаратном обеспечении пользователя.
  1. Создают широкие возможности для того, чтобы стремление к эффективности не нарушало другие ценности, в первую очередь безопасность, открытость и простоту. Это несет пользу для криптографии, поскольку она олицетворяет «дорогие структурированные вычисления», которые ускоряются благодаря подобной тенденции. Последнее создает предпосылки для повышения безопасности и большего фокуса на оптимизации прекомпиляций и других функций, которые «живут» вместе с VM.
  1. Открывает возможность для участия небольших и новых игроков. Если вычисления становятся менее монолитными и более модульными, это значительно снижает барьер для входа. Даже имея ASIC для одного типа вычислений, можно добиться успеха. То же самое будет происходить и в областях ZKP и оптимизации EVM. Написание кода с эффективностью, близкой к «пограничной», становится намного проще и доступнее. Это облегчает его аудит и формальную верификацию.

Напомним, в августе разработчики проекта Starknet представили механизм одновременного исполнения нескольких транзакции в решении второго уровня.

Ранее ForkLog дополнил образовательные карточки материалом на тему параллелизации и ее влияния на масштабирование блокчейнов.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»