精易论坛

标题: 易语言黑月的执行效率 [打印本页]

作者: 古龙若风    时间: 2015-8-7 09:00
标题: 易语言黑月的执行效率
本帖最后由 古龙若风 于 2015-8-7 09:11 编辑

都说易语言黑月具有中文c++的美誉,但是它的执行效率具体怎么样呢?人云亦云是不行的,具体还是自己测试一下,为了对比我用了易语言静态编译,易语言黑月编译,c++编译进行测试。编写同样的控制台应用程序,以下是执行结果。
首先是易语言控制台代码:
.版本 2

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 A, 长整数型
.局部变量 i, 整数型
.局部变量 D, 长整数型

A = 取启动时间 ()
.计次循环首 (100000000, i)
    D = D + i
.计次循环尾 ()
标准输出 (, 取启动时间 () - A)
标准输入 ()

返回 (0)  ' 可以根据您的需要返回任意数值
静态编译后执行结果如图:


然后是黑月编译的执行图:


最后看看c++的:


结论:易语言静态编译执行效率低这个大家都知道,c++要400多 毫秒,易语言静态编译执行要2000多毫秒,但是经测试黑月的执行效率最低,需要5000多毫秒,可见,黑月的执行效率比易语言静态编译效率还要低,至于用黑月我想主要是用于减少体积和减少误报,本次经过多次测试,可供大家参考,为什么都说易语言只能编写小程序,其实这个方面也可以作为一个很大的原因。


作者: Godsteal    时间: 2015-8-7 09:03
结论:易语言静态编译执行效率低这个大家都知道,c++要400多 毫秒,易语言静态编译执行要2000多毫秒,但是经测试黑月的执行效率最低,需要5000多毫秒,可见,黑月的执行效率比易语言静态编译效率还要低,至于用黑月我想主要是用于减少体积和减少误报,本次经过多次测试,可供大家参考。

作者: dlam烧饭    时间: 2015-8-7 09:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: 男朋友    时间: 2015-8-7 10:07
黑月没用
作者: skybbnn    时间: 2015-8-7 10:37
没使用过黑月 应该是减少误报的听人说
作者: 道言    时间: 2015-8-7 10:46
这个可以有
作者: 凌天羽    时间: 2015-8-8 00:29
嗯,易语言执行效率目前的确赶不上C++
作者: 海颜贝尔    时间: 2015-8-10 11:26
不过黑月可以减少内存占用,画界面是件痛苦的事情,我一般用于dll编译
作者: 易达通讯    时间: 2016-1-7 18:09
你咋不用置入代码试试
作者: yangcongwen    时间: 2016-8-5 19:08
我复制了你的代码在我的破电脑上测试了下:
调试运行:2808,1529,1545,1529,1513,平均值1784.8
静态编译:1513,1514,1513,1528,1514,平均值1516.4
独立编译:1529,1529,1513,1513,1529,平均值1522.6
黑月编译:1514,1514,1514,1513,1514,平均值1513.8
我不知道楼主的数据怎么得出来的。欢迎大家都来拼一下速度。
另外,建议搞点循环运算的来测测,这个取启动时间的只反映了启动速度,不能反映运行速度。
作者: jingyi11023995    时间: 2016-12-11 10:18
减少体积,减少误报,画界面一点都不难,有黑月资源编辑器。
作者: BILLC090910    时间: 2018-1-5 11:13
yangcongwen 发表于 2016-8-5 19:08
我复制了你的代码在我的破电脑上测试了下:
调试运行:2808,1529,1545,1529,1513,平均值1784.8
静态编译 ...

我也测试过其实四种编译方式编译之后除掉极端值其实是差不多的 另外跟程序实际运行速度相关的还有系统进程的调度和教程占的内存 另外如果追求黑月性能最大化可以设置编译类型为汇编模式
作者: BILLC090910    时间: 2018-1-5 12:13
本帖最后由 BILLC090910 于 2018-1-5 12:16 编辑

.版本 2
.支持库 spec

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 A, 长整数型
.局部变量 i, 整数型
.局部变量 D, 长整数型

A = 取启动时间 ()
.计次循环首 (100000000, i)
    置入代码 ({ 139, 69, 0, 3, 69, 248 })
.计次循环尾 ()
标准输出 (, 取启动时间 () - A)
调试输出 (i)
标准输入 ()
返回 (0)  ' 可以根据您的需要返回任意数值



作者: BILLC090910    时间: 2018-1-6 12:01
.版本 2
.支持库 spec

.程序集 程序集1

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 A, 长整数型
.局部变量 i, 整数型
.局部变量 D, 长整数型

A = 取启动时间 ()
.计次循环首 (100000000, i)
    ' D = D + i
    置入代码 ({ 139, 69, 0, 3, 69, 248 })
    ' 调试输出 (i)
.计次循环尾 ()
标准输出 (, 取启动时间 () - A)
调试输出 (i)
标准输入 ()

作者: BILLC090910    时间: 2018-1-6 12:03
.版本 2
.支持库 spec

.程序集 程序集1

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 A, 长整数型
.局部变量 i, 整数型
.局部变量 D, 长整数型

A = 取启动时间 ()
.计次循环首 (100000000, i)
    ' D = D + i
    置入代码 ({ 139, 69, 0, 3, 69, 248 })
    ' 调试输出 (i)
.计次循环尾 ()
标准输出 (, 取启动时间 () - A)
调试输出 (i)
标准输入 ()



作者: quxiangxun    时间: 2018-9-26 14:55
真的吗 ????
作者: 荖貢    时间: 2019-2-14 14:33
你这种测试根本就不全面,多加一些代码就知道谁的效率高了




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4