Closed Cody-G closed 7 years ago
I think a big part of this stems from the fact that we redo all allocations and instrument configurations before each stack. Much of the work doesn't need to be re-done. Just reducing camera configuration time will probably make a big difference.
I think I have a solution for this, waiting for PCO to fix an (unrelated) problem before I merge
This is fixed in #30 with one additional caveat to the two conditions I listed above. The "Idle time between stacks" setting must also respect the maximum speed at which the computer can complete its inter-stack tasks (the most costly of which is stopping and starting the camera). Thus the minimum inter-stack interval on OCPI2 is now 0.09 seconds in dual-camera mode and slightly faster with a single camera. I suspect it will be nearly the same on OCPI1. Currently we're not doing any checking on this number, but at least the overrun statement is accurate now.
Our overrun-related warnings are improved since I filed this issue but still not perfect. However as we're now switching over to hardware timing this will soon be obsolete anyway so I'm closing.
Ideally, a 3D timeseries acquisition should work fine under the following conditions:
Currently, Imagine sometimes emits a "Stack is overrun. Idle time is too short" message even when both conditions are met. If one adds enough idle time, the message goes away. It seems that in some cases the warning message is inaccurate (Upon examination the stack was acquired correctly). In other cases, the stack actually acquires incorrectly, often with part of the stack being acquired during the reset phase.
I will add more information describing the problem as I find it.