Hi Ben,
Would it make sense to use AIO if filesystem supports it? How faster it would be? Did somebody run any benchmarks?
I don't know what Windows is (sorry, just trolling), but Linux have a lot of filesystems and it's open. If just one filesystem supports AIO and work with node.js much better, other will follow. If something silently fall back to sync IO, file a bugreport against it, it's as simple as this.
Somebody could even write a npm package that does AIO for a specified filesystem. So, anything come up to one question: is it worth it? Any benchmarks?
--
// alex
29.11.2012, 06:41, "Ben Noordhuis" <
in...@bnoordhuis.nl>:
>> О©╫Actually that is not completely true - Both Windows and MacOSX's native file
>> О©╫APIs support async file operations.
>> О©╫The limitation might be coming from linux posix api.
>
> I'm aware of them but neither are really usable.
>
> Windows AIO only works with files opened in direct I/O mode, meaning
> you bypass the disk cache. О©╫When a file system doesn't support AIO, it
> either raises an error (in which case you have to fall back to
> user-space threads) or silently (!) switches to synchronous I/O.
>
> OS X AIO is implemented with kernel threads but the default settings
> are way too low to do anything useful, you have to tweak a bunch of
> sysctls first. О©╫FreeBSD has similar issues (the implementations are
> very similar) and you need to manually load a kernel module first,
> otherwise everything fails with ENOSYS.
>
> Native Linux AIO has the same issues as Windows. О©╫glibc's POSIX AIO
> implementation doesn't even bother with it, it always uses user-space
> threads.
>
> The only operating system I know of that has a remotely usable
> implementation is Solaris and who uses that?
>
> --
> Job Board:
http://jobs.nodejs.org/
> Posting guidelines:
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to
nod...@googlegroups.com
> To unsubscribe from this group, send email to
>
nodejs+un...@googlegroups.com
> For more options, visit this group at
>
http://groups.google.com/group/nodejs?hl=en?hl=en