Last month, I changed my home PC and bought an Intel I7, it’s a quad-core with Hyper-threading technology; Windows 7 sees it as eight logical processors. It’s a very powerful workstation for only $ 1000 usd. Imagine how many cameras a high end workstation with 2 quad core Intel I7 processor (16 logical processors) can decode at the same time, no reasons to complain about the expensive decoding cost of H.264.Unfortunately, 8 or 16 cores doesn’t mean all softwares automatically run 8-16x faster.
It would be 8-16x faster if the CPU clock speed was increased by 800%-1600%. Designing software that takes advantages of 1-2 cores is different than designing software that scales linearly from 8 to 64 processing cores.
Windows 7 is definetly better than Vista, I'm using it for a while now on my Tablet PC and it's a lot faster. Microsoft rewrote some portion of the Windows 7 kernel to leverage more efficiently multi-core processors, I was not able to find out which improvements they made but I clearly saw a difference.
With H.264 cameras, it's important that VMS software leverage multi-core computers efficiently. The next article gives methods to evaluate if a VMS software will scale on a multi-core system.
Next article
"With H.264 cameras, it's important that VMS software leverage multi-core computers efficiently"
ReplyDeletewhy??
"Before Windows Server 2003 R2, all TCP/IP communications in Windows were managed on the same logical processor"
but there is chip solutions even on XP pro
i was installed 22 IP cam on the dell optilex 740 its work fine. if you installed 3 network (with different IRQ) card the OS reffer to each divice with different threde. try this its working :)
Hai
Hi Hai,
ReplyDeleteIf I understand correctly your suggestion, you must configure 3 different IP address on 3 different subnet/VLAN.
Then you must split your cameras evenly on 3 subnet/VLAN.
It's easier to run Windows 2003 R2 or 2008.
Jo
To answer your first question,
ReplyDeleteWhy: "With H.264 cameras, it's important that VMS software leverage multi-core computers efficiently"
It's important because H.264 cameras require more CPU to decode than MPEG-4.
If your software doesn't evently spread the load, you will be quickly limited.
Jo
Hi Jonathan,
ReplyDeleteSorry my english, is not very high... :)
"Before Windows Server 2003 R2, all TCP/IP communications in Windows were managed on the same logical processor"
Are you sure? The I/O Completion Port model (async I/O call) support the multi processors architecture, and can run on Windows2000. So, the TCP/IP communications can be managed on multiple processors?
DevilFish
Hi DevilFish,
ReplyDeleteI/O completion ports are an efficent way to implement multi-threaded applications but the limitation I refer is in the Windows kernel (TCP/IP stack) and impact any applications that receives a lot of network traffic.
It has been solved in Server 2003 R2, they called that improvement as "Receive-Side Scaling".
You can find more information in a white paper written by Microsoft:
ttp://www.microsoft.com/whdc/device/network/scale.mspx
"Thus in Windows Server™ 2003 and prior operating systems, the network protocol stack’s receive processing (and in some cases transmit processing) was effectively limited to the amount of computation a single CPU could provide"
Jo