[ 
https://issues.apache.org/jira/browse/HDDS-10364?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17817594#comment-17817594
 ] 

Duong commented on HDDS-10364:
------------------------------

cc. [~ritesh] [~tanvipenumudy] 

> S3G: Jetty SSL encryption creates a great load of heat for GC
> -------------------------------------------------------------
>
>                 Key: HDDS-10364
>                 URL: https://issues.apache.org/jira/browse/HDDS-10364
>             Project: Apache Ozone
>          Issue Type: Improvement
>          Components: S3, s3gateway
>            Reporter: Duong
>            Priority: Major
>              Labels: Performance, performance
>         Attachments: HDDS-10364.png, s3-write-ratis-grpc.png, 
> s3-write-ratis-streaming.png, s3_read_allocation.htm, s3_write_allocation.htm
>
>
> Jetty's SSL Engine implementation creates a great amount of garbage for GC. 
> This is because when SSLEngine encodes/decodes any byte[] of input data, it 
> *creates an entirely new* byte[] as output and *does not reuse* it. 
> !HDDS-10364.png|width=717,height=271!
>  
> This means for every MB of data flows through S3G, there's 1 MB of garbage 
> for S3G GC to clean up. *The cost of GC is linear to data throughput.* 
> When I do a comparison of writing data from S3 with ratis-streaming vs S3 
> with normal async API, ratis-streaming improves the throughput by ~60%, and 
> together with S3 throughput, S3 GC cost (and consequently CPU util) also 
> improves significantly. And the allocation profile above shows that this is 
> not because of ratis-streaming client, but Jetty's SSLEngine.
> !s3-write-ratis-grpc.png|width=651,height=558!    
> !s3-write-ratis-streaming.png|width=653,height=560!  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to