提问人:lara_toff 提问时间:8/11/2020 更新时间:8/13/2020 访问量:1129
使用 Numpy.Load - 这是最快的方法吗?看起来很慢
Using Numpy.Load - is this the fastest method? It seems slow
问:
我正在循环加载以 .npy 格式保存的 10-15MB numpy 数组,每次加载在 Google Colab 中大约需要 1.5 秒。这是一个可以接受的速度吗?到目前为止,这是我循环中最慢的部分。此外,我第二次运行循环时它的速度更快(可能是因为加载的文件已保存到 RAM 中?),但最终它又变慢了(RAM 用完了?
这是我用来加载数组的代码:
data = np.load('/content/drive/My Drive/Share/Daily Data/Processed/' + str(fileName))
任何加快速度的建议将不胜感激,现在我每个循环加载了 1500 个数组,因此每个循环大约需要 25 分钟。数组必须单独加载(请不要建议我将它们全部附加并一次加载所有数组,我不能)。
答:
0赞
jsmart
8/13/2020
#1
作为近似测试, 我可以在 6 毫秒内(从我的本地磁盘)加载一个包含 1_000_000 个元素 (int64) 的 .npy 文件。
- 您的文件(/content/drive/...)是在 Google 数据中心还是在您自己的存储空间中?
- 在后一种情况下,您能否复制到文件,以便它们与计算一起在 Google 上?
评论
0赞
lara_toff
8/13/2020
它们在我的 Google Drive 中,我在 Google Colab 上使用 RAM。所以他们应该靠得很近......
评论
np.load
是将文件加载到数组中的唯一方法。这项任务很简单,但磁盘/网络操作需要时间。对于许多大型阵列,内存管理可能会减慢速度。npy