[
https://issues.apache.org/jira/browse/TS-3044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14153806#comment-14153806
]
Phil Sorber commented on TS-3044:
---------------------------------
[~jplevyak]
I really like this approach. This is something I feel we should do with the
threaded AIO as well.
A couple of comments:
Why perror here and not some ATS built in logging?
{noformat}
+ perror("io_getevents");
{noformat}
Does lowering the AIO_PERIOD make sense globally if we have a case where we may
still not use eventfd?
{noformat}
-#define AIO_PERIOD -HRTIME_MSECONDS(4)
+#define AIO_PERIOD -HRTIME_MSECONDS(10)
--
+#ifdef HAVE_EVENTFD
+ io_set_eventfd(&op->aiocb, t->evfd);
+#endif
{noformat}
> linux native AIO should use eventfd if available to signal thread
> -----------------------------------------------------------------
>
> Key: TS-3044
> URL: https://issues.apache.org/jira/browse/TS-3044
> Project: Traffic Server
> Issue Type: Improvement
> Components: Cache
> Reporter: John Plevyak
> Assignee: Phil Sorber
> Fix For: 5.2.0
>
> Attachments: native-aio-eventfd.patch
>
>
> linux native AIO has the ability to signal the event thread to get off the
> poll and service the disk via the io_set_eventfd() call. linux native AIO
> scales better than the thread-based IO, but the current implementation can
> introduce delays on lightly loaded systems because of the thread is waiting
> on epoll(). This can be remedied by using io_set_eventfd
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)