It is important to remember that the key factor in your Usenet download speed is your Usenet provider. It is important to have a provider that offers both unlimited speeds and a large number of connections. At UsenetServer, we provide both of these on all accounts. To signup for an account click here.
NZBGet is designed to work across a large variety of devices, anything from a Raspberry Pi to a dedicated Synology setup. To accommodate this range, NZBGet is highly modifiable, and fine-tuning your installation may take some experimentation. The 3 main factors that impact NZBGet performance are:
-
CPU speed - This is impacted by items such as the number of connections, encryption, unpacking and par checks.
-
Available RAM - RAM performance is primarily impacted by cache and buffer settings.
-
Hard drive interface - Hard drive performance will be limited to how quickly your hard drive can write to the destination disk, and limiting the number of simultaneous operations on your hard drive will improve performance.
Reviewing the below settings and experimenting with your specific setup can improve performance.
Please Note: We do suggest creating a backup of your current settings before changing anything listed below, in the event your setup becomes unstable.
CPU settings
The settings below will assist with CPU related slowdowns.
Encrypted communication
The connections settings can be found in the News Server settings section under the ServerX.Encryption setting.
Using an encrypted connection to a news server can make a significant impact on performance. If you choose, you can deactivate the server encryption to improve performance.
More advanced users should use option ServerX.Cipher to fine-tune the TLS/SSL settings. Additionally, choosing a faster cipher can significantly boost performance. Review the NZBGet article on choosing a cipher for more information.
Number of connections
The connections settings can be found in the News Server settings section under the ServerX.Connections setting.
For your primary servers (Level=0) use as few connections as possible, though we suggest using at least 20. Additionally, if you have a backup server also set on NBGet, we suggest setting the number of connections on your backup server to the same number you have set on your primary server.
CRC check
You can deactivate the CRC check to reduce CPU overhead using option CrcCheck, found in the Check and Repair section. The potential downside of disabling CrcCheck is that the quick par-verification may become less reliable which can occasionally result in a full verification being required.
Par check
Par check is a very demanding process for CPUs, but there are several ways to optimize these settings. All of the settings below are found in the Check and Repair section.
-
Set option ParCheck and ParScan to auto.
-
ParQuick must be activated for fast par-verification.
-
If your device has more than one CPU core, you can adjust the ParThreads setting accordingly. Setting this to 0 will use all available CPU cores.
-
If you have enough available free memory, you can increase the memory setting for the ParBuffer, the default setting for this is 500 MB.
-
To prevent downloading and Par checking from happening at the same time, activate the ParPauseQueue setting.
-
Setting the ParTimeLimit will place a cap on the amount of time NZBGet will attempt to repair a file.
-
Activate option ParRename to handle misnamed files.
Unpack
Unpacking is also demanding for CPUs. If you experience computer slowdowns during unpacking, you can turn on the UnpackPauseQueue setting, found in the Unpack menu. This will prevent simultaneous downloading and unpacking.
Download speed limit
If activated, the download speed limit requires additional CPU overhead. To improve CPU performance, do not limit download speed via the DownloadRate setting (found in the Connection settings).
Daemon mode
We suggest against running NZBGet in console in server mode using command “nzbget -s”. In this state, the screen is constantly updated and a drain on resources. You should run NZBGet in daemon (POSIX) or service (Windows) mode.
RAM settings
The settings below will assist with RAM related slowdowns.
Article cache
Article cache settings can improve your unpack speed. This is especially important if you use 10 or more connections. If option DirectWrite is active, set the article cache to 200 MB. If DirectWrite is disabled, a larger article cache is recommended (up to 1 GB). This setting can be found in the Download Queue menu.
Write buffer
Your WriteBuffer setting should be dependent upon available system RAM. If you have a lot of RAM, set it to 1024. If you have limited RAM available, set it to 32. This setting can be found in the Download Queue menu.
Hard drive settings
The settings below will assist with hard drive related slowdowns.
Direct write
When the DirectWrite option is enabled, the program writes each article directly into the destination file to the location where the article belongs; however, this requires a filesystem that supports “sparse file” support. Windows and Linux on NTFS, EXT3, and EXT4 formatted drives will support this and can be activated if you choose. Unfortunately, Mac OS on HFS+ formatted disks does not support “sparse files”, and this setting will need to be deactivated. If the direct write cannot be used due to lack of “sparse file” support, a large article cache must be configured for best performance; see Article Cache above. This setting can be found in the Download Queue menu.
File fragmentation
WriteBuffer and ArticleCache options can help minimize file fragmentation and improve post processing performance. Both of these settings can be found in the Download Queue menu.
Drive cache flushing
FlushQueue is a setting that flushes disk buffers each time the download queue or history is written to disk. On some systems, the flushing may lead to a noticeable performance degradation. If you experience slowdowns during queue flushing, we suggest trying to turn this setting off. If you do not see improvement, turn it back on. This option is on by default and can be found in the Download Queue menu.
Download progress
Disable ContinuePartial to slightly reduce the disk access by limiting the number of logs written to disk. This option is on by default and can be found in the Download Queue menu.
Logging
Once your configuration is stable, we suggest deactivating or rotating the error logging functions of WriteLog. This option is on by default and can be found in the Logging menu.
Par check and unpack
Activate options ParPauseQueue and UnpackPauseQueue to prevent simultaneous disk access by the downloading, par-checker and unpacker functions. These options are off by default. The ParPauseQueue setting can be found in the Check and Repair menu, and the UnpackPauseQueue setting can be found in the Unpack menu.
Intermediate directory
We suggest all users use the InterDir function to define an intermediate directory for downloads. Users who have more than one physical hard drive will see the most improvement. This can be found in the Paths menu.
Please remember that due to the customizable nature of NZBGet, we highly suggest making a backup of your current settings before any adjustments are made. If you have any additional questions not answered by this guide, please reach out to our Support Team.