Efficiency of i-pi

43 views
Skip to first unread message

Kris Mu

unread,
Oct 30, 2024, 4:44:49 AM10/30/24
to ipi-users
Dear all,

After using i-PI for a while, I have a certain impression. When my driver performs calculations using a GPU, such as with a machine learning force field, the speed of MD actually depends on the performance of both the CPU and the GPU. For example, take two machines: one has a very good CPU but an average GPU, while the other is the opposite. In the end, the running speed of i-PI on both machines might be similar, and for smaller systems, it might even be entirely dependent on the CPU speed. I think this could be because the server process of i-PI is a Python program running on the CPU. Is my impression reasonable?

Many thanks for clearing my confusion!

Michele Ceriotti

unread,
Oct 30, 2024, 10:09:05 AM10/30/24
to ipi-users
We discuss in detail the overhead of running i-PI in the publication that accompanies the latest release,

The bottom line is that yes, the overhead can be substantial but only when you either run a very complicated
setup on the MD side, or use a very cheap potential. For simple MD and a medium-size system of ~1000 atoms,
you should expect an overhead below 1ms/step. If you see overheads much larger than this, then:
1. make sure you use a version > 3.0, we sped up everything by a lot for the last release
2. reduce I/O, printing positions or velocities at each step is usually unnecessary, and takes quite some time
3. make sure that the socket communication is not unnecessarily slow, e.g. use a unix-domain socket
if you run on a single node.

Hope this helps
Michele  

Reply all
Reply to author
Forward
0 new messages