Open ylangisc opened 1 year ago
With -XX:-UseGHASHIntrinsics
observing the same bandwidth as IKVM on JDK.
Greetings, I just wanted share some information i have found out recently, and its the fact that there are multiple S3 Configuration "options" for AWS S3 CLI , basically to control the flow of the data from S3 Bucket to your workstation, from what I know they control, both AWS S3 CP command and the AWS S3api calls. From what I can see above the issue may be related to some Java issues, but overall , these "TEAKABLE" options would be nice to have in the CyberDuck Interface, because its really not one size fits all, and there is no "auto" feature thus far.
All of those features are described here:
https://awscli.amazonaws.com/v2/documentation/api/latest/topic/s3-config.html
and lots of these 'hidden' options are omitted on the AWS S3 CLI pages.
Thanks for taking a look at this and possible implementing some of these 'features' in the S3 Transfer tab.
Using SSL/TLS based protocols there is a difference in maximum transfer speeds between macOS and Windows for large bandwidth connections. This seems to be related to IKVM used for the Windows version. While plain Java on both platforms is able to max out the bandwidth for a 1GBit/s connection, the IKVM based version is limited to ~430MBit/s.
Sample program to measure speed for TLS 1.2 connections:
-XX:+UnlockDiagnosticVMOptions -XX:-UseAES -XX:-UseAESIntrinsics
)It's interesting that the difference between IKVM and Java with disabled hardware acceleration is exactly factor 2. Looks like the AES implementation runs on 1 vs. 2 or 2 vs. 4 cores ....