【问题标题】:What does h5py broadcasting refers to?h5py广播是指什么?
【发布时间】:2014-01-26 01:07:34
【问题描述】:

h5py 文档 (http://www.h5py.org/docs/high/dataset.html) 说明如下:

重要的是,h5py在写之前不使用NumPy做广播...

>>> dset2 = f.create_dataset("MyDataset", (1000,1000,1000), 'f')
>>> data = np.arange(1000*1000, dtype='f').reshape((1000,1000))
>>> dset2[:] = data  # Does NOT allocate 3.8 G of memory

在这种情况下,广播指的是什么?

【问题讨论】:

    标签: numpy h5py


    【解决方案1】:

    在这里,广播是复制 (1000,1000) 数组 1000 次,因此它匹配 (1000,1000,1000) 形状。

    H5py 在写入磁盘之前不会先在内存中创建完整的数组,而是将 (1000,1000) 数组写入 1000 次,在磁盘上创建正确的数组,同时仅使用 1/1000 的内存。

    你可以阅读更多关于numpy广播规则here的内容。

    【讨论】:

      猜你喜欢
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-21
      • 2013-10-19
      相关资源
      最近更新 更多