[
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)