首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

同一个DLL,在两个程序中的处理速度差别很大

2013-11-06 
同一个DLL,在两个程序中的处理速度差别很大,求助此DLL专门用来处理数据的,比如在第一个程序中,处理时间为8

同一个DLL,在两个程序中的处理速度差别很大,求助
此DLL专门用来处理数据的,比如在第一个程序中,处理时间为80s;在第二个程序中,处理时间为110s;随着数据量的增加,时间差异会加大。
是什么原因?求助啊 DLL?两个程序?执行速度
[解决办法]
你确定是dll引起的时间差异?也许是调用者本身有问题

另外,dll反应出来的速度差别应该是来源判断分支,调用者的数据如果让dll处理进入耗时长的分支,则耗时必然时间会比较长
[解决办法]

引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

你确定是dll引起的时间差异?也许是调用者本身有问题

另外,dll反应出来的速度差别应该是来源判断分支,调用者的数据如果让dll处理进入耗时长的分支,则耗时必然时间会比较长

两者处理同一份数据


两个程序的代码完全相同?

两个程序都是创建一个线程,然后加载DLL进行数据处理,代码是一样的

看一下两者CPU占用时间等是否相同,应该还是调度等区别
[解决办法]
两个程序中DLL的基地址是否一致排除地址冲突而导到的加载延迟。
1.常规做法,打log。
2.高级方法
用vmmap看一下资源占用情况。
xperf测试性能。
把链接选项的profile打开,用VS2010或以上的性能监视工具Check一下。

热点排行