Windows 当结果保存到一个目录中时,为什么会减慢模拟速度?

Windows 当结果保存到一个目录中时,为什么会减慢模拟速度?,windows,matlab,diskspace,Windows,Matlab,Diskspace,想知道为什么脚本的运行速度比以前慢很多吗。 该脚本启动连续的Matlab仿真,并将每个仿真的输出保存到计算机#1目录中的文件中。该脚本在计算机#2、3和4上运行,计算机#1的C:drive作为驱动器K:,计算机在模拟过程中读取和写入K:drive文件。在开始每个模拟之前,脚本将保存模拟输出文件的“占位符”版本,模拟完成后,该文件将被该模拟的结果覆盖。输出文件名对于该模拟是唯一的。脚本在开始模拟之前检查输出文件;如果找到该文件,它将转到下一个模拟。目的是在不同的计算机之间划分许多模拟。计算机#1上

想知道为什么脚本的运行速度比以前慢很多吗。 该脚本启动连续的Matlab仿真,并将每个仿真的输出保存到计算机#1目录中的文件中。该脚本在计算机#2、3和4上运行,计算机#1的C:drive作为驱动器K:,计算机在模拟过程中读取和写入K:drive文件。在开始每个模拟之前,脚本将保存模拟输出文件的“占位符”版本,模拟完成后,该文件将被该模拟的结果覆盖。输出文件名对于该模拟是唯一的。脚本在开始模拟之前检查输出文件;如果找到该文件,它将转到下一个模拟。目的是在不同的计算机之间划分许多模拟。计算机#1上的目录中有许多文件(~4000,6GB),而计算机#1是一台旧的windows XP机器。计算机#2-4也是windows机器,使用时间超过2年


此方案过去运行良好,每分钟可保存~3个文件。现在每个文件大约需要15分钟什么可能是导致减速的主要原因?是目录中的文件数还是访问计算机1的计算机数?如果不太可能,我想知道,这样我可以重定向故障排除。

单个目录中的项目数绝对会导致性能下降。我已经读到,它取决于操作系统、文件系统、月相、本地/远程驱动器。。。也许是月亮的相位


我个人的经验法则是,每个目录大约有5000个条目时,性能开始下降,而大约10000个条目时,性能已经下降到足以使您所做的任何事情都无法正常工作。

事实证明,问题是各种计算机插入的旧网络交换机。当我们尝试一个新的开关时,脚本像闪电一样运行


然而,每个人的建议(减少文件数量的子目录;对计算机进行碎片整理,结果发现碎片严重)都很有帮助,而且很高兴有其他人关注这个问题,所以谢谢。

这是Windows,所以可能是磁盘碎片?但有很多变数,目前还不清楚经济放缓的原因。你的档案有多大?计算机1上还有多少可用空间?其他计算机执行计算的速度也一样快吗?恶意软件、病毒扫描程序、正在运行的Windows Update?是否存在大量名称冲突?如何创建文件名?每个模拟的文件名都是唯一的。我改变了几个参数,文件名基于参数的唯一组合。文件大小为5-15MB。计算机#1在280GB的总容量中有45GB的空闲空间。目录中的文件太多了,Windows不会告诉我有多少,但我猜它有5000个文件。如果我用更少的文件创建多个子目录,这会让Windows更快乐吗?是的。问题是单个目录中的文件数量,所以子目录通常是答案。即使我将大多数文件放入子目录,执行时间仍然很慢。