You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Paul Davis <pa...@gmail.com> on 2011/05/23 21:06:47 UTC

Re: Build CouchDB process and Erlang HiPE(High Performance Erlang)

You can build CouchDB with HiPE enabled but unfortunately there are
stability issues that come into play. I don't believe anyone has
looked into what or why so its never been recommended to do this
across the entire code base. There is a --with-native-mochijson2 (or
similar) option to configure which will compile the JSON encoder with
HiPE if available. I don't know if anyone's posted comparison data or
not though.

On Mon, May 23, 2011 at 3:21 PM, Marcos Ortiz <ml...@uci.cu> wrote:
> regards,
> I was reading a great post from Jack Moffit´s blog about "Speed Up Ejabberd"
> and one thing that he told there is the use of the native code compiler
> (HiPE) for CPU hungry modules on this way:
> cd src/
> erlc  +native module_code.erl
>
> Have you tested the CouchDB´s source code with HiPE?
> It would be nice to have these results on any case
>
> Thanks
>
> --
> Marcos Luís Ortíz Valmaseda
>  Software Engineer (Large-Scaled Distributed Systems)
>  University of Information Sciences,
>  La Habana, Cuba
>  Linux User # 418229
>  http://about.me/marcosortiz
>
>

Re: Build CouchDB process and Erlang HiPE(High Performance Erlang)

Posted by Marcos Ortiz <ml...@uci.cu>.
On 05/23/2011 02:56 PM, Paul Davis wrote:
>>> There is a --with-native-mochijson2 (or
>>> similar) option to configure which will compile the JSON encoder with
>>> HiPE if available. I don't know if anyone's posted comparison data or
>>> not though.
>> I will test with this option, and I will benchmark with the standard build
>> process to view the
>> diferences between both:
>>   ./configure --with-native-mochijson2
>> and
>> ./configure
> Also, I should have mentioned originally that by default on recent
> trunk, the mochijson2 encoder has been replaced by default with a
> version that uses C extensions instead of native Erlang. Only when
> these are not available will the pure Erlang version be used.
> Depending on the version of CouchDB and Erlang that you use, this will
> be important in comparing differences.
Ok, thanks, I will keep in mind this

-- 
Marcos Luís Ortíz Valmaseda
  Software Engineer (Large-Scaled Distributed Systems)
  University of Information Sciences,
  La Habana, Cuba
  Linux User # 418229
  http://about.me/marcosortiz


Re: Build CouchDB process and Erlang HiPE(High Performance Erlang)

Posted by Paul Davis <pa...@gmail.com>.
>> There is a --with-native-mochijson2 (or
>> similar) option to configure which will compile the JSON encoder with
>> HiPE if available. I don't know if anyone's posted comparison data or
>> not though.
>
> I will test with this option, and I will benchmark with the standard build
> process to view the
> diferences between both:
>  ./configure --with-native-mochijson2
> and
> ./configure

Also, I should have mentioned originally that by default on recent
trunk, the mochijson2 encoder has been replaced by default with a
version that uses C extensions instead of native Erlang. Only when
these are not available will the pure Erlang version be used.
Depending on the version of CouchDB and Erlang that you use, this will
be important in comparing differences.

Re: Build CouchDB process and Erlang HiPE(High Performance Erlang)

Posted by Marcos Ortiz <ml...@uci.cu>.
On 05/23/2011 02:36 PM, Paul Davis wrote:
> You can build CouchDB with HiPE enabled but unfortunately there are
> stability issues that come into play. I don't believe anyone has
> looked into what or why so its never been recommended to do this
> across the entire code base.
OK, I think that´s a good questio for me to answer.
I will try to do this with HiPE to find out the issues
> There is a --with-native-mochijson2 (or
> similar) option to configure which will compile the JSON encoder with
> HiPE if available. I don't know if anyone's posted comparison data or
> not though.
I will test with this option, and I will benchmark with the standard 
build process to view the
diferences between both:
  ./configure --with-native-mochijson2
and
./configure

Regards
> On Mon, May 23, 2011 at 3:21 PM, Marcos Ortiz<ml...@uci.cu>  wrote:
>> regards,
>> I was reading a great post from Jack Moffit´s blog about "Speed Up Ejabberd"
>> and one thing that he told there is the use of the native code compiler
>> (HiPE) for CPU hungry modules on this way:
>> cd src/
>> erlc  +native module_code.erl
>>
>> Have you tested the CouchDB´s source code with HiPE?
>> It would be nice to have these results on any case
>>


-- 
Marcos Luís Ortíz Valmaseda
  Software Engineer (Large-Scaled Distributed Systems)
  University of Information Sciences,
  La Habana, Cuba
  Linux User # 418229
  http://about.me/marcosortiz