Lightning-AI/pytorch-lightning

MLFlow Logger Makes a New Run When Resuming from hpc Checkpoint

Open

#6.205 geöffnet am 25. Feb. 2021

Auf GitHub ansehen
 (8 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (3.233 Forks)batch import
bugcheckpointingenvironment: slurmhelp wantedlogger: mlflowpriority: 2won't fix

Repository-Metriken

Stars
 (26.687 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 9T 15h) (3 gemergte PRs in 30 T)

Beschreibung

🐛 Bug

Currently the MLFlowLogger creates a new run when resuming from an hpc checkpoint, e.g., after preemption by slurm and requeuing. Runs are an MLFlow concept that groups things in their UI, so when resuming after requeue, it should really be reusing the run ID. I think this can be patched into the hpc checkpoint using the logger which I believe exposes the run ID. This can also be seen on the v_num on the progress bar which changes after preemption (in general that v_num probably shouldnt be changing in this case). I'm happy to attempt to PR this if the owners agree that it's a bug.

To Reproduce

Use MLFlowLogger on a slurm cluster and watch the mlflow UI when preemption happens, there will be a new run created.

Expected behavior

Runs are grouped neatly on the MLFlow UI

Environment

  • CUDA: - GPU: - available: False - version: 10.2
  • Packages: - numpy: 1.20.1 - pyTorch_debug: False - pyTorch_version: 1.7.1 - pytorch-lightning: 1.2.0 - tqdm: 4.57.0
  • System: - OS: Linux - architecture: - 64bit - ELF - processor: x86_64 - python: 3.8.1 - version: #1 SMP Thu Jan 21 16:15:07 EST 2021

cc @awaelchli @ananthsub @ninginthecloud @rohitgr7 @tchaton @akihironitta

Contributor Guide