Anyone running > 20 cameras here?
I'm trialing about 25 cameras right now on a M1 Mac Mini. Starting to feel like I'm at the edge of capabilities of my system, but really want to be able to get to 30 cameras.
As I start to assess what needs beefing up, it would be nice to hear from others who have broken this barrier. Did you need 2.5GB LAN speeds? What media do you write to and how? With 10 cameras I had been (and still trying) to write to a USB 3.0 SSD but thinking I may need to setup my UnRaid with 2 dedicated disks in Raid 0 Pool config over SMB to keep up. Or unnecessary? Not enough?
Also wondering if my M1 may be choking. When I try to display all cameras on ATV app I get application slow-downs (so I'm writing 20 cameras and displaying 20 cameras on the M1 while displaying 16 cameras on ATV).
Any advice for this larger scale deployment are welcome.
Comments
No specific suggestions but you should be able to see how your MacMini is doing in the Activity Monitor application. You'll find it in the Utility folder inside your Application folder.
Well. I'm aware of that application - using about 47% CPU for SS at the moment. I think that's reasonable (actually impressive).
Using about 7GB of my 8GB RAM. Not sure how to interpret that.
The other info isn't terribly helpful.
When I say "system" I am thinking macro-system as well as machine-specific.
Thanks for the suggestion.
I have 2 systems running with 22x 2MP cameras on an Intel based Hackintosh with Intel i3-8100 cpu. On a "normal" 1Gbits LAN with an average Cpu usage of 24%...
The Intel i3-8100 cpu is comparable with a Mac mini 2018, so your Mac mini M1 can handle a lot more. According to the "System Requirements Calculator" your Mac mini M1 should be able handle 48x 4MP H.265 with 15 fps.
Please share your config of the cameras (resolution, frames per seconde and compression)
For storage I use 2 internal 3.5 inch Western Digital harddrives. In case of a Mac mini, I would suggest to use multiple USB 3 drives.
Thanks for these data points.
About 80% of my cameras are 2MP, 10% 4MP, and 1 at 8MP.
I think some of the stuttering is probably related to disk write speed.
In the camera info window I see red on some cameras for "pressure" which I believe is disk pressure. However, when I look at the graph for system disk pressure it does not have any spikes and seems quite low.
Running 30 cams on a Mini M1 and it just works great.
Most cams are h264/h265 2K 15 FPS udp , a fews are 4K.
No continuous recording, only motion captures on an external usb SSD.
The M1 is a very capable chip, but it has its limitations, specifically:
All of the above can be mitigated by lowering the frame rate of all the cameras.
The more advanced chips (M1/M2 Pro/Max) have much higher capability for live video processing, so are able to handle many more cameras than a basic M1.
Also check out our System Requirements Calculator, which is helpful when deciding which Mac hardware to buy for a particular system.
@Ben thanks for the helpful hints. I've been reading the SS manual for literally years now and hadn't connected the dots on hardware vs software encoding for the M1. A part of me just thought those chips were invincible and would never need assistance.
Also, I erroneously attributed the "pressure" column as disk pressure and not encoding pressure. Super helpful distinction and again I missed that in the manual.
This is on my M2 Pro Mini....
It very easily handles all the cameras including continuous recording, motion recording with SS AI object detection on all the cameras.
The "spare" is temporarily taking the place of another camera that is usually in the system.
Wow. Big difference. I'm getting a lot of red on the pressure column.
Thanks for posting!
This might also be useful. CPU usage and incoming data rate for today. The Mac Mini M2 Pro is also continuously displaying 18 cameras on screen. The CPU usage plateaus are when the machine is also being used for web browsing and including entertainment video playback. As you can see, CPU load is quite reasonable despite that many cameras. The M2 Pro Mac Mini is an amazing powerhouse for Security Spy usage.
Most of my cameras are on H264(H) CBR compression because that is where I get the best detail capture on the Empire Tech (Dahua) cameras. Took considerable effort to compare H264, H264H, and H265 plus VBR/CBR to decide what worked best on the critical cameras
Plenty of storage with a 40TB RAID. So, I tune the majority of the cameras for consistent detail quality rather than max storage efficiency.
Very interesting. Thanks.
I had never thought to see if CBR gave better detail than VBR. I had just thought VBR would always just provide the best at the moment.
For my use cases, I'd never really need more than 8 days of archive, but I do appreciate the dials and knobs. Looks like I can set 8 days for continuous recording archives, but keep motion events longer if I want.
Are you using RAID 10 by chance? I am trialing RAID 0 on an Unraid machine with a pool of 2 drives. In my testing I only got about 30% fast write speeds than straight writes without RAID. Not sure if I really need that 30% extra and may be better to have more redundancy.
No, Just a plain RAID 0 (striped) with two drives.
If I need to retool my hardware I would probably buy a newer Intel i5 or i7 to beef up my existing home server and try the Hackintosh route.
Not my experience right now. How much RAM?
@pcgaasbeek are you running on bare metal or VM? I’m exploring options.
@Paul how is your system doing? Any updates? Did you run your hackintosh on bare metal?
the option of running a hackintosh on a VM looks to be limited and perhaps to fragile for something that should run like an appliance.
I'm getting a lot of red for CPU pressure despite moving about half of cameras to software decode.
I'm running on bare metal Hackintosh i3-8100 with 8GB RAM + 120GB SSD + 2x 4TB hdd
I am planning to upgrade my Mac mini (by that I mean, replace an old iMac in the living room with my current M1 Mac mini 8GB and purchase either a new M2 or M2 pro with 16GB RAM.
Does anyone think I need an M2 Pro vs a regular M2 with 16GB RAM? I am aiming for about 35 cameras total.
My strong piece of advice is to get more RAM. At 25 cameras, the GPU uses up enough to make swap active with 16 g of RAM. That meant, opening Safari while SS is running pushes the machine over the available RAM even though CPU, GPU, Drive, and Network are only moderately loaded. The limiting factor became RAM and now we had to switch to a machine with 65 g RAM. MUCH smoother now when other apps are opened.
Even with the modern architecture? I've noticed that the Apple Silicon devices really don't need/use as much RAM as the Intel machines once did. I'd never dream of buying a machine with only 8GB RAM but that's the M1 base and worked perfectly fine with many tasks and about 12 cameras. It's only passed that that I noticed.
So even with the M2 handling all of the decoding and ML that 16GB won't be enough? I think I'd be getting into the Mac Studio territory with 32GB RAM.
I agree with @guykuo - don't skimp on the RAM. With unified RAM, the GPU can sometimes consume significant amounts, leaving less for the CPU or Media Engine to use.
The other thing to note is that there is currently a bug in macOS 14 related to video processing with the M2 chip specifically, when using more than around 30 video streams. So hold off updating to M2 for now until this is fixed. This doesn't seem to affect M1 or M3; specifically M2 and macOS 14.
Understood and thanks for the advice, both.
I haven't bought a Mac since the M1 first arrived so my head is still swirling with all the new options. Max, Ultra, Pro, Pro Max, Max Pro, and I didn't know there was an M3.
As I understand it now, I should get as much RAM and as many video cores as I can afford.
Err. I meant 64 mb RAM in a Studio.
Wired RAM usage on the Mini M2 Pro was just about 15 gb and swap was sometimes going up to 1 mb swap. It was most noticeable if I opened the imgur site which has multiple video streams playing simultaneously. The Mini M2 Pro 16 gb RAM machine was badly stuttering.
Wired RAM in the M2 Max Studio under same conditions is just over 17 gb. Swap usage is practically zero and all runs smoothly. Was not a budgeted expense, but it was either reduce cameras / resolution or have a poorly functioning system - neither was acceptable. So, yes a machine with more RAM was needed despite the low CPU and GPU load.
If this is due to a RAM usage bug with the M2, I'm not at all pleased.
Interesting, and I wonder if it was due to that bug. Of course Apple probably calls it an "unoptimized contingency" instead of a chip bug.
There is a refurb M1 Max Studio with 32GB RAM on the Apple website for ~$1500. Wonder if this would work well or if I need the extra RAM to 64GB. I think the calculator says 24 should be sufficient.
Unless you are referring to a different bug, the M2 bug I'm referring to is not related to RAM, rather it's related to decoding multiple video streams simultaneously, whereby beyond around 30 simultaneous streams the performance suddenly tanks, causing major decoding problems. As far as we have seen, this is specific to M2 and macOS 14, and the only solution we have found so far is to downgrade to macOS 13 on these Macs.
@jimmyjohnson that refurb M1 Max sounds good, and if it's well within the requirements specified by the calculator then it should perform very well.
I have had a much different experience. I have 80 cameras running on one M1 Mini. The mini has 8GB of ram, and this has never been a problem. Ram usage runs about 1.5GB. I am not using precapture, recompression, or advanced motion detection. The cameras are all 1080p, 15fps, and streaming h.265 at around 2-4 mbps VBR. Half of these cameras are set to motion record and the other half are continuously recording. The hard drives are 8TB Western Digital Purple Pro drives formatted as APFS. The pro is very important, as these 7200rpm drives are faster than regular purples. I had a bit of trouble at first until I evenly distributed the decoding of the cameras between hardware and software in the camera info window. The Mac Mini is connected to the network via it's built-in 1GbE port. The main display is set to 1080p. The secondary display runs at 4k, and displays all cameras constantly. I have experienced Zero Memory pressure, Zero Network pressure, Zero Decoder pressure, Zero CPU pressure, Zero Thermal pressure, and Zero downtime over a two year period. Rock and Roll.
This is going to take me some time to wrap my head around.
Circling back now that I have budgetary approval (and WAF)... @guykuo took me a couple times to read it, but sounds like you have both an M2 Pro in a Mini and an M2 Max in a Studio? And the M2 Pro in a Mini is working OK for you?
The jump to studio seems like it's a bit overkill if I can get an M2 Pro in a mini that works well.
Yes... originally an iMac then 2013 "Trash can" Mac Pro 12 core. Last year to Mac Mini M2 Pro when the cameras and frame rates outgrew the 2013 trashcan. I did try a Mac Mini M1 instead of the trashcan, but could not get it to not stutter the camera displays. We use all the AI detection features and even have some cameras at 30 FPS, and always have 12 cameras displayed on screen, and browse the web on the same machine here. Also, every camera is recording both 24/7 continuous and motion caps. You want to load a machine? Browse IMGUR at the same time as 12 cameras are being displayed in SS.
Went from Mac Mini M2 Pro to Mac Studio M2 Max when we exceeded the Mini M2 Pro's 16 gb RAM. That was about 25 cameras. The Mini M2 Pro was could just run SS adequate, but could not also display the multiple animations in IMUGR simultaneously.
Things are once more smooth with the Studio, but it IS definitely a big expense jump. Wired ram is stable at 18 gb on the Studio and everything is working as expected.
Do you think a Mac mini M2 Pro with 32GB RAM would have prevented you needing to upgrade?
Yes, if the Mini M2 Pro had 32 gb RAM, it would have been fine. Every other parameter was well below stressing the Mini M2 Pro. It simply ran out of memory for the load I had on it. At present, I'm at 18 gb wired RAM usage. That's consistent with the 16 gb machine not being quite enough RAM to avoid memory swapping slowdowns. With 32, you're above that hard wired amount and should see minimal swapping occur.
It was tempting to get another Mini M2 Pro, but with more RAM, but the house CFO released enough funding to allow a bigger leap than was absolutely necessary. She says I inevitably keep expanding the cameras in number, and resolution and will overrun the SS machine. This way, I'm to keep on the same machine longer.
It is a pisser that we can't upgrade RAM in modern Mac's.