Recently I’ve needed to connect to a virtual desktop using VMware Horizon Client. Immediately after connecting, I received the error message:
ERROR (1FD0-19D0) <6608> [vmware-remotemks] HccChannelPlugin::ChannelAddRef: No shared memory channel. Horizon client service may be down.
FATAL (1FD0-1E14) <vmware-usbd> [vmware-remotemks] GOT DEP ACCESS VIOLATION
After much research and try & error, I was able to determine that VMWare Horizon Client requires up to 4GB of RAM for physical machines and 5GB of RAM for virtualized Windows 7, 8.1, 10 systems (VirtualBox, VMWare Workstation).
A quick test (so take it with a grain of salt):
- Huge pages is slightly faster than not using huge pages (~10% with 4 winxp virtual machines copying 512MB from one memory location to another).
- KSM is slightly slower then not using KSM (~5% with 4 winxp virtual machines copying 512MB from one memory location to another).
So, at first glance it would appear that we can use a loose rule of thumb:
- to consolidate the maximum number of machines, use KSM as it will allow you to over commit the amount of memory on your box.
- Risk: if the memory pages are significantly different, you may start swapping in a very bad way. This is where monitoring comes in
- to give the best performance to a number of machines, use huge memory pages.. does not allow you to over commit
- Risk: if you don’t leave enough memory for the host os, you can crash your machine. This is also where monitoring comes in
This assumes that your host machine has a sound card! 🙂
Add the args line in your /etc/qemu-server/<vm id>.conf file should give you sound:
On my Proxmox VE 1.8, I have several virtual audio devices available. I’ve had the best luck with ac97 with Windows XP/Vista and Win7.
red:/etc/qemu-server# kvm -soundhw ‘?’
Valid sound card names (comma separated):
pcspk PC speaker
sb16 Creative Sound Blaster 16
ac97 Intel 82801AA AC97 Audio
es1370 ENSONIQ AudioPCI ES1370
hda Intel HD Audio
-soundhw all will enable all of the above