Setting up Pexip Infinity with Microsoft Hyper-V Server 2012


Last Updated on February 26, 2016 by GrahamWalsh

As you may be aware, Microsoft offer Windows Hyper-V Server 2012 (and soon 2016) as a free hypervisor.  I have been doing some testing to see the performance for Pexip Infinity.

So, here goes on setting up Pexip Infinity Conference Node with the free Microsoft Hyper-V 2012 (also tested with 2016 with the same results).  This is assuming you have the management node already installed (example installation here).

Server Hardware

I am using a SuperMicro SuperServer with a dual Intel Xeon E5-2680-v3 chipset with 64GB RAM and 2 x 1TB hard drives.  An equivalent Dell server could be a R430 or R630, or a HP DL360 Gen9.  The approximate list price of this server (using Dell as an example) is around £4,500/$6,500 for a redundant PSU, hardware RAID and multiple network cards.  This is a 1U server.

Step One – Choosing a Deployment Type


Step Two – Define Processors

Here we need to define the number of virtual CPUs to assign per processor and the amount of memory.  For Pexip Infinity, the requirement is 1GB RAM per virtual CPU.


Step Three – Configure Name and Network Details

hyperv-03 hyperv-04

Step Four – Download Conference Node

Now you will download the node locally to your machine, ready to import into Hyper-V Manager.


One you have downloaded the conference node, unzip it on your machine.


Step Five – Create a Share on Hyper-V Server

If you do not have a share on the server (or access to C$ say) you need to enable sharing.  To do this, just head to Server Manager and select the server and right click and select Add Roles and Features.  Then follow the steps to complete installing the role.


hyperv-11 hyperv-12 hyperv-13

Step Six – Create a Shared Folder

hyperv-10hyperv-14 hyperv-15 hyperv-16 hyperv-17 hyperv-18 hyperv-19 hyperv-20

Now you have your shared folder, copy all three folders from the unzipped file onto the new share.

Step Seven- Open Hyper-V Manager


Step Eight – Create a Network Switch

For simplicity in this example, I am just going to create an external interface so my LAN can talk to the Windows Hyper-V server NIC.  So just click on Virtual Switch Manager in the right hand pane and select External and choose Create Virtual Switch.

hyperv-25 hyperv-26

Step Nine – Select Import Virtual Machine

Now that Hyper-V is ready, we can click on Import Virtual Machine.



Step Ten – Locate the folder share

Select the whole directory as seen below. Don’t be tempted to select Virtual Hard Disks or Virtual Machines folder.


Step Eleven – Confirm Machine


Step Twelve – Select Import Type

Here you need to select Restore the Virtual Machine (use the existing unique ID).


Step Thirteen – Choose Destination and Storage Folders

Here I have just selected the defaults


Step Fourteen – Select Network

Now you can select the network you created earlier.


Step Fifteen – Start the Import


Step Sixteen – Some VM Settings Required

Now, this is the important bit to get the best performance out of the server and CPUs.  We need to disable NUMA spanning on the server first. Just right click on the server and select Hyper-V Settings


Now head to NUMA Spanning and untick Allow Virtual Machines to span physical NUMA nodes.  This means all processing will remain on a single processor within the server.


Next we need to ensure the server has the correct settings too and does not span multiple CPUs (as there could be a bottleneck between them).  Just make sure only 1 NUMA node and 1 socket are in use by each machine.


Step Seventeen – Start the Virtual Machine

One the settings have been changed, you can now go ahead and start it up



You can view the console of the virtual machine and see the status in the Pexip Infinity Management node under Status > Conference Nodes


Once the conference node is contactable you will see the last date and time and it will be in green, looking good.  You will also be then able to hit the web server of the conference node.


Step Eighteen – Conference Node Performance Sampling

Every time a conference node is started up or rebooted, the management node will perform a sampling of the system to understand what capabilities the system has.  As you can see here, this conference node is capable of 17 x 1080p calls, 33 x 720p calls, 74 x SD calls and/or 296 audio calls.


Step Nineteen – Viewing the Conference Node Performance Sampling

During the sampling, you could run Performance Monitor – from Server Manager, right click on the server and select Computer Management.


Then you need to select Performance > Monitoring Tools > Performance Monitor and then click the green plus button.  Type in the server name and then locate Hyper-V Hypervisor Logical Processor and add them to the Added Counters.  This will mean you will see each of the 48 threads of the processor.


Now that you are monitoring the processors, you can see the output of the workload.  I have selected to highlight (button to the left of the red x – two along from the green plus) the first 24 processor threads (0-23).  This means I can see them in the black highlight.  This means that 24-47 are in colour and not in use.  This means NUMA is working and the conference node is not spanning multiple CPUs.


Here you can see I’ve selected the 2nd lot of processor threads and they are idle whilst the active processor is being used during sampling.


Step Twenty – Setup another Node

As my server has two CPUs, I did the same again above in creating a new conference node and uploading to the server.  I doubled checked the Hyper-V settings to ensure it was not spanning multiple CPUs.

Step Twenty One – The Final Results

And now for the good news.  Two conference nodes on a 1U server/blade can achieve up to 66 ports of HD capacity.  Just remember the price of the server above and also don’t forget the Hyper-V server is also free.  Just need to add your PexJuice licensing.




If I was to host the management node on the same physical server, then you would lost 1-2 ports of capacity as the management node does not take up much resource.


All search results