intel / dffml

The easiest way to use Machine Learning. Mix and match underlying ML libraries and data set sources. Generate new datasets or modify existing ones with ease.
https://intel.github.io/dffml/main/
MIT License
251 stars 138 forks source link

df: memory: Locking must be dynamic #51

Open pdxjohnny opened 5 years ago

pdxjohnny commented 5 years ago

Current implementation of MemoryLockNetworkContext is such that it locks all parent inputs and the input itself.

What it should do is look at the parents and let descendants of a parent all operate on descendant Input items at the same time, but not let anyone operate on that parent item until all the operations working on descendant Inputs have completed.

Effectively, all operations working on the descendant Intputs "share" the lock on that parent they descend from.

https://github.com/intel/dffml/blob/2c671985d3aef0886554397c729aa2b667884be1/dffml/df/memory.py#L466-L492

pdxjohnny commented 2 years ago

pdxjohnny commented 2 years ago