Link to home
Start Free TrialLog in
Avatar of manav08
manav08Flag for Australia

asked on

HYPER-V VM slow performance with flat file database

Hi All,

We have  a brand new server running Server 2012 with HYPER-V role installed on it.
The configuration is HP ML350G8P, INTEL XEON E5-2620V2, 16GB RAM (2/8), 2 X 300 GB 6G SAS 15K HDD (RAID 1)

There is only 1 x VM in this server to which we have allocated 12 GB RAM, 140 GB HDD (Virtual IDE and Fixed Disk size) and 2 Core CPUs and it is also running Server 2012.

Now this VM is acting as a terminal server with a special software program running on it which runs a Flat file database. Everything is getting read and written to the C:\ drive of this server, ut this program is taking 7-8 times longer to fetch queries/generating report etc. Additionally Outlook seems to be running slow as well. What can we do to increase the performance, so it performs same as our old server which was 6 years old, running Server 2003 OS?

I have checked Resource Monitor and none of the components - RAM, CPU, DISK etc. are in stress.
Not sure what the issue is here.
Avatar of Costas Georgiou
Costas Georgiou
Flag of Australia image

is the host server under constraint when you check Resource Monitor for the host server ?
Avatar of manav08

ASKER

yes, already checked, no stress on that either
Avatar of David Johnson, CD
you say that it is writing to the root of c:\  the root of c:\ is a protected area. can you write to a subfolder of c: instead
Avatar of manav08

ASKER

Hi David,

On the C:\ drive of this VM Server we have a subfolder and this application is getting read of there.
So, the application path is c:\subfolder\file.exe
Making a wild guess here.,
If there is no specific requirement of 2 Cores, try to reduce the core config from 2 to 1CPU core.
Add more sockets.

or switch to a physical server. (yes, Hypervisors do have some constraints!),
Avatar of manav08

ASKER

One says change to 1 core. Other says increase the cores. What should I do??
I will test application soon on the HYPER-V itself and let you know the result
Avatar of manav08

ASKER

The VHDX wouldn't e any different to VHD speed wise would it?
Also, when we moved the software to HYPER-V itself, the speed is fine. What the hell is going on :(
Avatar of manav08

ASKER

CPU has 6 cores, so tried adding 5 Virtual CPUs to VM and that didn't help.
Then tried adding 1 Virtual CPU only and that didn't help either.
The special software program that you are running is compatible with windows 2012 OS?
Avatar of manav08

ASKER

yes ofcourse which is why we can run in HYPER-V of Server 2012 at fast speeds. It is a simple flat file database that runs in a folder.
Avatar of manav08

ASKER

If it helps you, I just now also tried attaching a SCSI FIXED DISK and moved our Flat file database there to test speeds. No difference at all. So VHD or VHDx doesn't matter I suppose, niether does CPU. What shall we do now??
I hope you don't have snapshots associated with the OS disk (vhd).
See if you can post the screenshot of CPU, RAM and Hyper-V Switch configuration settings.
Avatar of AbhishekJha
AbhishekJha

First of all verify whether the integration service is update to latest version or not as 2012 is hyper-v compatible it doesn't ask to install integration services by default. Also check integration service is enabled or disabled.

If above not fixes the problem then check processor setting that whether it is running in compatible mode or not.

open resource monitor & add filter to disk I/O read & write & check try using your application to monitor the speed throughout.
Avatar of manav08

ASKER

@Abhishekjha - Just checked and we are running latest version of integration services, so it wont reinstall on top. All services are enabled.
Resource monitor shows 1% disc usage and 20% CPU Usage and 20% RAM usage.

@Vaseem

There is nothing uncommon about the config. It is standard config
Avatar of manav08

ASKER

Also I am now changing RAID stripe size to 64Kb. By default on HP Server this is set to 256 Kb.
I noticed that DELL servers have stripe size set to 64KB.
Not sure if this will change anything. Fingers crossed though.
Anyone else got any ideas?
do you have a BBWC enabled and installed, as 75% Write, 25% Rread
Avatar of manav08

ASKER

I dont believe so, how do we check?
If you have the Array Configuration Utilities installed, you can check if you can set the cache....

these are usually available as options, unless you purchased a performance edition, where it comes as standard.

Battery Backup Write Cache
Avatar of manav08

ASKER

Hi Andrew,

Checked and cached ration os like you said, however I am thinking if it is worth changing it to 75% read and 25% write, given that the flat file database has problems when fetching data/generating reports/queries etc.??

Also what is your opinion on stripe size?
As for stripe size, it depends on the workload.
Avatar of manav08

ASKER

so what is your opinion on changing BBWC to 75% read and 25% write and changing Stripe size to 512 or higher?
We always change the BBWC cache to 75% read and 25% write always, on all smart array controller.

As for stripe size we've always left as default.
Avatar of manav08

ASKER

How long does it take to see the effect of this BBWC change?
Avatar of manav08

ASKER

I see no difference in performance so far.
if you run the application on the HOST, and not as a Guest VM, does it run better ?
Avatar of manav08

ASKER

Hi Andrew,

It runs better but still not as good as our Windows Server 2003 Server before.
Same Queries/Reports are taking 25 seconds on host, 78 seconds in VM Guest as opposed to 13 seconds on our old Server.

Old server was a whitebox server with RAID 1 drives (Just standard SATA drives)
Also it only had 4GB Ram and Xeon CPU 3.2 Ghz
Avatar of manav08

ASKER

Another strange thing I notice on the Guest VM is that when I run the report once it is running fast now @25 seconds but the second time I run same report it takes @78 seconds. Wierd!!

Software vendors as usual are not very helpful with this. They just say, look it works fine on my Windows 8 PC which is not even RAID, so problem is with your server.. go and fix it!!
Does the performance need to equal that of the older server ?
Avatar of manav08

ASKER

Hi Andrew,

Not precisely, but it should be close. If it is 6 time slower than users start complaining.
Avatar of manav08

ASKER

We are no closer to resolving this Speeds were worse today when everyone was logged in.
Avatar of manav08

ASKER

ok guys this issue has really had me stumped.

I moved the whole program to the physical layer i.e. HYPER-V host machine.
Joing it to domain and enable remote desktop services.
Now this application is running excrutiatingly slow.

When we tried yesterday running the same application on HYPER-V host with no terminal services or it being joined to domain, the speeds were really good.

Does anyone know if RAM distribution in terminal services could be causing this issue. Testing was done with only a single user logged on, so not like the server was under some kind of stress. Also Resource monitor has no stress on CPU, RAM or DISK
Avatar of manav08

ASKER

Tried another virtual instance of the server and same issue.
As soon as terminal services is installed, the application slows down.
You take off terminal services and application goes back to normal
ASKER CERTIFIED SOLUTION
Avatar of manav08
manav08
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of manav08

ASKER

Hi All,

I would love to give points for effort, but doing so in the past I have got in trouble.
So I would be requesting closure of this question as it was resolved in https://www.experts-exchange.com/questions/28510654/Remote-Desktop-Services-2012-slows-down-application-hosted-locally-on-the-server.html by another user.
The issue it seems was not HYPER-V related but Terminal Services related and caused by FAIR SHARE.