The usenet downloader NZBGet is built for performance. It is highly modular with many different settings to squeeze every last drop of power from your system, no matter how limited it may be. Some machines like Synology NAS, Raspberry and Banana Pi use ARM processors which are weaker and have less cache than x86 and amd64 equivalents (good explanation here). Luckily there are a few tweaks that can get these machines to get you downloading at maximum speed – thanks to Mr Anderson who told me about the low download speeds he was getting on the Banana Pi and how he fixed it with information on the NZBGet Wiki.
Usenet Provider | |||||||
---|---|---|---|---|---|---|---|
UsenetServer | |||||||
Newshosting | |||||||
Frugal | |||||||
Usenetlink |
NZBGet Performance Tweaks for Raspberry Pi and Synology NAS
All of these performance tweaks should apply equally to these ARM devices (Raspberry, Banana Pi, ODROID-C1, Synology NAS). It is important to do download speed tests after making adjustments, saving and reloading NZBGet. The values can however vary depending on provider so you may have to increase ArticleCache to 100 or WriteBuffer to 64 and increase connections (Thanks to Mr Anderson). Make changes, do a new download test and adjust as necessary.
Use Fast SSL Certificate
Different SSL ciphers use varying CPU power for processing, RC4-MD5 uses the least so let's use that
Click Settings and then News-Servers
Scroll down to Cipher for your news server and enter RC4-MD5
Tweak Cache for Faster Downloading
Fire up your NZBGet WebUI at http://ip.address:6789
Click Settings and then Download Queue in the left pane
Scroll down until you see ArticleCache and change it to 50
Make sure DirectWrite is set to Yes (and highlighted blue)
Scroll down until you see WriteBuffer and change it to 32
Par Repair Tweaks
Par repairing is quite CPU intensive and is rough on ARM processors, we want to adjust how NZBGet works with Pars and other tasks simultaneously
In the left pane click Par Check/Repair
Scroll down until you see ParScan, set it to Limited. This prevents it from scanning the entire download folder for Pars and only uses Pars belonging to the correct release
Set ParQuick to Yes which uses checksums instead of reading the entire par files from your disk
Set ParPauseQueue to Yes which stops the downloading temporarily while a release is repaired.
When you are done scroll down and click Save all Changes and Reload NZBGet.
You will now get maximum NZBGet performance on your Raspberry Pi, Banana Pi and Synology NAS.
Consider using some of the other useful scripts NZBGet has like avoiding fake releases and retrying failed downloads.