RadioAstronomySoftwareGroup / RadioAstronomySoftwareGroup/pyuvsim
Enable logging via MPI's file I/O tools
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 54
- Forks
- 11
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 8
Description
MPI has tools to write to files from separate processes. For tracking down errors in intermediate calculations, it would be convenient to have a logging tool that lets you choose certain checkpoints to print out to a log file.
Example of mpi4py being used for file i/o, from their tutorials:
amode = MPI.MODE_WRONLY|MPI.MODE_CREATE
comm = MPI.COMM_WORLD
fh = MPI.File.Open(comm, "./datafile.contig", amode)
buffer = np.empty(10, dtype=np.int)
buffer[:] = comm.Get_rank()
offset = comm.Get_rank()*buffer.nbytes
fh.Write_at_all(offset, buffer)
fh.Close()
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the mpi4py file I/O example in the issue and locating the existing simulation or logging entry points in pyuvsim. Define how selected intermediate checkpoints should be written to a log file across processes; done means the requested logging tool works for those checkpoints without losing process information.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- numpy, python
- Domain
- distributed-systems, observability-sre
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100