이더리움과 이오스는 같은 VM기술 활용에 따라 성능차이가 정반대인 이유가 궁금합니다.
이더리움은 VM 때문에 느리고 복잡하여 차후에는 VM을다른것으로 대체하는 것으로 알고 있습니다. 그런데 반대로 이오스는 오히려 VM기술을 활용하여 초기 성능보다 16배 지금보다 8배나 높일 수 있다고 하는데요. 이더리움과 이오스가 어떻게 다르기에 같은 VM기술을 가지고도 극명한 차이를 보이는지 궁금합니다.
답변 감사합니다.
결론적으로 말씀드리자면 현재의 EVM과 EOS VM의 가장 큰 차이는 웹어셈블리 엔진이냐 아니냐에 따라서 성능이 극명하게 차이가 난다고 할 수 있습니다.
현재의 EVM(이더리움 가상 머신)은 솔리디티라는 스마트 컨트랙트 작성용 언어를 통해 만들어진 스마트 컨트랙트를 바이트코드로 컴파일링한 후 실행을 하게 됩니다. 따라서 스마트 컨트랙트의 실행에서 더 많은 과정을 거쳐야 하므로 속도가 상대적으로 느릴 수 있습니다.
그 이유는 '솔리디티'라는 것 자체가 애초에 고급 언어이고 사람이 이해할 수 있도록 만들어져 있기 때문에 기계가 이해하고 실행할 수 있는 기계어로 바꾸는 컴파일링이 필요하기 때문입니다.
반면에 EOS VM은 웹어셈블리 엔진으로, 별도의 컴파일링 과정이 없이도 스마트 컨트랙트를 빠르게 실행하는 것이 가능합니다.
웹어셈블리 언어라는 것은 W3C에서 제공하는 기계어와 가까운 언어이기 때문에 이러한 웹어셈블리 언어를 지원하는 VM은 스마트 컨트랙트 실행 및 연산 성능이 대폭 향상 될 수 있는 것입니다.
그렇기 때문에 EVM과 EOS VM이 성능 차이가 있는 것이고 EVM의 경우에도 앞으로 eWASM이라고 하여 '이더리움 웹어셈블리'로 개선이 될 예정이므로 스마트 컨트랙트의 실행과 연산, 처리가 더욱 빨라질 것으로 기대됩니다.
답변이 도움이 되길 바랍니다.