有什麼方法可以顯示Matlab指令的執行進度(即使是粗略估計)?顯示Matlab指令執行的進度
例如假設我使用pdist計算距離:
D = pdist(my_matrix,'cosine');
並在該計算需要時間,並提供Matlab的任何方式定期顯示執行的進度?
有什麼方法可以顯示Matlab指令的執行進度(即使是粗略估計)?顯示Matlab指令執行的進度
例如假設我使用pdist計算距離:
D = pdist(my_matrix,'cosine');
並在該計算需要時間,並提供Matlab的任何方式定期顯示執行的進度?
非本質。您當然可以使用profiler或tic/toc進行事後檢查。
如果這對於單個函數來說你會做很多事情,你可以考慮修改函數並用一個新名字保存在你的路徑中(爲了這個目的,我有一個名爲「Modified Builtin」的目錄) 。在pdist.m
的情況下,您可以保存pdist_updates.m
。看一下這個函數,實際的距離是從一系列嵌套循環開始的250行左右開始計算的。添加在這樣一行:
disp(sprintf('Processing pair %d of %d',i,n-1));
在行265如果你真的想獲得幻想,你可以使用tic
和toc
時間每個循環和提供的估計整個計算需要多少時間,這樣你就知道你不得不跑到咖啡機多久。
當然,如果最終取消您的統計工具箱許可證,或者如果Mathworks升級工具箱並更改功能,則會導致問題,所以請謹慎使用此方法。
感謝您的答案,它完美的作品。 – Eugenio 2014-11-27 10:35:51
在單個指令(並實時)內,我不這麼認爲。 – 2014-11-14 21:31:13
你可以修改pdist並查找for循環並添加waitbars :) – 2014-11-14 21:35:47
@ Benoit_11不是黑客MATLAB的本地庫.m函數:p – ha9u63ar 2014-11-14 21:37:43