-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Design paradigm for parallel POD (distributed OpInf):
- New
ParallelPODBasisclass (too different from serial POD to be in the same class) - Constructor arguments (hyperparameters) for
- specifying the number of processes and possibly the splitting scheme (
num_processes=6). This means we have parallelism in the back, not MPI in the front. - criteria for the number of basis vectors to retain, probably
num_vectors,cumulative_energy,svdval_threshold, andresidual_energy, but notprojection_error - whether to construct the actual basis vectors in the matrix V (
record=False)
- specifying the number of processes and possibly the splitting scheme (
- Attribute for the actual basis vectors,
Noneifrecord=False, an array of size$n_i \times r$ otherwise. - Consider disabling
fit()andcompress(), force the user to usefit_compress()? Need to check with theROMclass to see if that messes something up. - MUST have the data in a format that allows for distributed reading without loading the entire dataset. That means we either need to have a filename that has the entire dataset in a certain HDF5 format, or (probably more practical) a list of files to load, one for each process. Maybe we use this list instead of
num_processes.
This last point is possibly the trickiest and may have consequences for the design of the rest of the package.
Ionut will take the lead.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request