You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
psblas3/docs/internals/README.md

27 lines
1.3 KiB
Markdown

# PSBLAS Developer Guide (Internals)
This directory documents the **internal architecture** of PSBLAS: how the
classes relate to each other and how the library is implemented. It is aimed
at developers who modify or extend PSBLAS, not at end users.
The split is deliberate and two-layered:
- **User manual** (`docs/src/*.tex`, built into `psblas-3.9.pdf`) describes the
public API: what each routine does, its arguments, and the semantics a user
must know to call it correctly. For example, it documents that `psb_halo`
accepts a `mode` flag and what synchronous vs. split-phase exchange means for
the caller.
- **Developer guide** (this directory) describes *how* those features are
implemented: the dispatch path, the communication-handle class hierarchy, the
MPI mechanisms behind each scheme, and the extension points. A user never
needs to read this to use `psb_halo`.
When you add a feature, update the layer that matches its audience. A new public
flag goes in the user manual; a new internal communication scheme goes here.
## Contents
- [communication.md](communication.md) — the communication subsystem: the
`psb_halo`/`psb_ovrl` → `psi_swapdata` → communication-handle dispatch path,
the available MPI schemes, and the swap-status state machine.