VMS Server Sizing

By: Sean Patton, Published on May 25, 2018

Specifying the right sized PC/server for VMS software is one of the most important yet difficult decisions in IP video surveillance. In the past manufacturers designed and certified that a specific appliance 'box' would support a specific number of cameras (e.g., 4, 8, 16, etc.). Of course, the simplicity came with limited flexibility for expansion.

With VMS software being widely deployed on 'regular' PCs/servers, integrators need to properly specify the right ones. If your machine is not powerful enough for your cameras, you can face all sorts of painful issues and difficult to troubleshoot problems.

The good news is, fundamental guidelines exist to help select the right hardware.

Inside, we explain many of the factors to consider, including:

  • New Technology Impact
  • Key hardware drivers (CPU, RAM)
  • Server Cost Differentials
  • Maximum Throughput
  • Throughput Calculations
  • Bits versus Bytes
  • Smart Codec Impact
  • H.265 Impact
  • GPU Processing
  • Multicast Support
  • Multiple NIC Support
  • Manufacturer Specifications

********** *** ***** ***** PC/server *** *** ******** is *** ** *** most ********* *** ********* decisions ** ** ***** surveillance. ** *** **** manufacturers ******** *** ********* that * ******** ********* 'box' ***** ******* * specific ****** ** ******* (e.g., *, *, **, etc.). ** ******, *** simplicity **** **** ******* flexibility *** *********.

**** *** ************* ****** ********** '*******' ***/*******, *********** need ** ******** ******* the ***** ****. ** your ******* ** *** powerful ****** *** **** cameras, *** *** **** all ***** ** ******* issues *** ********* ** troubleshoot ********.

*** **** **** **, fundamental ********** ***** ** help ****** *** ***** hardware.

******, ** ******* **** of *** ******* ** consider, *********:

  • *** ********** ******
  • *** ******** ******* (***, RAM)
  • ****** **** *************
  • ******* **********
  • ********** ************
  • **** ****** *****
  • ***** ***** ******
  • *.*** ******
  • *** **********
  • ********* *******
  • ******** *** *******
  • ************ **************

[***************]

New ********** ******

***** ********** ************ ** the **** * ***** will **** ** ****** on *********** *** ****** of ******* **** * server *** *******. ******* that ****** ** *** higher ********** *** ******** the ****** ** ******* required. ***** ******, *.*** streaming *******, *** *** offloading *** ******** *** channels *** ******.

Key ******** *******

*** ****** *********** ** most ********* ** *** and ***, ******** ********* how **** ***** *** be ********* *** ******* and *********. ******-***** ****** detection ***** **** ******** processor **** ************* *** needs ** ** ***** into ******* **** ******** server ********.  ***** ************ vary ********* ** *** specific *** ****, *** the ********* ** * consensus ** **** ****** manufacturer **************:

  • ***** *******, ~*-** *******: Dual-core **********, **** ** Intel **** * *** e6850 ** **** **-*****, 4GB ***
  • ***-**** *******, ~**-** *******: Quad-core *********, **** ** Core **-*****, *** ***
  • ***** *******, ~**+ *******: 6-core ********** **** ** Xeon ** ****** ** Core **-*****, ** ** RAM

**** ********* *** *** configuration ******* *** ** restricted ** **** ****** in ***-***** ******* **** as **** ** **. For ********, **** * Duo *** ** ********** are ********* **** ***** in ******* ***, ***** Xeons *** ** ***** in ****-*** ************ *** servers.

Server *****

******* *** ********* *** available **** **** ****** and ********* ****** ** the ***-$*** *** *****, whereas ***/*** ********** ***. Small ******* *** ** run ** *****-******* *** lower **** *******, ***********, and **** ****-** ********, in *** ***** ** ~$500-1,000 ***. ***-***** ******* normally **** **** ****** workstations ** ***** **** servers, ~$*,***-*,***. ***** ******* may **** ******** ***** this *****, ********* ** configuration *** ******* ****. $6,000-10,000 ** **** ** common *** **** ****** counts, *** ** *** increase ** ***, *** speed, *** *** ******** of ****** ****** ** hard ***** ****, ********* power ********, *** ******** NICs ***** ******** ** this *****.

********** ********* ***** ** one ** *** ****** costs ******** ** ****** sizing. ********** ***** **** one ** *** **** generally **** ***** $*** USD ** *** **** of * ******. **** cost *********, *******, ** the ***** ****** ** processor ***** *** ******** cores *** *******, ** the **** **** * six **** *.** *** Xeon ********* ** ***** core *.** *** *** be $***-***.

Importance ** ******* **********

*** **** ** ********** what *** ********* ******* throughput ** *** ****** will **. ** *** calculate **** ***** **** based ** ******* ****** throughput, ** ***** ***** well ***** *** ******* for ***** ******* ** time, ********* ** ******* packets *** **** ** video. **** *********** **** oversize * ****** ** 10-20% ******* ** **** concern.

Total ******* ********** ************

**** ********** *******, ***** maximum ********** ******** ** the **** ******** ******. Throughput ** *** ***** amount ** ********* ****** into *** *** *** machine (*.*., ** **/*, 80Mb/s, ***.)

***** *** *** ******* which *** ****** ****:

  • *** ********** ** ********* cameras: *** ******** *** bitrate ** ******* ********* is ******** *** ******* component ** ***** **********. This *** ** ** simple ** *********** *** number ** ******* ** the ****** ****, *.*., twenty ***** ******* **** a ****** **** ** 4Mbps **** = ** Mbps *****. *******, **** using ******** *******, ***** must **** **** ******* each ******'****** ************* ***********, *** *******. If ******* ***** ***** 6-8 **/* ** *****, when ***** *********, **** may ****** ******** ** underspecified ******. *** *** to ****** **** ** using ******* **** ******* maximum *** ***** (*** *** ****** ** using ***).
  • *** ****** ** ********** clients: *** ****** ****** taken **** ******* ** throughput ************ ** ********** clients. **** ** *********** the ******** *********** ** perform, ***** ****** ******* which *** ***** ********, at *** ***** **** multiple ***** *** ******* to *** ****** *** view ******* ******* ** cameras. ** ****, ** budget ******, ********** ****** be ********** *** *** worst ****, **** *** largest ****** ** ******* connected ******* *** ******* simultaneously. ********** *** ** measured ** ******* ****, with *** ******** ***** via *** *** ******, if **'* *********, ** seen ** **** ******* from * *** ******:

client throughput

*** ******'* ***** ********** is *** *** ** these *** *******. ** a ****** **** (**) 1080p ******* **** * Mb/s *******, *** *** clients ******* *** ******* (80 **** *****) ****** be ********* ** ****** 120 ****. ***** ************ are ******** ** *** architecture. **** **** ******* the ****** ** ******** to *** ****** ******, without ******* *** ****** through *** ******, ****** nothing ** ********** ************. Others **** ********* ******* from ******* ** **** to ******* **** *** camera ** *** ****-******, i.e., ** * *****-****** view. ***** ****** ******* how ***** ******* ****** throughput **** ***** *** provider.

**** ****** *****

** ******* ***** ********* bits *** *****. **** cameras ****** ***** ********** using **** *** ****** but **** *** ******* specify ***** ****** **** using ***** *** ******. 8 **** = * byte, ** ** * manufacturer ********** ****/* **********, that ** ***** ** 320 **/* ** ****** streams.

Smart ***** ******

** **** *****,***** ********** ******* ******** *************, from ~**% ** * minimum ** ****** ****** to **% ** **** in *** ****** ******. While ***** ********** ****** average system ****, ******: ******* must ***** ** ***** to *********** ***********.

*** *******, ** *** average ******* ** ~** Kb/s *** ****** *** to ***** ******, *** bandwidth ****** ** ~*** Kb/s, this ****** ********** ****** be **** ** ********* server **** *** ****** **********. Failing ** ******* *** this ********* ********* *** result ** ******* ******** frames ***** ***** ****.

H.265 ******

** ******** ** ***** codecs, *.*** ******* ******* ******** to *.*** *** ******, with **-**% ********** ******. However, ***** ********** *** generally "**** ****", ******* of ******* ** ******/********** levels ** ** ***** codecs. ******* ** ****, the ******* ****** ******* when ***** ***** ****** are *** ******* **** using ******* (***-*****) *.***.

***** ****** **** **** that *.*** ******* **** increase CPU (***/** ***) **** when ***** ******-**** ****** detection. ******* *.*** ** more ********* ********* ** decode **** *.***, **** hardware ******** **** ****** and **** ******, ***** these ******* *** ****** detection *** ****** *** ****. Users ****** ** ***** of **** **** ****** systems *** ******** ***** H.264 *** ****** ********* where ********* (***-*********) ******* are **** *** ********.

GPU ********** *******

********** ******-***** ********* (*********** streams, ****** *********, ***** analytics, ***) ** *** resources ** ******* ** compared ** *** ******* for *** ********** ******* in ****** ********.

**** *** ******* ** this *********** ******** ********** ***** Motion *********** *** ******, ***** Intel ** ****** *** resources. *** ******* ****** a *********** ******** (**% - **%) ** *** load **** ********** ** the ******'* ******* ***** GPU.

** ********** *********** (**) or **** ******** ********* become **** ****** ** the ***** ******** ********, we ****** **** *** resource ************ **** ****** much **** ********.

Multicast ******* ******* ******

********* ******** ** * VMS ******** *** ****** the ************ ** *** total ********** ********* ** a ******.

* *** **** ******** multicasting, **** * ******** configured *******, **** ****** Client ******** ** ******* viewing ******* ******** **** the ******* ******* ******, instead ** **** *** server. *** ****** **** calculations **** **** **** to ******* *** *** incoming ******* **** *** camera, *** ******** ******* will **** ** *** the ***** **** *** recorded. **** *** *** potential ** **** *********** resources ** **** ******** client ************ *** **** have * ********** ****** on ******* ***** **** viewing ** *******.

Multiple *** *******

**** ************ **** ******* cameras ** ** ********* in *** ** **** isolated **** ******** **** viewing ****** ***. ** other ****-************ ************, * secondary *** *** ** required *** ********/****** *************. In **** ** ***** situations ******** * ******/*********** solution **** *** ******* expansion **** *** ******** support ******** ************* ****** the ****** ********* ****** and *** ********.

Manufacturer **************

**** ********** ** *****, the ****** **** ********* factor ** ************ ***************. Users ********** ******* ***** do *** **** *** minimum ************ *** ***** given ********** *** **** challenges **** ******* **** support ** ****** *****. If ** ********** ** willing ** ****** *** potential **** ** ***** an "************" (********* ** specifications) ****** *** *** configurations ***** ** ***** project ******* *** **********, they *** ** **** to **** **** **** from * ***** *******. For ***** ******* ** play ** ****, ******** strictly ** ************ *************** at * ******* ** recommended.

*** *** ***** *************** are ************ ****** ******* manufacturers. **** **** ***** some ** ***** *** specified ** ********** ****, others *** **** ******* to * ****** ** cameras *** ******. **** varies ** ************, *** users ****** ****** ***** these *******:

  • ********: ******** ***** *** configurations ** *********** ************ *******, **** *** ****** streaming *********** ******* ** to **** ****, *** ACC *********** ********** ** to *******.
  • *****: ***** ***** ****** (and ******) *************** ** the ***************** ***** *** ***** server ******** ********. ***** ****** *** listed ** 50-250 ****, *** ***-*** Mbps. *************** *** ***** for ******* *** ********* configurations.
  • *******: ****** ************ *** given *** *******, ***********, and ****-*********** ************** *********'* *************. ** ******** ***** are ***** *** **** Performance ***** ** **** supported ******* *** *** of ***** *********** ********** at ** ** *,******* read (**** ******* ************ output).
  • *********: ****** ************ *** listed *** *** *** High-End ******* *********** *************. ********** *********** ***** from ***-*** ******* ********** up ** ******* ***** / ******* ******, *** High-End ******* ********** ** to ******* ***** / 400Mbps ****** ******* ***********.
  • *********: ********* ******** ******** ***** ******* ******* hardware *************** **** ******* ******. No ********** *********** ** specifications *** ********* *** listed.

******* ***** *************** **** work *** * ***** configuration, **** **** ******** for ********* ****** ** variances, ************ ******** *********** may ** *************. *******, there ** ****** ****** to ****-****** ******** *************** to **** *** ***** project, ** ******* ** general *************** *** ******* throughput ******. ***** ****** also ******* ******* ***** recommendations *** **-**-****, ** call **** ******* *** pre-sales **********, ** **** any ******* ***********, ***** specs *** ****** ******** at *** ****, ******* notice.

 

 

Comments (16)

Sean,

Nice article on server sizing.  With 1080p cameras we had to offload the video motion detection (VMD) off the server and let the cameras do that analysis and send VMD events to the Milestone server.  That has a dramatic reduction in the amount of CPU processing power (and thus cost) you will need for the server.

Without doing server-side VMD, the server sizing is most influenced by the I/O subsystem.  The type of hard drives, RAID technology, and RAID controller selection are important.

The latest advice I received from Milestone on server I/O subsystems required 15,000 RPM SAS hard drives.  Those are now available in 900 GB capacity.  We also use LSI RAID cards with battery backed up cache.  Milestone recommends placing the drives in a RAID 10 set.  Note that our LSI RAID controller does not allow more than 16 drives in a RAID set (we have a 24 bay server).  There may be other reasons (rebuild time) not to use larger RAID sets anyway.  With all that said, I have seen the Milestone Husky systems use SATA drives and I think in a RAID 5 configuration so I am a bit perplexed :-).

I would really like to hear anyone's experience using native 4K sector hard drives over the old 512 byte sector drives.  Is there a performance advantage and do any of the video management system software available take advantage of native 4K sector drives for improved read/write performance?

RAID 5 is fine for small drive quantity, but beyond I believe 6 drives, it becomes too risky, I would then at least use RAID 6.  RAID 10 is great (performance-wise) but more complex for most to maintain.  I would recommend better hardware with RAID 6 (SSD offloading, faster drives) than to use RAID 10.  Why is that?  With RAID 10, you can lose half your drives and your still okay, but is that all, NO.  You can lose two of the wrong pair of drives and good bye to all your data.  RAID 6 builds on RAID 5 but has two parities instead of one.  The number of drives before failure is no longer tolerable is much higher (it's not linear) and I think it's in the late 20's or early 30's of drives.

4K drives should be less about performance and more about integrity.  Performance could be there but it will be minor, SSD would offer much larger gains.

RAID Penalties?

I noticed the very well written article referred to camera court. When sizing servers is their a difference in using camera count verse imager count?  I.e you have a single imager 1080p fixed camera and a multi imager 1080p camera.  

Also as specs very by manufacture, how do you recommend I write a SOW that lists min specs without over or under specifying the server and/or workstation size?

Yes indeed the multi imager cameras present a different load to a server.  The concept I use to explain this is as follows...

A single imager camera (NOT panoramic, 360 etc..just a plain vanilla cam) will present the data to a system much like a series of 'tractor-trailer-trucks' delivering their goods to the destination.  At the destination, the payload is unloaded and off he goes.

The multi-imager adds this twist.... the truck is now built with multiple trailers linked together like a train, so when it arrives, the trailers have to be separated before they can be unloaded.  This adds load to the entire system... CPU, Memory, Storage so when I see these types of cams, I suggest at least doubling any estimated resources for each one.   HD encoders also fall into this category (like Axis F44 type).

A spec request simply based on camera count is only useful for an analog based system.

An IP system needs to know resolution, FPS, scene complexity, scene motion amount and stream quality (compression) to be able to have a chance at a decent recommendation based on estimates.   The IPVM team always recommends doing on-site reference measurements with actual cameras for the most accurate results. 

Keep in mind that the primary reason for RAID is data protection, followed by the potential performance increase (assuming the use of hardware RAID).   RAID6 is the best protection whereas RAID 10 typically provide the best speed.   RAID5 is more popular because it combines a little bit of everything (protection, capacity, Read Speed) as long as you don't make your arrays too large (due to rebuild times with the larger HDD being so long, you want to minimize the potential of a 2nd drive going bad while the array is rebuilding).

As Mike stated (with a lot of specific details), you need to be concerned with the number of imagers, but mainly just the throughput and recording rates (which is obviously a product of the imagers). How you get to an accurate totalynumber will vary, and as Mike pointed out, depending on the camera make/model and the VMS chosen, there will be additional resource requirements.

Your last question brings up one of the more difficult tasks in creating a vendor-agnostic specification. In most ways, as an integrator, I saw minimum specifications as merely a glancing check to see if there is a sign to what vendor a customer might be leaning towards. The server that you receive should minimally be able to support the throughput and retention of the system the integrator is providing, plus whatever percentage of growth you may want to plan for. I've had customers and specifications that include a 30 day post-installation check to confirm that the server was retaining the required video, with whatever percentage open space on the drives. If an integrator is coming in with all H265 or smart codec cameras, and is figuring a low amount of motion, versus another integrator with standard H264 and figuring a higher amount of motion, with a different VMS that is going to perform server side analytics/motion detection, than let the integrators make that choice. 

The main other option is to decide specifically what VMS manufacturer, camera manufacturer, % of motion, etc so you have a complete system design to put out for bid.

Thank you Mike and Sean..

I understand the points you are making, having to specify vendor-agnostic specifications for the goverment is very hard when we can not specify a vms manufacture or camera manufacture. Also I have never offered or had a potential bidder ask to come on site while preparing there proposal to test cameras. 

One thing we are allowed to do is present a minimum spec and site a specific vendor and model with the phase or similar. Even with that hint, usually only 1 and 10 vendors I would say, propose what I am hinting at for some reason.  I feel your frustration with bad specs and hope you feel mine with trying to generate that vendor-agnostic SOW that fits within the FAR, with enough detail to get what I need.

i think it would be a great project for IPVM to write a perfect vendor-agnostic IP vms/cctv sow once a year and let both sides (specifies and integrators) provide constructive feedback. Hey that could even be a new class for IPVM to offer.

IPVM has quite a few articles about the RFP process....good and bad.   Look for their tag under the 'Articles'.   As of this post, there are 59 of them.

You make my point exactly, RFPs are very important on both sides of the fence.  You as a manufacture and me as an end user should speak the common language, however it is one of the most contentious issues.. 

Hmm...as informative as this is... it still doesn't completely answer questions I posed in this topic.

Eocortex provides a calculator (based on resolution, FPS, analytics in use) that lists an example CPU and/or GPU. We match those up to https://www.cpubenchmark.net/ to match them to other CPU (Xeon) models since they only provide desktop CPU's.

I gives a good indication but can be a tad on the light side server spec wise.

I understand there are a lot of variables but it was stated

 

VMS server performance is most dependent on CPU and RAM

 

and

 

When specifying servers, total maximum throughput handling is the most critical metric. Throughput is the total amount of bandwidth coming into and out the machine (e.g., 40 Mb/s, 80Mb/s, etc.)

 

How is the CPU rated for bandwidth?

 

I read this article https://en.wikipedia.org/wiki/Memory_bandwidth

 

The looked up the specs on this processor https://ark.intel.com/products/126688/Intel-Core-i3-8100-Processor-6M-Cache-3-60-GHz-

 

With a bandwidth capacity of 37.5GB/s that means 37,000Mbps right?

 

Well according to DW I can run around 4000 4MP cameras at 30 FPS and still not max this processor out.

 

 

I am a noob at this but I know enough to know this does not add up.

 

What am I missing?

 

FYI I do not have any specs or system in mind, just trying to understand how to get close to specing the right server for future projects.

If there was a way to stream your video raw direct to hardware CPU memory, then yes, you could support 4000 cameras on that processor. =)

Unfortunately, in most cases, you are stuck working in a Windows or Linux operating system which is going to process the streams and create "bottlenecks".

This is why websites like CPU Benchmark exist for the PC gaming market. Unfortunately (or fortunately) we're not all trying to play Skyrim at 120fps, so benchmarking would have limited usefulness for video surveillance. Your best bet is to follow the VMS manufacturer's recommendations and work with their sales/support to select server specifications.

Still valid. Loving this.

Not sure if you are referring to UI4 and the  screen shot UI4 provided but it is incomplete and the statement "Well according to DW I can run around 4000 4MP cameras at 30 FPS and still not max this processor out." is completely invalid, the number of servers required is found on the next page of the Storage Calculator 

No, this is a good analysis of what is needed to begin. And all NVR calculators are garbage. You have to use them very carefully. If you do not understand the environment you are making a projection for, nor how well the users will use the various features to avoid extra bitrates, it is going to be difficult.

Read this IPVM report for free.

This article is part of IPVM's 6,367 reports, 855 tests and is only available to members. To get a one-time preview of our work, enter your work email to access the full article.

Already a member? Login here | Join now

Related Reports

Axis Door Station A8207-VE Tested on Aug 07, 2019
Axis newest door station, the A8207-VE, claims to deliver "video surveillance, two-way communication, and access control" in a single device. But...
Outdoor Camera Mounting Hardware Guide on Feb 21, 2019
Mounting cameras outdoors can be challenging, requiring understanding different types of equipment and methods. In this guide, we teach this...
NTP / Network Time Guide For Video Surveillance on Jan 10, 2019
Inaccurate time can lead to missing or inadmissible video, yet this topic is often overlooked, with cameras and servers left defaulted,...
IP Camera Installation Tool Shootout - Avigilon, Axis, Ideal, Hanwha, Triplett, Veracity on Oct 23, 2018
Setting up IP cameras has historically been challenging, with techs often precariously using a laptop on a ladder or lift. Some options for install...
SNMP / Network Monitoring For Surveillance on Aug 21, 2018
Surveillance systems typically rely on the the VMS to report issues, but this most often just means knowing a camera is "down" with no warning or...
Video Analytics Integration Guide on Aug 16, 2018
Video analytics is hot again (at least conceptually) but integrating video analytics with VMSes can be challenging. This is especially significant...
4 Most Difficult Camera Installs (Statistics) on Jul 12, 2018
Heavy housings, cumbersome brackets, heavy ladders required, and tricky field of view requirements will cause difficulties no matter the camera...
Installing Box Cameras Indoors Guide on May 22, 2018
This guide starts our physical installation for video surveillance series, starting with Box Cameras, one of the oldest and most basic types....
3D Install App For Physical Security (BILT) on Mar 13, 2018
Installation of security hardware is a skill that has historically been complicated to train new installers, and just as complicated to quote...
Remote Network Access for Video Surveillance Guide on Feb 21, 2018
Remotely accessing surveillance systems is key in 2020, with more and more users relying on mobile apps as their main way of operating the system....

Most Recent Industry Reports

Hikvision Illicitly Uses Back To The Future In Marketing on Jul 03, 2020
NBCUniversal told IPVM that Hikvision UK's ongoing coronavirus marketing campaign using NBCUniversal's assets was not allowed. Hikvision mass...
Verkada: "IPVM Should Never Be Your Source of News" on Jul 02, 2020
Verkada was unhappy with IPVM's recent coverage declaring that reading IPVM is 'not a good look' and that 'IPVM should never be your source of...
Vintra Presents FulcrumAI Face Recognition on Jul 02, 2020
Vintra presented its FulcrumAI face recognition and mask detection offering at the May 2020 IPVM Startups show. Inside this report: A...
Uniview Wrist Temperature Reader Tested on Jul 02, 2020
Uniview is promoting measuring wrist temperatures whereas most others are just offering forehead or inner canthus measurements. But how well does...
Dahua USA Admits Thermal Solutions "Qualify As Medical Devices" on Jul 02, 2020
Dahua USA has issued a press release admitting a controversial point in the industry but an obvious one to the US FDA, that the thermal temperature...
Access Control Online Show - July 2020 - With 40+ Manufacturers - Register Now on Jul 01, 2020
IPVM is excited to announce our July 2020 Access Control Show. With 40+ companies presenting across 4 days, this is a unique opportunity to hear...
Hanwha Face Mask Detection Tested on Jul 01, 2020
Face mask detection or, more specifically lack-of-face-mask detection, is an expanding offering in the midst of coronavirus. Hanwha in partnership...
UK Government Says Fever Cameras "Unsuitable" on Jul 01, 2020
The UK government's medical device regulator, MHRA, told IPVM that fever-seeking thermal cameras are "unsuitable for this purpose" and recommends...
Camera Course Summer 2020 on Jun 30, 2020
This is the only independent surveillance camera course, based on in-depth product and technology testing. Lots of manufacturer training...
Worst Over But Integrators Still Dealing With Coronavirus Problems (June Statistics) on Jun 30, 2020
While numbers of integrators very impacted by Coronavirus continue to drop, most are still moderately dealing with the pandemic's problems, June...