Performance - how to get the most out of CPU and GPU running Netcam Studio 1.9.(NCS)

How do I get the best out of my computer running Netcam Studio?
What parameters affect the performance most?
I am running a very high cpu load. How can that be lowered?
Can I use my old computer or must I buy a new expensive one?

All very good and important questions so here comes some guidelines what to look for and how to optimize.

By an optimization I have to my surprise discovered that one can quite often use an old computer with an i3 or i5 processor if you only have two to four cameras and moderate demands on resolution and speed.

Just a friendly recommendation here. In the following many settings can be changed and the final result depends on all the settings. So go slow, write down settings and changes so you can go back. Actually, this is a very interesting experience and you will learn a lot, but go slow and have fun!

Every installation is unique so therefore I recommend to start with a few cameras so CPU load is around 50%. Then you can change parameters and discover what happens. Always check in Task manager what is happening with the total CPU and GPU load and also the Received Ethernet speed.

You can read NCS´s consumption of cpu resources on several places. However, the important reading for final performance is the total CPU load in the Task Manager. NCS can have a very low reading for cpu usage, but the total CPU load in the Task Manager can be high. This is due to that there are many processes running on the computer that take up resources. Therefore, a dedicated computer for NCS is always best since it is possible to get rid of unnecessary programs and minimize number of processes running. A desktop computer used for email, word processing etc. will always have less cpu resources left for NCS.

So here are some parameters that affect the usage of cpu resources:

  • camera resolution, usually by default the camera is set to highest resolution. Do you really need that for the application?
  • camera frames per second, usually by default the setting is the highest frames per second. Do you need that in your application?
  • camera bitrate, not al cameras have a setting for this. If possible limit the bitrate and check the video quality. A bitrate (above 10 bit/sec) use a lot of cpu resources.
  • decoding buffer do not affect cpu resources, but it consumes RAM. Some cameras need a little bit longer buffer to work properly. If camera work properly use default setting.
  • if you have a GPU use that for decoding of the camera stream. Use DXD3.
  • disable overlay (only possible for licensed versions). Add text, logo, time etc use extra cpu resources.
  • run NCS as a service and connect to NCS using the Windows and/or web client from another computer. Running NCS X, blue icon, use a lot of cpu resources to show the camera videos.
  • use the GPU for encoding.
  • multi-threading is good if the recorded files jumps in time. That with give the encoder some extra resources if necessary.
  • recorded frames per second affects a lot depending on how often it records. I usually use 10 frames pers second for normal applications. A higher number use more cpu resources and also the files will be larger.
  • use variable frame rate (default)! If you change that the cpu load will usually go very high.

If there are many cameras and you really need that extra from the CPU I recommend to change the Power Plan. Default in Windows and most processors the Power Plan is set to Balanced. If you need change that to High Performance. Go to Control panel – Power Options and change to High Performance. I have noticed that in Windows 10 that option might be hidden and you need to do some commands to make it visible. Do a search for this on Internet and you will find many how to do this. This will also be different if you have a computer with a cpu in the i-series or if you have a Xeon processor. Unfortunately, I am not familiar with AMD, but somehow it should be similar.

Finally, there are many used computers out there that you can buy for a very reasonable price. If the installation is a heavy one with many cameras a server computer with a Xeon processor complemented with a graphics card can be a good solution. Xeon processors have many cores/threads which NCS like since many calculations can be made in parallell. Used servers usually have a really good price. A server solution gives also a very high stability and reliability.

Finally finally what about RAM and hard disk? For RAM I should say start with 8 GB. You can easily see how much memory NCS use. More cameras and also a longer decoding buffer eat memory, but check in Task Manager. For hard disk, in my larger installations I use regular HDD and even NAS for storage. Large SSD´s are still relative expensive so …

Good luck and happy learning!