LLNL / merlin

Machine Learning for HPC Workflows
MIT License
122 stars 26 forks source link

Maestro v 1.1.9dev1 Compatibility #388

Closed bgunnar5 closed 1 year ago

bgunnar5 commented 1 year ago

In this branch I got the latest version of Maestro (v 1.1.9dev1) working with Merlin. To do this I had to:

  1. Modify how MerlinSpec objects are created/validated
  1. Create tests for the new validity checks
  1. Unpack Maestro's ExecutionGraph that we were storing inside our own DAG object

Other modifications in this branch include:

Note: The only docs files that were changed modified were merlin_variables.rst, merlin_specification.rst, and merlin_developer.rst (just the end). For some reason, the commits I made to the last branch I worked on (the documentation edits) showed up as changes here as well.

bgunnar5 commented 1 year ago

This branch also resolves issue #318

lucpeterson commented 1 year ago

@koning and @ryannova this has the python version changes too

koning commented 1 year ago

Does this allow tasks to be json serializable?

bgunnar5 commented 1 year ago

@koning No we still use only pickle serialization. The only place json is used is for schema validation when we're creating the MerlinSpec object. I'll be playing around with json serialization in the future but most likely not on this branch

koning commented 1 year ago

Nice improvement Brian.