TLS Performance Regression in JDK18+

Anthony Scarpino anthony.scarpino at oracle.com
Wed Nov 2 16:56:16 UTC 2022


Hi Carter,

Are you running this on an AVX512 machine?  Have you seen/tried to run 
this on a machine that does not have AVX512, like AVX2 or even aarch64?

thanks

Tony

On 11/1/22 12:19 PM, Anthony Scarpino wrote:
> Hi Carter,
> 
> I'll have to review your data more and look into it.
> 
> thanks
> 
> Tony
> 
> On 10/31/22 4:51 PM, Carter Kozak wrote:
>> Hello,
>>
>> TLS performance has appreciably regressed in JDK-18 and JDK-19 from 
>> earlier releases using TLS_AES_128_GCM_SHA256 and 
>> TLS_AES_256_GCM_SHA384 ciphers. I suspect the throughput reduction is 
>> in part related to the substantial increase in allocation per 
>> operation by roughly the size of the content transferred, even in 
>> cases where the contents are provided using direct byte-buffers.
>>
>> I've created a simple JMH benchmark using the socket API here:
>> https://github.com/carterkozak/java-crypto-allocation-performance#java-cryptography-allocations
>>
>> JMH JSON results across JDK releases are located here:
>> https://github.com/carterkozak/java-crypto-allocation-performance/tree/develop/jmh-results
>>
>> I'm sorry if this has already been reported or is otherwise already 
>> being tracked. Please let me know if additional information would be 
>> helpful.
>>
>> Best,
>> Carter Kozak


More information about the security-dev mailing list