저자: Nikki Xiaochu 출처: medium
병렬 EVM은 요즘 새로운 유행어가 되었습니다. 지난 몇 년 동안 TPS를 높이는 것이 지칠 줄 모르는 과제였다는 것을 알고 있습니다. <롤업 기술로 대표되는 레이어2(Layer2)가 속속 도입되고 있습니다. 그리고 병렬 EVM은 TPS를 수백만까지 확장할 수 있으며, 이는 l2보다 훨씬 더 가치가 있습니다.
반면 병렬 EVM은 아직 초기 단계에 머물러 있습니다. 레이어2에 비해 병렬 EVM은 올해 4월 3,800만 달러의 투자를 받은 무브먼트 랩스(Movement Labs)와 같이 최근 자본의 주목을 받고 있습니다.
일각에서는 현재 활성 사용자 수가 많은 상황에서 TPS를 지속적으로 개선할 필요가 있느냐고 질문할 수 있습니다. 대답은 매우 필요하며, 인프라를 지속적으로 개선해야만 애플리케이션 측면의 기술 혁신이 이루어질 수 있다는 것입니다. 퍼블릭 체인의 성능을 개선하는 것은 인간이 더 빠른 CPU/GPU 하드웨어나 더 빠른 네트워킹 속도를 추구해온 것처럼 인간의 유전자에 새겨져 있는 것 같습니다. <2G 문자 메시지 시대에 모바일 인터넷 혁명이 어떻게 일어날 수 있었을지 상상해 보세요. <그리고 블록체인 산업에서는 TPS가 비약적으로 향상될 때마다 새로운 유형의 애플리케이션 혁신이 가능합니다.
우리는 TPS를 높이기 위해 여러 방면에서 노력해왔고, 일부는 성공하고 일부는 실패했습니다. 예를 들어, 우리는 블록 크기를 늘리려고 노력해왔고,BTC 포크에서 BCH와 BSV로 이어진 새로운 합의 메커니즘의 채택, 블록 아웃 시간 단축 등이 지난 사이클에서 서서히 성숙되어 제자리를 잡았을 것입니다. 그리고 마지막 사이클은 주로 롤업 퍼블릭 체인을 중심으로 한 4천왕에 가장 근접했습니다. 그리고 이번 사이클은 평행 EVM이 완성되어 착륙한 것일지도 모릅니다.
병렬 실행이란 무엇인가요?
병렬이라고 하면 반드시 직렬이 있어야 합니다. 직렬화는 일을 하나씩 순차적으로 수행하는 과정이며, 직렬화와 병렬화의 차이는 간단합니다. 지금 황산으로 여행을 가고 싶은데 입구에 개찰구가 하나만 있다고 가정하면, 모든 사람이 차례로 돌아가며 티켓을 확인하면서 한 명씩 통과할 수 있는데, 이것이 직렬화입니다. <그리고 휴일에는 많은 사람들로 인해 관광 명소가 10 개의 개찰구를 직접 열면 10 배의 효율성을 통해 관광객이 10 개의 다른 장소에 배치됩니다.
이를 병렬이라고합니다. 우리의 컴퓨터는 병렬로 작동할 수 있으므로 블록체인이 병렬로 작동할 수 있다는 것은 당연한 이치입니다.
대부분의 퍼블릭 체인, 주로 이더리움은 현재 직렬식입니다. 병렬화의 장점은 크지만,블록체인 세계에서는 구현하기가 매우 어렵기도 합니다. 예를 들어, 주소 A에서 주소 B로 이더리움을 전송할 때 전송을 처리하는 데 시간이 걸립니다. 처리 시점에 주소 A는 병렬 처리를 통해 주소 C로 이더리움 전송을 처리할 수 있습니다. 그러면 B와 C 모두 이더를 받게 됩니다.따라서 병렬 처리는 세부적으로 보면 간단하지 않습니다. 업계에서는 병렬 실행의 충돌을 해결하기 위해 세 가지 실행 메커니즘, 즉 메시지 전달 메커니즘, 공유 메모리 메커니즘, 엄격한 상태 액세스 목록 메커니즘을 고안했습니다.
물론 병렬 실행이 그리 낯선 것은 아니며, Move 언어로 개발된 Solana, Aptos, Sui는 모두 병렬로 실행됩니다. 이들의 TPS는 쉽게 10k를 초과할 수 있습니다. 하지만 이들은 EVM과 호환되지 않고, 자체적인 VM을 가지고 있으며, 전 세계가 잘라내어 말린 것과 같습니다. 그리고 병렬 EVM의 목적은 EVM과 호환되고 병렬로 실행하는 것입니다.
병렬 EVM에는 두 가지 방향이 있을 수 있습니다
첫 번째는 현재 병렬로 실행되는 퍼블릭 체인을 EVM과 호환되도록 만드는 것입니다.
예를 들어, 네온은 솔라나 네트워크의 EVM 시뮬레이터로, 디앱의 프런트엔드에서 전송된 이더 트랜잭션을 프록시 변환하여 솔라나 트랜잭션을 생성한 다음 체인 상태를 수정하는 시뮬레이터에서 실행하는 역할을 합니다.
두 번째는 EVM 시스템에서 병렬 실행을 추가하는 것입니다.
두 번째에는 두 가지 하위 범주가 있습니다. 첫 번째 하위 범주는 병렬 실행을 통해 기존 퍼블릭 체인을 활용하는 가상 머신입니다. <현재 성숙한 애플리케이션을 달성한 세 가지 주요 유형이 있는데, 솔라나, Aptos/Sui for the Move 언어, 그리고 비트코인용 UXTO 모델입니다. <예를 들어 무브 랩은 무브를 참조하고 트랜잭션을 실행한 다음 이더리움에서 정산하는 가상 머신입니다. 네온과 반대로 작동하는 셈입니다.
루미오는 SVM, 병렬 EVM, MoveVM을 포함한 임의의 VM을 지원하는 최초의 VM 추상화를 목표로 하고 있으며, 톤, 비트코인 등과 같은 다른 에코시스템도 지원할 계획입니다. 개발자가 모든 체인에서 모든 VM을 사용하여 배포할 수 있도록 지원합니다.
반면, 모나드는 병렬 실행을 위한 자체 로직을 작성하는 두 번째 하위 범주에 속합니다. <모나드는 이더넷 가상 머신을 위한 두 가지 메커니즘, 즉 슈퍼스칼라 파이프라이닝 기법과 개선된 낙관적 병렬 처리 메커니즘을 도입합니다. <이 중 하나인 슈퍼스칼라 파이프라이닝은 트랜잭션의 실행 단계를 병렬화합니다. 현재 성능은 10,000 TPS에 달합니다.
운동 연구소
운동 언어는 스마트 계약을 위해 Facebook에서 설계한 안전하고 안전한 프로그래밍 언어입니다. 소유권과 보안에 중점을 두고 있습니다. Move의 자산은 리소스로 표현됩니다. 강력한 소유권 모델과 명시적인 리소스 기능 덕분에 Move는 자산의 소유권 이전, 발행, 소멸과 같은 일반적인 블록체인 작업을 위한 안전한 스마트 컨트랙트 개발을 간소화합니다.
수이와 앱토스가 선택한 것은 무브에 기반한 독립형 퍼블릭 체인을 개발하는 것이었습니다. 문제는 이것이 EVM 개발자들에게는 완전히 새로운 언어라는 점이며, Movement Lab은 EVM 에코시스템과 함께 Move 실행 환경과 Move 언어의 이점을 제공하는 에테리얼 레이어 2입니다.
무브먼트 랩의 주력인 M1 및 M2 네트워크와 이를 지원하는 강력한 도구 세트를 제공합니다. M2 메인 네트워크가 출시될 예정이며, 이는 Move 언어를 기반으로 하는 이더넷 최초의 레이어 2 솔루션이 될 것입니다. 이는 Sui Move와 Aptos Move를 포함한 여러 Move 구현과 임베디드 EVM 인터프리터인 MEVM을 지원하며, 이를 통해 Sui, Aptos, EVM 기반 플랫폼 등 다양한 에코시스템의 개발자들이 레이어 2 솔루션을 활용할 수 있게 될 것입니다.
M2의 주요 기능 중 하나는 EVM 병렬화 기능입니다. Move 언어와 Sui의 병렬화 모델을 활용하여 EVM 트랜잭션의 높은 처리량과 짧은 지연 시간을 구현할 수 있습니다. <이는 객체 중심 스토리지와 트랜잭션을 병렬로 실행하는 기능을 통해 달성할 수 있습니다. EVM 병렬화 접근 방식은 EVM 바이트코드를 Move 바이트코드로 변환한 다음 병렬로 실행하는 것입니다. 이 변환 프로세스는 원래 EVM 코드의 의미를 유지하면서 Move 언어와 Sui 실행 모델에서 제공하는 병렬화를 활용할 수 있게 해줍니다.
무브먼트 랩 네트워크의 성장과 채택을 촉진하기 위해 팀은 무브먼트 SDK, 무브먼트 CLI, 프랙탈, 하이퍼레인 메시징 인프라도 개발하고 있습니다. 이러한 도구는 개발자가 플랫폼에서 애플리케이션을 쉽게 빌드하고 배포하는 데 필요한 리소스를 제공합니다. 이 구현은 EVM과 완벽하게 호환되므로 플랫폼에 Uniswap 또는 스마트 컨트랙트를 배포하는 데 단 10분이면 충분합니다
현재 가장 핫한 모듈 중 하나인 무브먼트 랩은 실행 레이어에 속하며 MoveVm의 뛰어난 성능과 보안에 기반하고 있습니다. 누구나 실행 레이어2를 실행할 수 있으며,셀레스티아, 아이겐레이어, NEAR를 DA로 사용하는 Arbitrum Orbit, OP Stack, 폴리곤 CDK 중 하나를 선택한 다음 무브먼트 랩의 VM을 사용하여 공유 시퀀서에 실행 및 연결할 수 있습니다.