Hi all, I love this tool and found what seems to be a small bug that I haven't seen reported by anyone else yet. I'm not yet sure if it's any source/destination pair, or specific to S3 to GCS.
I'm trying to coping data from a S3 compatible system to GCS with a rate limit of 500MBps (4Gbps) by using the --bwlimit 500M flag.
What I expected to happen is bw usage would be ~4Gbps.
What happens is bw usage is about 2.5Gbps. I have tried setting bwlimit even higher, e.g. 1G, with the same result. If I remove the --bwlimit flag then the entire internet pipe (10Gbs) is filled by the transfer, which seems to show that it's the rate limiting that is causing the issue.
rclone v1.56.0
os/version: Microsoft Windows Server 2019 Standard 1809 (64 bit)
I haven't pasted any log files here since they are multi-GB log files with just INFO log level. Source bucket is large >1M objects totaling >250TB. Most objects are large.
I have the transfers number set so high since GCS seems to only do one transfer per object and I needed more than 200 transfers to get constantly over 4Gbps throughput.
I'm interested to see if anyone else has struck an upper limit to --bwlimit or has any ideas what to try. I am trying not to totally saturate our pipe, but 2Gbps isn't fast enough for this particular task since we have more than 1.5PB to upload. My next step will be to upload 2 buckets at once which I expect will go at 2Gbps each and be a good work around for my issue, so I'm not stuck at all, just curious and wanting to let others know what I'm seeing.
Thanks Nick, it seems you got the issue in one. I increased maxButstSize by 4X and I can now throttle up to 10Gbps speeds. Tested with --bwlimit 500M and 1G and works perfectly with both with that change.
I guess this isn't an elegant solution, so is it worth putting in a pull request for this fix? Thoughts on if this will break anything else?
Thanks,
From what I remember there is a tension between making that number too high (which increases lumpiness in the bandwidth limit) and making it too small (which limits maximum bandwidth throughput).
What I really need to do is find the conversation I had about this previously.
As a first step could you open a new issue on Github about this and we can try and collect the info there.
It might be that a more sophisticated fix is needed or a different number for Windows / Linux I'm not sure at the moment.