You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Domenico Francesco Bruscino (Jira)" <ji...@apache.org> on 2020/08/25 13:17:01 UTC

[jira] [Closed] (ARTEMIS-2849) Eliminate zeroing of buffers while writing the ASYNCIO journal

     [ https://issues.apache.org/jira/browse/ARTEMIS-2849?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Domenico Francesco Bruscino closed ARTEMIS-2849.
------------------------------------------------
    Fix Version/s: 2.15.0
       Resolution: Done

> Eliminate zeroing of buffers while writing the ASYNCIO journal
> --------------------------------------------------------------
>
>                 Key: ARTEMIS-2849
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2849
>             Project: ActiveMQ Artemis
>          Issue Type: Test
>          Components: Broker
>            Reporter: Francesco Nigro
>            Priority: Major
>             Fix For: 2.15.0
>
>          Time Spent: 2.5h
>  Remaining Estimate: 0h
>
> By default ASYNCIO using TimedBuffer are zeroing the ByteBuffers used to perform the write on the journal: under load TimedBuffer can be big enough that zeroing would cost the same as copying the actual content into it, hence saving the zeroing is quite beneficial to save CPU time and increase IOPS.
> NIO and MAPPED doesn't need it because they already use directly the TimedBuffer's accumulation buffer to perform writes (that's never zeroed, because it already contains the content that they expect to write into the journal), but changing ASYNCIO need to adjust the same calls on NIO and MAPPED for completeness.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)