<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html><body style='font-family: Verdana,Geneva,sans-serif'>
<p>This is all very cool.</p>
<p>Are there any Self-side changes needed or just the VM?</p>
<p>Russell</p>
<p>On 2014-02-21 12:17, ardeujho wrote:</p>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px"><!-- html ignored --><!-- head ignored --><!-- meta ignored --><span style="display: none;"> </span><!-- node type 8 -->
<div id="ygrp-mlmsg" style="position: relative;">
<div id="ygrp-msg" style="z-index: 1;"><!-- node type 8 -->
<div id="ygrp-text">
<p>ardeujho <ardeujho@cd.pn> writes:<br /><br /> > Epoll has better performance than select when there is a large number of<br /> > open files and does not have the 1,024 file descriptor limit.<br /><br /> I've made a change to the pull request to account for the fact that<br /> epoll doesn't work on regular files. Attempting to do an epoll_ctl on<br /> these results in an EPERM error.<br /><br /> I've worked around this by keeping a set of file descriptors that<br /> produce this error and automatically adding these to the result of a<br /> select call from Self as being readable and writable.<br /><br /> Longer term it might be worthwhile investigating how to get asynchronous<br /> i/o working with regular files on Linux to improve performance in i/o<br /> bound apps.<br /><br /> In the meantime the workaround means that there is a limit of 1024 open<br /> regular files but no limit to the number of sockets and other similar<br /> file types.</p>
</div>
<!-- node type 8 -->
<div style="color: #fff; height: 0px;"></div>
<!-- node type 8 --><!-- node type 8 --><!-- head ignored --><!-- meta ignored --><!-- node type 8 --><!-- node type 8 --></blockquote>
<p> </p>
<div> </div>
</body></html>