[jira] [Commented] (ARTEMIS-1977) ASYNCIO can reduce sys-calls to retrieve I/O events
[ https://issues.apache.org/jira/browse/ARTEMIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16786960#comment-16786960 ] ASF subversion and git services commented on ARTEMIS-1977: -- Commit 061fb2787e62c5f23239e1c54c8b088b5e09cbe4 in activemq-artemis's branch refs/heads/master from Clebert Suconic [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=061fb27 ] ARTEMIS-1977 Stripping activemq-artemis as a separated proejct > ASYNCIO can reduce sys-calls to retrieve I/O events > --- > > Key: ARTEMIS-1977 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1977 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: ActiveMQ-Artemis-Native >Affects Versions: 2.6.2 >Reporter: Francesco Nigro >Assignee: Francesco Nigro >Priority: Minor > Fix For: 2.7.0, native-1.0.0 > > Time Spent: 6h 10m > Remaining Estimate: 0h > > On LibAIO is possible to retrieve the I/O completion events without > using io_getevents sys-calls by reading the user-space ring buffer used by the > kernel to store them. > This is already beneficial for very fast disks and necessary for further > improvements > of ASYNCIO Journal to leverage (very) fast low-latency disks by going > completly > lock-free. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-1977) ASYNCIO can reduce sys-calls to retrieve I/O events
[ https://issues.apache.org/jira/browse/ARTEMIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16540042#comment-16540042 ] ASF GitHub Bot commented on ARTEMIS-1977: - Github user franz1981 commented on the issue: https://github.com/apache/activemq-artemis/pull/2178 I close this because It needs to be refined and battle tested...it is a WIP :+1: > ASYNCIO can reduce sys-calls to retrieve I/O events > --- > > Key: ARTEMIS-1977 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1977 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker >Affects Versions: 2.6.2 >Reporter: Francesco Nigro >Assignee: Francesco Nigro >Priority: Minor > Fix For: 2.7.0 > > > On LibAIO is possible to retrieve the I/O completion events without > using io_getevents sys-calls by reading the user-space ring buffer used by the > kernel to store them. > This is already beneficial for very fast disks and necessary for further > improvements > of ASYNCIO Journal to leverage (very) fast low-latency disks by going > completly > lock-free. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-1977) ASYNCIO can reduce sys-calls to retrieve I/O events
[ https://issues.apache.org/jira/browse/ARTEMIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16540043#comment-16540043 ] ASF GitHub Bot commented on ARTEMIS-1977: - Github user franz1981 closed the pull request at: https://github.com/apache/activemq-artemis/pull/2178 > ASYNCIO can reduce sys-calls to retrieve I/O events > --- > > Key: ARTEMIS-1977 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1977 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker >Affects Versions: 2.6.2 >Reporter: Francesco Nigro >Assignee: Francesco Nigro >Priority: Minor > Fix For: 2.7.0 > > > On LibAIO is possible to retrieve the I/O completion events without > using io_getevents sys-calls by reading the user-space ring buffer used by the > kernel to store them. > This is already beneficial for very fast disks and necessary for further > improvements > of ASYNCIO Journal to leverage (very) fast low-latency disks by going > completly > lock-free. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-1977) ASYNCIO can reduce sys-calls to retrieve I/O events
[ https://issues.apache.org/jira/browse/ARTEMIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16539782#comment-16539782 ] ASF GitHub Bot commented on ARTEMIS-1977: - Github user franz1981 commented on the issue: https://github.com/apache/activemq-artemis/pull/2178 I think that @clebertsuconic and @michaelandrepearce would be interested in this :+1: I would like to be reviewed on this: in particular given that I have target x86_64 to define the barriers: AFAIK C11 allow to define them without any assembly definition as I have done, but I don't know how many architecture we are supporting. > ASYNCIO can reduce sys-calls to retrieve I/O events > --- > > Key: ARTEMIS-1977 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1977 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker >Affects Versions: 2.6.2 >Reporter: Francesco Nigro >Assignee: Francesco Nigro >Priority: Minor > Fix For: 2.7.0 > > > On LibAIO is possible to retrieve the I/O completion events without > using io_getevents sys-calls by reading the user-space ring buffer used by the > kernel to store them. > This is already beneficial for very fast disks and necessary for further > improvements > of ASYNCIO Journal to leverage (very) fast low-latency disks by going > completly > lock-free. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (ARTEMIS-1977) ASYNCIO can reduce sys-calls to retrieve I/O events
[ https://issues.apache.org/jira/browse/ARTEMIS-1977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16539781#comment-16539781 ] ASF GitHub Bot commented on ARTEMIS-1977: - GitHub user franz1981 opened a pull request: https://github.com/apache/activemq-artemis/pull/2178 ARTEMIS-1977 ASYNCIO can reduce sys-calls to retrieve I/O events On LibAIO is possible to retrieve the I/O completion events without using io_getevents sys-calls by reading the user-space ring buffer used by the kernel to store them. This commit include another optimization to avoid calling a method to obtain the buffers address, saving safepoint polls, a method call and implicit instance of checks performed. You can merge this pull request into a Git repository by running: $ git pull https://github.com/franz1981/activemq-artemis user_space_io_getevents Alternatively you can review and apply these changes as the patch at: https://github.com/apache/activemq-artemis/pull/2178.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2178 commit 77e577f40b8993729f6b9c357a1276f6bf930571 Author: Francesco Nigro Date: 2018-07-04T08:43:19Z ARTEMIS-1977 ASYNCIO can reduce sys-calls to retrieve I/O events On LibAIO is possible to retrieve the I/O completion events without using io_getevents sys-calls by reading the user-space ring buffer used by the kernel to store them. This commit include another optimization to avoid calling a method to obtain the buffers address, saving safepoint polls, a method call and implicit instance of checks performed. > ASYNCIO can reduce sys-calls to retrieve I/O events > --- > > Key: ARTEMIS-1977 > URL: https://issues.apache.org/jira/browse/ARTEMIS-1977 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker >Affects Versions: 2.6.2 >Reporter: Francesco Nigro >Assignee: Francesco Nigro >Priority: Minor > Fix For: 2.7.0 > > > On LibAIO is possible to retrieve the I/O completion events without > using io_getevents sys-calls by reading the user-space ring buffer used by the > kernel to store them. > This is already beneficial for very fast disks and necessary for further > improvements > of ASYNCIO Journal to leverage (very) fast low-latency disks by going > completly > lock-free. > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)