我正在處理一個非常大的矩陣,因此想要在MATLAB中使用並行計算來運行羣集。在這裏,我已經創建使用稀疏矩陣:嘗試在MATLAB中使用parfor(並行for循環)時出錯
Ad = sparse(length(con)*length(uni_core), length(con)*length(uni_core));
我有一個書面的功能adj
使用,我可以填滿基Ad
。 每次循環運行時,從函數adj
中我得到一個方形對稱矩陣,將在第一個索引中指定從3682*(i-1)+1
到3682 *(i-1)+3682
,同樣在第二個索引中指定。這是顯示在這裏:
parfor i = 1:length(con)
Ad((3682*(i-1))+1:((3682*(i-1))+3682), ...
(3682*(i-1))+1:((3682*(i-1))+3682)) = adj(a, b, uni_core);
end
在一個正常的循環它運行沒有任何問題。但在parfor
並行計算中,我收到一個錯誤,說明在使用帶有parfor
的分片陣列時存在問題。
這似乎是非常有用的...非常感謝你。我會立即嘗試,並會發布,如果任何進一步的問題。 – sushma 2011-03-25 06:16:46