and one experiment takes 40 hours to run, so i let them run in parallel
I think I found something relating to the issue on the subprocess not logging. Let me check if we can share something quickly
we need to evaluate the result across many random seeds, so each task needs to log the result independently.
Ohh that kind of makes sense to me 🙂
Yes I'm also getting:
/usr/local/lib/python3.6/multiprocessing/semaphore_tracker.py:143: UserWarning: semaphore_tracker: There appear to be 74 leaked semaphores to clean up at shutdown
len(cache))
Not sure about that ...
Hmm so the Task.init should be called on the main process, this way the subprocess knows the Task is already created (you can call Task.init twice to get the task object). I wonder if we somehow can communicate between the sub processes without initializing in the main one...
Let me check, see what can be learned ...
Not sure on the cause but if you do:
mp.set_start_method('fork', force=True)
There is no semaphore leakage
there is a semaphore warning, not sure if it’s related
Can you resend it?
Is the Task marked as closed when the process ends ?
So what if i want three tasks running in parallel, should i Task.init in the main process and change the task name in the sub process?
No need, it should auto close it if you started it with Task.init (or the agent executed it)
one quick question is that do i need to do some task.close() at the end of each process?
works most of time, this occurs only few times
when i run the code i send you the other day, logging is perfect, but at the end of the code there is a semaphore warning, not sure if it’s related