CyberMiles 在极端情况下可以到它宣传的几万倍,但绝大多数普通合约的提升是几到几十倍。
CyberMiles提高EVM性能的方式是通过Ethereum Native Interface(ENI)来完成的。就是将一系列操作编译成一个指令,智能合约可以直接调用编译好的library。通过这种方式达到提升性能的目的。越是复杂的操作,它节省的指令就越多,提升的也就越大。对加法的提升是11倍,乘法是13倍,排序是200倍。
要达到这点需要三方面:
1 编写ENI,并编译成library以供EVM调用。
CyberMiles创建了C++项目libeni https://github.com/CyberMiles/libeni
开发文档:https://libeni.readthedocs.io/en/latest/getting-started.html
2 智能合约编译器在编译合约时要生成相应library的字节码。
CyberMiles基于solidity扩展出一个新语言Lity, https://github.com/CyberMiles/lity。(类似我们之前的做法)
开发文档:https://lity.readthedocs.io/en/latest/getting-started.html
3 扩展EVM,让EVM可以识别编译好的library,并在执行时能够直接调用。
https://github.com/CyberMiles/travis
CyberMiles的CVM提升性能的方式
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1. Re-Entrancy重新入口 以太坊智能合约的一个特点是能够调用和使用其他外部合约的代码。合约也通常可以处...