Incorrect or missing information? High speed Downloading
If you have a fast Internet connection (50MB/s aka 400 Mbps, and over) and are not getting the full speeds you require, you can try the following:
Basic requirements for your system and Internet connectionThe bottom line for high speed downloading is easy: Start with a test of your system: Check at Wrench -> Status -> Refresh symbol, and note the performance numbers reported, and check them against these required values:
- Both Incomplete and Complete should be on a SSD/M.2/NVMe disk. SABnzbd should report the speed of Incomplete and Complete at least 150 MB/s. Slower disks like HDD and NAS have a very negative impact on downloading speed: a slower disk means slower downloads.
- Your CPU shoud be medium or high speed. SABnzbd should report a pysthone of 100.000 or higher.
- Your download speed will never be higher than the Internet speed reported via the Wrench -> Status report. Wired is better than wireless
- Preferrably you should have a few different news servers, all at the same prio
- Start with a test download: Wrench -> Test Download -> 1000 MB
If you are posting a question if you think your download speed is too low, post the info reported by the Wrench tool.
Additional settings for high-speed downloading
If your focus is on pure high-speed downloading itself, you should let SABnzbd focus on downloading only (and not any simultaneous processing), and the following settings will help (in order of importance):
- Turn on "Pause Downloading During Post-Processing". SABnbd will first download, and after downloading it will start processing
- Turn off DirectUnpack. SABnbd will take care of it after downloading
- Turn off Unwanted Extensions and Encrypted Downloads
- For testing only: set the download to Download, so no Repair, no Unpack at all
More detailed optimizations
- Use a wired network connection, not wireless. Test your speed via fast.com . Divide that result from fast.com by 10 (8.05 to be more exact) to get the speed in MB/s
- Set the Article Cache Limit in Config->General. This will keep articles in memory and not write them to disk (which is slower). Depending on how much RAM you can spare, two good values are
500M(the M denotes megabytes and is required) or
1G(1GB). If you download a lot of rar files that are 200MB or larger then use the latter value. The cache will only be used when nessecary, cache usages above 400MB are rare.
- Check if logging is set to only
Errors/Warningin the Status window. Especially the
+Debugsetting writes very frequently tiny bits of data to the disk. This increases CPU load for the writing and occupies the disk.
- For larger queues it can be beneficial to enable
Only get articles for top of the queuein Config->Switches, as iterating through the queue to get the next article takes substantial amount of CPU power for large queues.
- Investigate your connection count in Config->Servers. It may seem counter-intuitive, since more connections should be faster than fewer connections, but if you use the 50+ connections some hosts give you the overhead from constantly opening and closing connections can slow you down. So start at the max allowed connections and slowly lower your count until you max out your speed. Or do it the other way round: start with 5 connections, measure the speed, and raise to 7, measure again, 9, measure again, etc. Normally 10 connections are enough.
- If you use SSL to connect to your news server, try changing the SSL Ciphers. This will sightly lower encryption strength but can greatly increase download speeds.
- Try different values for downloader_sleep_time. Suggested initial test values are 0, 10 and 30.
- Increasing or reducing the number of decoder threads using the num_decoders value may help.
If none of the above methods make a difference, have a look at how much CPU is being used while downloading, if it is at 100% it is likely your processor is too slow to maintain high enough speeds. In the Status window ( ) you can run a PyStone CPU performance test. ARM based systems (NASes for example) will show much lower number (below 25000), and will have a lower maximum download speed than PCs with a current Intel/AMD CPU with a CPU Pystone available performance of 40000 or higher.
Results with different setups with 1GB and 10GB downloads
- On a 2017 Intel Celeron J4105 (4GB RAM, System Performance (Pystone) 95.000), built-in SSD and a 700/700 Mbps fiber line, SABnzbd can achieve a sustained 80 MB/s, thus linespeed.
- On an ARM box (51MB RAM, System Performance (Pystone) 8.000), SABnzbd can achieve a sustained 20 MB/s. The low-speed CPU and/or disk are the bottleneck. So, checking: SABnzbd reports 25 MB/s on Incomplete and Complete, so that is the bottleneck.