[erlang-questions] couchdb performace 10x: using NIF for file io
Sun Oct 24 16:30:21 CEST 2010
I'd guess this is because the NIF blocks the current VM thread instead
of a dedicated I/O thread.
On 10/24/2010 04:17 PM, Robert Virding wrote:
> One intersting thing in the graphs is the fluctuations occurring in the NIF'ed version. The old version is much more consistent, but slower. I wonder why it is so.
> One problem with writing too much in C that there is a big risk that the code will contain more bugs. So while a system technically is "up" it will be less accessible if it has to restart sub-sections more often.
> ----- "Joel Reymont" <> wrote:
>> Simply switching to NIFs for file IO seems to have improved CouchDB
>> write performance more than ten-fold.
>> Compare the old graph
>> to the new graph
>> I was under the impression that the Erlang IO subsystem was highly
>> optimized but there seems to be no limit to perfection.
>> NIFs are a giant black hole that will subsume Erlang code as
>> performance has to be improved. Start at the lowest level and keep
>> moving up. All that will be left of Erlang in the end is 99.99999%
>> uptime, fault tolerance and supervision... of optimized C code. It's
>> swell and I'm all for it!
>> Patch is here:
>> erlang-questions (at) erlang.org mailing list.
>> See http://www.erlang.org/faq.html
>> To unsubscribe; mailto:
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:
More information about the erlang-questions