Skip to content

v0.18.0

Latest

Choose a tag to compare

@amkrajewski amkrajewski released this 18 Jul 20:24
f16d9bf

Major Changes:

  • Improved memory handling of ML models within modelExporters, modelAdjusters, loading via customModel, and others via changes including explicit deletion of intermediate model state references and explicit GC calls. Overall, users of certain workloads should see RAM requirements to go down 2x and observe some execution speed-up as well!
  • Implemented a more robust and reliable ML model download from Zenodo that mitigates download issues faced by users fetching them from cloud environments like high-performance computers (HPC), GitHub Actions, and cloud providers.
  • Switch the default OPTIMADE provider of DFT data from mp (Materials Project) to Alexandria because it provides a more reliable endpoint (mp serves 0 structures as of writing) and a more robust compositional space coverage.
  • Improved runtime printouts and docstrings all across core, modelAdjusters, and modelExporters; as well as a number of runtime assertions within them to make sure issues are caught early, especially in custom setups where users swap data or models in the middle of typical workflows.
  • A number of minor logic improvements and enforcement of more deterministic behavior (in edge cases that didn't cause reported issues) across findCompatibleModels, writeDescriptorsToNPY, writeDescriptorsToCSV, calculate_KS2022_randomSolutions, runModels_dilute, and others.

Minor Changes:

  • Prevent loadModelCustom overloading newer versions of a model if they shared the same given name, even if the model string was different.
  • Updated the README and documentation.
  • Several changes futureproofing pySIPFENN in terms of both Python and core dependencies.

Full Changelog: v0.17.0...v0.18.0