大家好
小弟最近撰写一个matlab程式
需要连续大量呼叫一个外部执行档
假设是 test.exe (compiled by c++)
但发现每次执行的"延迟"很久
ex.
tic
!test.exe
t1=toc
t1 大概都在 200ms 以上
本来怀疑是执行档本身的问题
所以换成单纯执行一个简单 dir 或 cd.. 指令
tic
!dir % 或cd..
t1=toc
但 t1 还是一样久 (200~300ms)
似乎是 MATLAB 一呼叫外部执行档就会有一个固定的延迟 ??
当呼叫次数一多,整个程式执行时间就会变的很长 ...
我自己的系统是 win7 64bit , CPU 是 core-i5 搭配 4GB ram
MATLAB 有试过以下版本
2014a 64bit
2014a 32bit
2009a 64bit
结果都是一样
但另外试过另一台工作站上的电脑
Windows XP 32bit + MATLAB 2010a 32bit
执行外部指令的时间就蛮正常的 ! 大概都是 20~30ms !
我自己的系统 与 工作站上的系统
有用bench指令确认过效能是差不多的
不知道为何呼叫外部执行档的时间会差这么多 ?
有大大遇过类似问题吗 ? 感谢~