Skip to content

Post-solve check of provides, requires directives #724

@pearce8

Description

@pearce8

Example: If the experiment requires cuda, check if the system we are planning to run it on provides cuda.

Post-solve check should work as follows:

  1. CudaExperiment would require cuda, and so all of the experiments that derive from CudaExperiment
  2. A system with NVIDIA GPUs would provide cuda by deriving from CudaSystem (doesn't exist yet)
  3. Notes from Greg: The check itself would be implemented as a post-concretization check on the Experiment object. The method signature for concretizing an ExperimentSpec could grow an additional argument to pass the SystemSpec that it would be used with, and the last step of concretization would be to check for compatibility between the two.
  • Post-solve check
  • After the check is implemented, we need docs to help people understand errors

Depends on #717.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions