Replacing sockets with FFDirect
Overhaul of the client side of i-PI where sockets are now replaced by FFDirect, as mentioned in #85 and #88. For this a PR was opened to include a dedicated Psiflow driver in i-PI. I will keep this as a draft until the PR in i-PI is merged, after this also containers can be updated.
PR has been merged in i-PI, let us review!
So, unfortunately I made a slight oversight in the driver where I forgot to also include the class itself in the check_output-function. This makes stopping when exceeding some max force pretty annoying. I don't think it is a good idea to bother them with this right away, so either we hack this in (global variable or adapt the __call__-function inside of initialise_driver) or omit this force checking feature for now. The single pytest which fails also relates to this force checking FYI.
I think there are two things to tackle here:
- Update psiflow to work with the most recent release of i-Pi. This should not be very difficult (I hope), now that the psiflow
driveris a part of i-Pi. - Remove psiflow code managing the server-client model. This will require some serious refactoring (all
sampling, parts ofexecution, ..). I would use a new psiflow branch to start implementing changes, so we can keep the existing (mostly working) functionality intact for now.