cuPyNumericHDF5并行I/OSkill cupynumeric-hdf5

用于将 cuPyNumeric 分布式数组高效并行读写到 HDF5 文件,支持虚拟数据集写入、分块读取以及通过 GPUDirect Storage 加速 GPU 端数据加载。适用于科学计算、HPC 数据流水线以及需要以单文件 .h5/.hdf5 持久化或加载大规模分布式数组的场景。关键词:cuPyNumeric、HDF5、legate、并行I/O、分布式数组、HPC、数据加载、数据存储、GPUDirect Storage。

分布式数组 0 次安装 1 次浏览 更新于 9/7/2026

cuPyNumeric HDF5 并行I/O

本技能介绍使用 Legate 的 legate.io.hdf5 模块在 cuPyNumeric 分布式数组与 HDF5 文件间进行并行读写。

主要功能

  • to_file: 将 cuPyNumeric 数组写入单个 HDF5 文件(虚拟数据集)
  • from_file: 从 HDF5 文件读取数据集到分布式数组
  • from_file_batched: 分块读取大型数据集

使用场景

  • 需要将 cuPyNumeric 数组保存为 .h5/.hdf5 文件
  • 需要加载 HDF5 数据集到 cuPyNumeric 分布式数组
  • 需要分块读取超大 HDF5 文件
  • HPC 流水线以单文件方式传递数据
  • 使用 GPUDirect Storage (GDS) 加速 GPU 读取

重要注意事项

  • 确保已安装 h5py
  • 与 Legate 26.01+ 搭配,从 legate.io.hdf5 导入
  • 外部读取文件前需要 issue_execution_fence(block=True)
  • GPU 读取时设置 LEGATE_IO_USE_VFD_GDS=1
  • 不要用于 Parquet/Zarr/.npz或纯数组计算

代码示例

(示例见原文档,包括往返读写和分块读取)