It's tough for a dual roll machine being setup as a virtual server also.
Just how much memory is allocated and how much is SQL using?
To begin with that should be tuned.
There are also several things to consider when using Virtual servers, whether they are Hyper-V or ESX.
In VMware there is a tool for checking the CPU and it's called esxtop.
It's a command line utility and can show the average load on the CPU.
The tool shows the load in the a sequence of 5,10, and 15 min.
If the average is 1 that shows your CPU of your host is running up hill as fast as it can.
If it's over that, time for more cores to be assigned to the virtual machine.
Then there is the issue locked pages in memory.
This setting has been know to cause issues in the "Balloon" drivers and stop the VM from reclaiming memory from the host.
I would say this is just a start.
Curtis J Spanburgh