Question

MPI is more suited to homogenous enviroments , What would I have to do to be able to run HPC applications that use MPI on Amazon Cloud, My understanding being that my application maybe allocated heterogenous virtual machines. What are the perfomance issues that I will encounter?

Was it helpful?

Solution

There is a lot of investment in this area, and the "state of the art" is changing rapidly. While my answer is reasonable today, that may change over the coming few quarters.

The biggest performance issue will be latency: latency to the memory, latency to the interconnect, and latency to the file system. Bandwidth is also an issue, but not nearly as noticeable as latency.

The next biggest performance issue is the lack of support for "common" HPC technology like DMA/RDMA, GPU's, and other hardware accelerators. While not every cluster will have these, if you are accustomed to the performance gains of these kinds of technology the VM environment will be that much worse by comparison.

OTHER TIPS

One thing to note is that as of right now, Amazon EC2 does not support broadcast or multicast in any form. So if your MPI implementation uses BC/MC (e.g. for collective calls, or even just under the hood), it will not be usable on your cloud instances.

We also needed broadcast and multicast support, so we modified the open source n2n vpn software solution and it works well for us.

https://www.buckhill.co.uk/blog/how-to-enable-broadcast-and-multicast-on-amazon-aws-ec2/2

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top