我试图在处理后向磁盘写入大量文件[2000-2500]。我注意到,前100张图像快速写入磁盘,然后出现放缓。为什么会发生这种情况,我能做些什么来加速这一过程?在python中写入大量文件,最后明显减速
这是我的代码写入图像:
for b in range(Data.shape[1]):
t0 = time.clock()
img = Data[:,b]
img = np.reshape(img,(501,501))
save = os.path.join(savedir,"%s_%s"%(item,b))
plt.imshow(img).figure.savefig(save)
print "Saved %s of %s in %s seconds"%(b,Data.shape[1],time.clock()-t0)
编辑:
Saved 0 of 1024 in 0.103277 seconds
Saved 1 of 1024 in 0.0774039999999 seconds
Saved 2 of 1024 in 0.0883339999998 seconds
Saved 3 of 1024 in 0.0922500000001 seconds
Saved 4 of 1024 in 0.0972509999999 seconds
而且经过几次反复:
Saved 1018 of 1024 in 2.152941 seconds
Saved 1019 of 1024 in 2.163633 seconds
Saved 1020 of 1024 in 2.198959 seconds
Saved 1021 of 1024 in 2.172303 seconds
Saved 1022 of 1024 in 2.19014 seconds
Saved 1023 of 1024 in 2.203727 seconds
为什么使用'plt.imshow(img).figure.savefig(save)'来写入数据?您已经在使用'print'保存%s%s(%s,Data.shape [1])来调试进程,我想您可以使用其他numpy方法来写入数据。 – ZdaR
您能否添加更多信息 - 您如何知道增速放缓?你有分析信息吗?如果是的话,你可以包括一个(小而相关)的片段? – scytale
@scytale - 更新了问题 – shaunakde