gpt4 book ai didi

matlab - 如何让多个 MATLAB 实例同时保存同一个文件

转载 作者:行者123 更新时间:2023-12-02 01:06:38 33 4
gpt4 key购买 nike

我目前正在编写代码,使用 Unix 集群上的节点运行一系列耗时的实验。这些实验中的每一个都需要在 12 核机器上运行 3 天以上。当每个实验完成后,我希望它能将一些数据保存到一个通用文件中。

我有一个小问题,我同时将所有实验提交到集群,因此它们很可能也会同时保存到同一个文件中。

我想知道当多个 MATLAB 实例尝试同时保存同一个文件时会发生什么(错误/崩溃/无)。无论结果如何,我都可以使用 try/catch 循环解决它,如下所示:

n_tries = 0;
while n_tries < 10
try
save('common_file',data)
n_tries = 10;
catch
wait_time = 60 * rand;
pause(wait_time);
n_tries = n_tries+1;
end
end
end

最佳答案

不要。

在多线程/处理环境中使用所有 Matlab 函数显然安全。如果您同时从多个 matlab session 写入一个 mat 文件,很可能会丢失多个变量(因为例如 2 个 matlab 附加到文件的相同状态)或整个文件被损坏。

保存单个文件并在后处理步骤中合并它们。

关于matlab - 如何让多个 MATLAB 实例同时保存同一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21839703/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com