Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 255526 - net-im/ejabberd speed up by compiling xml.erl natively
Summary: net-im/ejabberd speed up by compiling xml.erl natively
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Caleb Tennis (RETIRED)
URL: http://metajack.im/2009/01/18/speed-u...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-19 17:33 UTC by Craig Andrews
Modified: 2009-03-16 15:18 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Craig Andrews gentoo-dev 2009-01-19 17:33:36 UTC
Erlang components can be compiled natively. Since the xml component of ejabberd is used so often, and is so performance critical, compiling it natively can give a speed improvement.

"go to the directory with xml.erl and run the compiler:

cd ejabberd/src
erlc +native xml.erl

Finally, move the xml.beam file into your ebin directory."

I think this should be done during the compile phase. See http://metajack.im/2009/01/18/speed-up-ejabberd/ for more information.

Reproducible: Always
Comment 1 Peter Volkov (RETIRED) gentoo-dev 2009-03-16 15:18:55 UTC
Thank you for report candrews. Unfortunately I don't think it's wise to enable this feature distribution wide based on the information we have. There are no real numbers in that blog how faster this feature makes ejabberd in general. There is just rough estimate for one function. Please provide us with numbers and then we'll definitely reconsider our current resolution.

Also note, there in comments is the following:
"You are loosing features by using HiPE (stacktrace) and the performance increase must be tested because context switching between native and non native can cost quite a lot as well."

So again without real tests I don't see how this is useful.