llnl / llnl/conduit

Document collective IO

Open
#465 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

docs
Dominant language
C++
Stars
248
Forks
72
Avg merge
1d 16h
Merged PRs (30d)
15

Description

The extent of current documentation:
> The conduit_relay_mpi_io library provides the conduit::relay::mpi::io namespace which includes variants of these methods which take a MPI Communicator. These variants pass the communicator to the underlying I/O interface to enable collective I/O. Relay currently only supports collective I/O for ADIOS. -- https://llnl-conduit.readthedocs.io/en/latest/relay_io.html#relay-i-o-path-based-interface

Some examples use `conduit::relay::io_blueprint::save`, for which I see no MPI-equipped variant and have no symbols in the compiled libraries. It looks like perhaps `conduit_relay_mpi_io_blueprint.hpp` was an attempt to create that, but that header isn't public and I don't see how to access the feature.

The wording is ambiguous about whether one should be able to call collectively (with matching filename) for a non-ADIOS protocol (it just won't actually use MPI-IO to put bytes on disk) or whether that may cause conflict/corruption. In what circumstances must the caller distinguish file names by rank?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Relay I/O documentation at relay_io.html#relay-i-o-path-based-interface and inspect the referenced conduit_relay_mpi_io_blueprint.hpp header. Determine and confirm how collective I/O behaves for each supported protocol, including when ranks need distinct filenames. Done means the documentation clearly states the supported calls, limitations, and filename guidance.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
documentation, hpc
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.