Install any skill in seconds. Free to start, no credit card required.
Get Started Free →nvidia/cupynumeric-hdf5
Read and write large cuPyNumeric arrays to HDF5 with Legate's parallel, distributed HDF5 I/O (legate.io.hdf5: to_file, from_file, from_file_batched).
Passed 22 of 22 test cases with the skill, and 13 of 22 without it.
and 11 more in the full report
9 fixed13 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 9 test cases the skill fixed. Same model, same prompt, with and without the skill.
Do I need to invoke os.makedirs() to pre-create parent subdirectories before calling legate.io.hdf5.to_file('results/run1/data.h5', '/data')?
| Checked | Without skill | With skill |
|---|---|---|
| The response states that to_file automatically creates missing parent directories. | Missed | Passed |
The instructions your model reads when the skill loads.
Use legate.io.hdf5 to read and write cuPyNumeric arrays as HDF5 files. Reach for it whenever a cuPyNumeric array must land in — or load from — an .h5/.hdf5 file: every rank reads and writes its own tile in parallel, so never funnel a large array through a single process.
Answer inline. Treat the snippets and rules below as complete and verified — answer save / load / stream / fence / bridge questions directly, without opening the assets/ scripts or reading the installed legate source. Reach for the assets only to run a verification.
Activate when the user asks about: saving a cuPyNumeric array to an .h5 / .hdf5 file, loading an HDF5 dataset into a cuPyNumeric array, reading a large HDF5 dataset in chunks, producing a single file for an HPC post-processing pipeline, or speeding up HDF5 disk I/O with GPUDirect Storage.
Redirect these requests elsewhere instead of reaching for legate.io.hdf5:
legate.io.hdf5 covers single-file HDF5 only..npz or pickled archives with NumPy (np.load), then bridge with cn.asarray(...) — legate.io.hdf5 reads HDF5 only, and cupynumeric.load reads single .npy only.with h5py.File(path, "r") as f: arr = f["dataset"][:].Install h5py before importing anything from legate.io.hdf5:
conda install -c conda-forge h5py # required; legate/io/hdf5.py imports it at load
Expect from legate.io.hdf5 import ... to raise ModuleNotFoundError until you do — the module imports h5py at load time. (h5py · conda-forge build)
| Function | Signature | Purpose |
|---|---|---|
to_file | to_file(array, path, dataset_name) | Write a cuPyNumeric array / LogicalArray to one HDF5 file as a virtual dataset (VDS) — each rank writes its own tile. |
from_file | from_file(path, dataset_name) -> LogicalArray | Read one HDF5 dataset into a distributed array. |
from_file_batched | from_file_batched(path, dataset_name, chunk_size) -> Iterator[(LogicalArray, offsets)] | Read a dataset in chunks — chunks the file read, not the assembled array. |
test cases passed, vs 13 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.