You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Search for duplicates among the existing issues, both open and closed.
Description
I think drake can achieve something very similar to MLFlow tracking because storr is resistant to actually deleting data, even after drake::clean() (which just removes hashes from key files). All we need to do is store data hashes in the target metadata. Then, we can look at both current and past targets and distinguish between them. In addition, we can borrow from drake's existing code analysis magic to automatically detect parameter settings from commands in the drake_plan() (let's just stick to scalars for now). No need to manually declare "I want to track tuning parameters alpha and beta".
The text was updated successfully, but these errors were encountered:
drake will disable history by default. Users will need to manually call make(history = TRUE). Reasons:
Currently, txtq is in Suggests in the DESCRIPTION file. If we tracked history by default, we would have to move txtq to Imports.
txtq uses file locking to avoid race conditions, so it creates a parallel bottleneck. Should not be a big deal, but I believe performance is more important than history.
Even in serial execution, there is a ~15% performance penalty for thousands of small targets. Below is a flame graph using the overhead example with 4096 targets, most with 64 dependencies each.
Changing my mind about #918 (comment). drake now tracks history by default: fe279e6. Reasons:
History is one of those things you always don't know you need until it is too late, and its such an important issue that a tiny performance hit is worth it.
Prework
drake
's code of conduct.Description
I think
drake
can achieve something very similar to MLFlow tracking becausestorr
is resistant to actually deleting data, even afterdrake::clean()
(which just removes hashes from key files). All we need to do is store data hashes in the target metadata. Then, we can look at both current and past targets and distinguish between them. In addition, we can borrow fromdrake
's existing code analysis magic to automatically detect parameter settings from commands in thedrake_plan()
(let's just stick to scalars for now). No need to manually declare "I want to track tuning parameters alpha and beta".The text was updated successfully, but these errors were encountered: