Thanks for the quick responses!
GSH, I was hoping you would offer some advice in particular. You pretty much confirmed some of the things I suspected and was considering. I was concerned that having dozens of threads running might be a performance issue, and didn't relish the idea of having to debug the them, especially since I'll be developing this on multi-core machines. Ultimately I would like to work this into the MPI DLL and knew state synchronization would be a real bear. Managed cooperative multitasking per your suggestion seems doable to me, and much more easily portable to MPI. It's not far off from one of the alternatives I had in mind. The main thing I'm worried about is trying to do too much during a single Execute. Do you have any tips on how to avoid that and how to detect when you've gone overboard?
OvermindDL1, I appreciate the offer. Learning something about how your Python scriptor works might help to solidify what I have in mind, whether I borrow some of your ideas or not. I'll be happy to take a look at whatever instructive material you have.
GSH, I was hoping you would offer some advice in particular. You pretty much confirmed some of the things I suspected and was considering. I was concerned that having dozens of threads running might be a performance issue, and didn't relish the idea of having to debug the them, especially since I'll be developing this on multi-core machines. Ultimately I would like to work this into the MPI DLL and knew state synchronization would be a real bear. Managed cooperative multitasking per your suggestion seems doable to me, and much more easily portable to MPI. It's not far off from one of the alternatives I had in mind. The main thing I'm worried about is trying to do too much during a single Execute. Do you have any tips on how to avoid that and how to detect when you've gone overboard?
OvermindDL1, I appreciate the offer. Learning something about how your Python scriptor works might help to solidify what I have in mind, whether I borrow some of your ideas or not. I'll be happy to take a look at whatever instructive material you have.