NZBGet Performance Tweaks for Low Power Devices

nzbget-performance-tweaksThe 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
Backbone
Retention
Speed
Connections
VPN
Monthly
Annual
UsenetServer
UsenetServer
3199
Unlimited
30
Yes
$10
$95.40
Newshosting
Newshosting
3199
Unlimited
30
Yes
$10
$99
Frugal
Frugal
3000
Unlimited
20
No
$4.16
$50
Usenetlink
Cloudgate
2000
100 Mbit
30
No
$15
$140

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

nzbget ssl tweak 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

nzbget performance tweaks download queue

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.

nzbget performance tweaks par check repair

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.