Core building blocks#
The shared abstractions used across pimm: config-driven builders,
Point,
Config, Registry, and
checkpoint/resume primitives.
Builders#
Construct registered objects from config dictionaries. See the per-registry pages (Models, Datasets, …) for what each registry contains.
Build models. |
Builder registries#
- MODELS: Registry#
Registry used by
build_model()to resolvemodel.typestrings.
- LOSSES: Registry#
Registry used by
build_criteria()to resolve eachcriteria[].typestring.
Point structures & base modules#
Point-cloud batch container used across pimm backbones. |
placeholder, all module subclass from this will take Point in PointSequential. |
|
A sequential container. |
|
placeholder, PointModel can be customized as a pimm hook. |
Configuration & registry#
A facility for config and config files. |
A registry to map strings to classes. |
Checkpointing & resume#
The checkpoint manager and the resume-state schema. See Checkpoints and resume.
Own checkpoint format, save/load backends, and trainer resume semantics. |
Serializable resume point for trainer, sampler, dataloader, and RNG state. |
Data loading & collation#
The transform composition and collation helpers that turn samples into packed point-cloud batches, the packed/padded conversion used by PoLAr-MAE, and the checkpointable sampler that lets the training loader resume mid-epoch. See Add a dataset and ../data/custom.
Build a transform pipeline from config dicts and run it in order. |
Recursively collate tensors, mappings, and list-style point samples. |
Convert pimm packed format to PoLAr-MAE padded/batched format. |
Rank-aware map-style sampler with checkpointable epoch and position. |
Engine setup#
Derive per-rank loader settings, initialize reproducibility controls, and materialize the runtime config used by the trainer.
Derive per-rank settings and seed this process. |
Hook lifecycle#
The base lifecycle interface shared by every registered training hook. Concrete hook implementations are listed in Hooks registry.
Base class for all training hooks registered with the trainer. |
Distributed helpers#
Process-group setup and small collectives (pimm.utils.comm).
Return the initialized distributed world size, or 1. |
|
Return the initialized distributed rank, or 0. |
|
Return whether this process is global rank zero. |
|
Helper function to synchronize (barrier) among all processes when using distributed training |
|
Run all_gather on arbitrary picklable data (not necessarily tensors). |
|
Reduce the values in the dictionary from all processes so that process with rank 0 has the reduced results. |