区块链虚拟机跑分大赛
发布于 2 个月前 作者 msicyness 27437 次浏览 来自 以太坊

关注CyberMiles的朋友应该可以注意到,CM的官网多了一块内容“技术基准”,里面描述了CyberMiles的虚拟机和以太坊的虚拟机的速度对比,我们可以一起来看下具体情况。

1.虚拟机跑分<CyberMiles的CVM> VS <ETH的EVM> 第一回合“加法” 加法对比视频 https://v.qq.com/x/page/m0702yfgetx.html 从每个人都必学的加法说起,同样运行2000万次加法,以太坊虚拟机EVM需要35.3秒,而CyberMiles虚拟机CVM只需要3.26秒。 再考虑到吞吐量(TPS)方面,CyberMiles有着100倍的增量。 因此CVM在加法运算比EVM快1150倍。 升级到乘法,同样运行1000万次乘法,EVM需要35.33秒,CVM只需要2.96秒,加上100倍的TPS,CVM比EVM快1280倍。 乘法就不做具体的视频展示,感兴趣的朋友可以前往官网cybermiles.io查看。

2.虚拟机跑分<CyberMiles的CVM> VS <ETH的EVM> 第二回合“整数排序” 整数排序对比视频 https://v.qq.com/x/page/r0702vnoact.html CVM连闯两关获胜,下一关,比较复杂的冒泡排序运算。 冒泡排序是常见的算法,广泛应用在许多商业场景中。 同样运行6万次冒泡排序,EVM耗时48.01秒,CVM只需要0.45秒。 同样,考虑到TPS,CVM比EVM实际上快19900倍。

3.虚拟机跑分<CyberMiles的CVM> VS <ETH的EVM> 第三回合“计算Scrypt” 计算Scrypt对比视频 https://v.qq.com/x/page/p07023c5y0m.html 再来看最后一关:计算scrypt,这是其中最复杂的运算。 scrypt是指用以太坊智能合约跨链验证比特币交易。 严格来说,scrypt目前在以太坊是很难实现的。根据Vitalik Buterin的描述,这将花费3.7亿 gas。以正常的gas 价格计算,需要1个ETH。 即便价格不是问题,但每个以太坊区块只能消耗800万gas,因此在单一交易中完成 scrypt 是不可能的。 在实际生活中,接受包括比特币在内的多种加密货币作为支付方式是常见的电商场景。因此,电商应用的智能合约必须能够验证比特币交易。而验证过程的关键步骤就是使用Scrypt算法计算交易区块的header。 所以,专为电商优化的CyberMiles 做到了0.051秒计算scrypt结果。 在这个对比中,EVM是在非常理想的运行环境。只运行这一项操作,并且不考虑成本,只计算时间,需要920秒,超过了15分钟。 直接对比之下,CVM比EVM快了18039倍。 算到这里,想要和大家说的秘密已经呼之欲出。 从加法、乘法、冒泡排序,再到计算scrypt,难度逐渐升级,CVM的性能表现也越来越好。 与EVM相比,CVM不仅有万倍的性能提升,并且越是复杂的运算,CVM越有优势。 相关代码已经在官网公开,欢迎大家去测试!

1 回复

据DAppRadar的数据显示,以太坊上所有的DApp的日活合计不达1万。众所周知,底层区块链基础设施性能差是DApp部署的最大障碍,导致了成本高,用户体验差等问题。 以太坊平台只能支持每秒25次交易(TPS),一个小型网站都可以把这样的速度甩出几条街,远未达到商用的要求。因此,区块链基础设施技术的早期努力主要集中在提高TPS上。 CyberMiles 也不例外,采用DPoS共识机制,可以达到以太坊TPS的100倍,但完全向后兼容以太坊, 在众多号称“百万TPS”的项目集中“轰炸”下,TPS的问题看似得到了很好地解决。 但,这还远远不够。 TPS 类似于计算机系统中的I / O吞吐量(例如网络带宽)。I / O快速很有必要,但仅靠此,不足以实现迅捷的用户体验。 快速的CPU是不可或缺的。 那么类比到区块链世界,计算机中的“CPU”就是区块链的“虚拟机”。 媒体报道称,以太坊虚拟机改造是在进行“心脏手术”,虚拟机的重要性可见一斑。 对比以太坊虚拟机,CyberMiles虚拟机CVM性能已然提升了20,000倍,依然能够保持向后全兼容以太坊。 21.png 通过严格可比的性能测试,可以看出,CyberMiles虚拟机(CVM)的速度在基本算法运行方面提高了10到200倍。再考虑到吞吐量(TPS)方面有着100倍的增量,CyberMiles比以太坊快20,000倍。 特别值得注意的是,虚拟机性能的大幅提升,使之前不可能的应用成为可能。例如,以太坊社区的经典难题,如何通过智能合约跨链验证比特币交易。 “目前需要约3.7亿 gas来验证一个scrypt实例。”以太坊联合创始人 Vitalik Buterin在2015年曾经计算过。 因此保守估计,以太坊区块链需要46个区块,加上连续消耗计算资源(即gas),才能完成验证比特币交易所需的scrypt操作。

回到顶部