How to handle Out-of-Memory issue



Similar documents
Sawmill Log Analyzer Best Practices!! Page 1 of 6. Sawmill Log Analyzer Best Practices

Windows Server Performance Monitoring

Practical issues in DIY RAID Recovery

Guideline for stresstest Page 1 of 6. Stress test

Overview of NVR System Data

Online Backup by Mozy. Common Questions

RAID Storage System of Standalone NVR

Introduction. What is RAID? The Array and RAID Controller Concept. Click here to print this article. Re-Printed From SLCentral

Configuring Apache Derby for Performance and Durability Olav Sandstå

Amazon Cloud Storage Options

DMS Performance Tuning Guide for SQL Server

How to recover a failed Storage Spaces

Apptix Online Backup by Mozy

Auslogics BoostSpeed 5 Manual

Jenesis Software - Podcast Episode 3

Hardware Configuration Guide

BrightStor ARCserve Backup for Windows

Rackspace Cloud Databases and Container-based Virtualization

Backup & Disaster Recovery Options

Technical White Paper. Symantec Backup Exec 10d System Sizing. Best Practices For Optimizing Performance of the Continuous Protection Server

USER MANUAL SlimComputer

BrightStor ARCserve Backup for Windows

Virtual server management: Top tips on managing storage in virtual server environments

Vess A2000 Series HA Surveillance with Milestone XProtect VMS Version 1.0

Remote Support. User Guide 7.23

IT of SPIM Data Storage and Compression. EMBO Course - August 27th! Jeff Oegema, Peter Steinbach, Oscar Gonzalez

Silent data corruption in SATA arrays: A solution

User Guide. Laplink Software, Inc. Laplink DiskImage 7 Professional. User Guide. UG-DiskImagePro-EN-7 (REV. 5/2013)

Client Hardware and Infrastructure Suggested Best Practices

<Insert Picture Here> RMAN Configuration and Performance Tuning Best Practices

Distribution One Server Requirements

My Secure Backup: How to reduce your backup size

Secure online file storage ITD CLIO Server Filestore

Simnet Registry Repair User Guide. Edition 1.3

How To Limit Volume In Bacula

Chapter 7: Distributed Systems: Warehouse-Scale Computing. Fall 2011 Jussi Kangasharju

MapGuide Open Source Repository Management Back up, restore, and recover your resource repository.

Traditionally, a typical SAN topology uses fibre channel switch wiring while a typical NAS topology uses TCP/IP protocol over common networking

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

RAID Implementation for StorSimple Storage Management Appliance

Pushing the Limits of Windows: Physical Memory Mark Russinovich (From Mark Russinovich Blog)

Backup architectures in the modern data center. Author: Edmond van As Competa IT b.v.

Milestone Interconnect TM

Q & A From Hitachi Data Systems WebTech Presentation:

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02)

LOCKSS on LINUX. CentOS6 Installation Manual 08/22/2013

Storage Architecture in XProtect Corporate

Maximizing Your Server Memory and Storage Investments with Windows Server 2012 R2

Getting Started with Turbo Your PC

The Microsoft Large Mailbox Vision

Summer Student Project Report

Local Playback Software User Manual (V2.0)

CODEX SOFTWARE UI - STORAGE TAB

Implementing an Automated Digital Video Archive Based on the Video Edition of XenData Software

Outline. Failure Types

Deploying VSaaS and Hosted Solutions Using CompleteView

Data Backup Options for SME s

WHITE PAPER BRENT WELCH NOVEMBER

Solution Brief: Creating Avid Project Archives

DISK DEFRAG Professional

Data Protection with IBM TotalStorage NAS and NSI Double- Take Data Replication Software

Copyright 1

RMAN What is Rman Why use Rman Understanding The Rman Architecture Taking Backup in Non archive Backup Mode Taking Backup in archive Mode

Implementing Offline Digital Video Storage using XenData Software

Maximizing Business Continuity and Minimizing Recovery Time Objectives in Windows Server Environments

Designing a Cloud Storage System

Capacity Planning Process Estimating the load Initial configuration

Choosing a computer for ANY-maze

VANGUARD ONLINE BACKUP

Backing Up TestTrack Native Project Databases

Dacorum U3A Computer Support Group. Friday 27th March 2015

How To Create A Multi Disk Raid

Performance Optimization Guide

NAS 249 Virtual Machine Configuration with VirtualBox

Optimizing LTO Backup Performance

How To Watch A Live Webcast On A Pc Or Mac Or Ipad (For Pc Or Ipa)

StarLeaf Cloud Troubleshooter

Maintaining Microsoft SCCM Health with Absolute DDS

Telecom DaySave. User Guide. Client Version

OBSERVEIT DEPLOYMENT SIZING GUIDE

Implementing a Digital Video Archive Based on XenData Software

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

Understanding BitBackup

QLIKVIEW ARCHITECTURE AND SYSTEM RESOURCE USAGE

Guarding Expert (Android Tablet) Mobile Client Software User Manual (V3.1)

IceWarp Unified Communications. AntiVirus Reference. Version 10.4

Backup and Disaster Recovery in Schools

Storage Backup and Disaster Recovery: Using New Technology to Develop Best Practices

TIME MACHINE. the easy way to back up your computer

How To Test For Performance And Scalability On A Server With A Multi-Core Computer (For A Large Server)

NetClient software user manual

Understanding Flash SSD Performance

Handling Multimedia Under Desktop Virtualization for Knowledge Workers

Muse Server Sizing. 18 June Document Version Muse

Deploying and Optimizing SQL Server for Virtual Machines

IP Camera Centralization Management. Client Application. (IPCMonitor) Feb, 2013 Version 1.9. User Manual

SOP Common service PC File Server

Transcription:

How to handle Out-of-Memory issue Overview Memory Usage Architecture Memory accumulation 32-bit application memory limitation Common Issues Encountered Too many cameras recording, or bitrate too high Too many playback files Too many playback files caused by FileSize_MB too small Installing more than 4GB on 32-bit operating or 64-bit operating system, but still uses 32-bit NVR software Disks too old or partially damaged Improper RAID configuration Using RAID-5 or RAID-6 could be a bad idea Too much playback loading while recording Local view loading too high Improper System Configuration Strategies Measure actual disk performance Measure actual network bandwidth usage Divide and Conquer Scientific method How to handle Out-of-Memory issue Overview Memory is an essential component for a working computer system, as well as a NVR server. Improper or incorrect system design could potentially lead to the exhaustion of memory and therefore generates "Out of memory" error. Like all resource bound issues, there is very little that a software developer (like Genius Vision) can do to resolve this type of issue or prevent it from happening. One must rely on skillful and experienced system designers to do that, whose expertise is beyond the scope of a software developer. This article is not intended to resolve "Out of memory" issues, but rather provide some architectural overview of Genius Vision NVR memory usage, as it can be an important clue to find out the exact point of cause. Memory Usage Architecture Below illustrates the NVR software memory usage architecture in a block diagram: Page 1 of 6

This diagram is fairly straightforward, and can imply following important clues: Recording capacity: For a proper system design, the bandwidth to record data must be higher than total camera video input. Obviously, if bandwidth to record data is less than total camera video input, then it would inevitably cause memory accumulation in PC and therefore leads to "Out of memory" error. Playback capacity: Since recording and playback shares the same disk bandwidth, one must take this into consideration carefully. If too many people are simultaneously performing playback tasks, it could cause the hard disk bandwidth to jam and therefore lead to memory accumulation. CPU capacity: If the CPU of the PC is too busy doing other tasks, it could also cause memory accumulation. Memory accumulation In technical sense, the term "memory accumulation" refers to the temporary state that the software receives more input than it can output, therefore it must extend the memory usage in order to continue to work correctly. Inside the safe range of memory usage, "memory accumulation" is an acceptable phenomena, as long as it stops before system runs out of memory, and then the software memory can reduce to normal operating range. 32-bit application memory limitation Modern 32-bit Windows operation system provides access to a maximum 4GB memory, and it leaves only 2GB for user-mode applications. In practice, memory can fragment during software processes, therefore in our experience the memory of the NVR server process should not exceed 1.3GB or you might risk encountering "Out of memory" error. Note: The aforementioned 1.3GB is not a fixed number but rather a heuristic value. Actual limit will depend on operation and environment. Also, 32-bit applications running under 64-bit operating system is still subject to all 32-bit memory limitations. Page 2 of 6

Common Issues Encountered Genius Vision KB - How to handle Out-of-Memory issue In this sections we will try to explain, that according to the memory usage architecture described above, some common issues that might have caused "Out of memory" error. Note this is not an exhaustive list and there could be other reasons behind this type of error. Too many cameras recording, or bitrate too high Total video input bandwidth exceeding the disk recording bandwidth will inevitably causes "Out of memory". Too many playback files Remember that there is a limit to everything. To prepare the archiver subsystem for fast playback, the memory required is proportional to the number of existing recorded files. The memory is used simply for file indexing. For example, the indexing memory required for 200MB file size is 5 times than the memory required for 1GB file size. For very large disk arrays, such as 20TB, 5 times of file count could be a major diaster. Too many playback files caused by FileSize_MB too small There are many default values in Storage Config that are computed carefully by the software automatically. Unless you are absolutely sure what you are doing, you should not change any of them. One parameter you should probably pay extra attention and that is FileSize_MB. Some users, for unknown reason, like to change FileSize_MB to a very small value (such as 200MB). This will increase memory loading significantly, as explained here. If you have already changed the FileSize_MB long time ago, the software could generate too many recorded files that can cause memory to overflow. In this case, you must unload the files to other locations, otherwise you won't be able to run the system properly. By "unload", we mean you must physically move those file out of the live system. To recover the moved file and playback is relative easy in Genius Vision NVR. Please refer to related document about "automatic diaster recovery". Briefly describing, a live NVR system can automatically detect any recorded files attached to the system by scanning all "gvrec" subdirectories on each drive. If you accidentally changed any Storage Config parameters of a particular recording directory, you can restore its default value by deleting the changed entry (such as "D:\gvrec") and click OK. The system will automatically generate default value again. Installing more than 4GB on 32-bit operating or 64-bit operating system, but still uses 32- bit NVR software If you feel memory is not enough and installed 32GB memory on your 64-bit Windows, you might be forgetting that you can still be using 32-bit NVR software, which is still subject to the 32-bit application memory limitation, no matter it's installed on 32-bit Windows or 64-bit Windows. This is an intrinsic technical constraint imposed by any 32-bit application, as you can Google it on the Internet very easily. Page 3 of 6

NOTE!!If you don't understand this thoroughly, you can get a false sense of security that you have already "physically" solved memory limitation, but in reality you haven't. Meaning you can install 32GB of physical memory, but still limit by the user-mode 2GB. Again, this is not a limit imposed by us (who is only a software application developer), it's an intrinsic limit to the technologies evolved through the last decades. The only product we have that supports native 64-bit application is Genius Vision (x64) NVR Enterprise Edition. The license price & structure of Enterprise Edition is different, and currently it's still under BETA testing. Disks too old or partially damaged Hard disks are known to wear-out after prolonged usage. Building an NVR server with old disks is particularly risky because old disks may contains bad-sectors that may lead to data corruption. Some disks are equipped with self-repair function that automatically moves data from bad-sectors to goodsectors so it does not show damages in an obvious way, but the self-repairing mechanism takes time, and therefore reduces the overall bandwidth. The read-write-heads of a damaged disk could also cause the disk to become much slower. To reduce this risk, you should periodically engage maintenance to your NVR system by measuring disk performances. If the performance is degraded since last measurement, it could mean a danger signal that the disk is about to be irreversibly damaged. In summary, old or damaged disks could slow down overall recording bandwidth and eventually causes "Out of memory" error. Improper RAID configuration Some cheap RAID controllers performs poorly when configured as disk array. Some trickily uses memory buffers to demonstrate high performance during sales process, but it cannot sustain prolonged recording operation (after long-time of operation it might slow down significantly). Remember using NVR means prolonged high-bandwidth usage and this cannot be achieved by some cheap RAID controllers. Careful and stressful testing must be conducted against the selected RAID controller to prevent this type of issue. Using RAID-5 or RAID-6 could be a bad idea Some RAID controller gives very poor performance on RAID-5 or RAID-6. This issue is very common in some low-end RAID controllers. Don't blindly trust the performance of your RAID controller, you have to test it for actual performance for prolonged hours. (See Measure actual bandwidths, and Improper RAID configuration). Additionally, all RAID system can engage in the state of "rebuilding" or "restoring redundancy". During this state, the RAID system will be very busy on other tasks. Simultaneously recording video to RAID system during this state could be risky (due to Memory accumulation). It's also noteworthy to mention that because any RAID system accesses all drives at the same time for reading or writing a single block, the loading toward disk wearing-out is much higher than a system Page 4 of 6

without RAID. In a system without RAID, only one disk will be accessed for a single block of data. In other words: The average lifespan for disks mounted on RAID is much shorter than that without RAID. Too much playback loading while recording Playback also eats disk bandwidth, which is shared with the recording bandwidth. Make sure you can control simultaneous playback loading under certain safe range by making proper calculation or testing. Remember that a disk operates much slower when performing read&write (playback&recording) at the same time than performing only writes (recording). Local view loading too high Local view on NVR servers sometimes eats CPU bandwidth and might cause the recording data accumulate in memory. This must also be looked after. Improper System Configuration Every computer system has its implicit limits that might not be explicit documented. Following is a list of examples of such cases: Added too many configuration items (cameras, channels, users, map, or policies, etc) Added too large recording space (which requires an index table that exceeds available memory). Too many network connection, with too heavy loading for each connection. Too many tasks performed concurrently. Other programs running in the same server that also consume memory. Strategies Measure actual disk performance For various kinds of capacity, we suggest you to use professional and specific tools to measure actual number. For example, CrystalDiskMark is a tool commonly used to measure disk performance under various testing conditions. You need to input test cases resemble what data amount that will really be used and let it run for a relatively long time which resembles the loading of a continuously running NVR server. Remember, disks are known to wear-out after prolonged usage. So disk performance will degrade over time. You must take charge periodical maintenance task to make sure all disks are in good health. Measure actual network bandwidth usage There are many readily available tools on the Internet that help you to do that. Example includes "iperf" and "NetMeter". It can give you the objective view of how much bandwidth you are giving into the NVR. Divide and Conquer To diagnose any problem of any complex system, it's wise to divide the system into smaller pieces that can operate independently. There should exist a boundary where a smaller system works while larger system doesn't. It would be an important clue to your problem. Page 5 of 6

For example: If you have a 100 cameras system that has problem, try to reduce to 50 cameras and see if problem persists. If you have a 50TB recording drive, try to reduce to 25TB or less. If you have a RAID controller, try to use the system without it. If you have a whole year of recorded video stacked in the NVR, remember it could take a lot of memory just to index those files. Try to "unload" the recorded video to somewhere else. If you have 10 users monitor live video & playback concurrently, try to reduce to 5 or less. If you are using multiple functions at the same time (intelligent detection, smart search, syncplayback, remote live view), try not to do that. Keep in mind these tasks, albeit convenient, are very resource consuming. A system multiplexing among too many tasks could easily exceed its capacity, no matter how good your hardware is. Scientific method Please refer to this article. Page 6 of 6