大家好
小弟最近撰寫一個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指令確認過效能是差不多的
不知道為何呼叫外部執行檔的時間會差這麼多 ?
有大大遇過類似問題嗎 ? 感謝~