Revision history [back]

click to hide/show revision 1
initial version

Program is slower on VM than on physical node

I am observing noticeably faster speeds on a physical node when compared to a VM. More details are below.

I have a complicated C++ program that uses OpenMP. It runs at an average of 4-5 mins on a physical node. When I use the same physical node as a compute node and launch a VM on it, it runs at an average of 10-11 minutes. I understand that virtualization will add some overhead but currently the physical node is 2x faster than the VM. Is that the best I can get with virtualization? If I run "top" on the VM, I notice that it uses less CPU% than compared to the physical node.

If I run the program on an Amazon AWS instance, it runs at an average of 4-5 minutes. So it seems to me that some optimization can be done to make my VM faster. I have tried CPU pinning with no noticeable improvement.

There is only one related question in the OpenStack forums - (https://ask.openstack.org/en/question/43324/openmp-and-cpu-usage/). But I have already implemented the solution provided there.

I would be very grateful if someone could point me in the right direction. Right now, I am not sure how to debug the issue.