With a 4 core/4 thread CPU is it wiser to select 2 cores or 3 for ComSkip if recording of two or three channels is expected at the same time, i.e. how much CPU attention does basic mutichannel recording require or want?
The actual recording process has very little demand on the CPU.
It takes me less than 5 minutes to process 1 hour of an OTA recording in Comskip with Comskip running on low priority. Using default Comskip settings. Intel i7 Cpu.
Commercial detection for Clarice S01E01 The Silence Is Over 2021-02-11-2159.mpg finished with 10 markers in 3m45.7338481s.
Best answer I came up with is try with 1, then 2, then 3, then 4.
Set Channels DVR to use 1 thread for comskip.
Record a 30 minute (H.264 if you can) show.
Time the comskip run (you can view run time in the DVR log) and observe your CPU usage.
Set Channels DVR to use 2 threads for comskip.
Re-Comskip the same recording.
Time the comskip run and observe your CPU usage.
repeat using 3 threads
I found on my Synology quad-core NAS's that 2 was the best setting. If I also had a transcode going and guide update going while comskip runs my CPU went over 100%. A setting of 3 didn't run much faster than 2 for me, it just resulted in higher CPU usage. YMMV.
I had a similar experience. 2 seems like the sweet spot for my Synology DS718+.
I think the real value in this question is if you are using a low power device such as the Pi 4B, Nvidia Shield or a NAS with a weaker Celeron or Pentium processor that just barely cuts the mustard by having Intel Quick Sync.
I have for years run Channels on my Nvidia Shield Pro with the internal 500 GB HDD. The mature software for the shield has been very stable and comskip times, while not blazingly fast by any stretch of the imagination, had been adequately fast with just 1 core selected. 2 cores on the shield was a bit quicker but it did, for me, quite substantially impact the CPU load.
I have just this week switched over to the Raspberry Pi 4B solution. I'm using the 4GB model since it was immediately available but as well documented the 2GB model is more than sufficient. Comskip on the Pi thus far has been far more variable. For example, an H.264 recording 1-hour long from the HDHR Prime took 65 minutes to place its markers. A 30-minute MPEG-2 OTA recording from the HDHR Connect took 6 minutes. On average the H.264 files from the Prime are taking ~38 minutes per hour to run on 1 core. The MPEG-2 files from the Connect are taking ~13 minutes per hour of video also on 1 core.
I had been running the Pi 4B open as I was waiting for my Flirc case to arrive so will try 2 cores today. The non-case temps would get up to about 70 deg C at load, so below the throttling temp, but close.
For reference, I just have a simple WD MyPassport 1TB HDD attached USB 3.0 for now and it's powered solely with a Canakit 3.5a 5v PSU. I do have a couple of smaller SSD's spare so might try one of those connected at some point to see if there is any improvement from increased I/O capability.
PS. there's not too many guide notes about switching from the Shield to the Pi 4B. I recorded everything internal on the Shield and found the easiest way to switch to the Pi was to:
- setup the Pi with a clean install following the Channels walk through.
- enable network transfer on the shield under its storage settings.
- shutdown the Pi, disconnect the WD HDD and connect it to my laptop.
- navigate with windows explorer to the Shield's network transfer (you have to login with credentials that the Shield provides when you turn network transfer on)
- navigate to the Channels install folder on the Shield and then copy those folders to the WD HDD (this wasn't too bad for me because I had pruned a lot of recordings I didn't want anymore in advance but can be very slow for those with a loaded DB)
- plug the WD HDD back into the Pi, start it up.
- restore the DVR database from the most recent save copied over from the Shield.
This is not exactly per the guides noted by Channels staff and users but worked just fine in my case. If you have a shield and already use external storage then it's a lot faster and less steps involved.
A quick post to update the Pi 4B results using 2 cores for the same file processed for each video standard:
MPEG-2 1 hour recording improved by 129% - 11m 25s > 8m 50s
H.264 1 hour recording improved by 165% - 33m 11s > 20m 00s
A far cry from what you will get with a Core I7 or a Xeon but I can live with that since it's more inline with what I saw from the Shield plus I'm selective and don't comskip all recordings. Just movies and key shows.