labscript-suite-temp / blacs

BLACS, part of the labscript suite, provides an interface to hardware used to control a buffered experiment. It manages a queue of shots to be run as well as providing manual control over devices between shots.
Other
0 stars 0 forks source link

Potential unnecessary delay in queue #14

Closed philipstarkey closed 7 years ago

philipstarkey commented 7 years ago

Original report (archived issue) by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


around line 600 of queue.py, the queue manager needs to wait on either of two python Queue() objects, as it is waiting either for the end of an experiment, or an abort/tab-restarted signal, whichever comes first. Waiting on one of these Queue() objects with a timeout prevents checking the other queue. The timeouts are currently set to 0.5 seconds, meaning experiment completion could potentially be delayed up to 0.5 seconds.

This should be fixed to speed up cycle time! Although waiting on multiple Queue() objects is not in general possible, we can do something like have a separate thread merge them into a single queue, or actually change things so that the same Queue() is used for abort/restart and 'done' signals.

philipstarkey commented 7 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).


This has been dealt with in pull request #6

philipstarkey commented 7 years ago

Original comment by Chris Billington (Bitbucket: cbillington, GitHub: chrisjbillington).