[erlang-questions] HiPE performance gain (Was: Re: [erlang-questions] Erlang static linked interpreter)

Thomas Lindgren thomasl_erlang@REDACTED
Thu Jan 20 18:31:02 CET 2011

----- Original Message ----
> From: Michael Turner <michael.eugene.turner@REDACTED>
> How the  emulator is coded probably makes a difference too.  In my few visits
> to  the BEAM VM code, I was struck by the amount of inlining (and via long  C
> macros, whoa, scary!)  I began to wonder whether those macros really  paid
> off, when you consider the more limited I-caches.  If their bloat  also tends
> to crowd out HiPE-generated native code, that's another  performance ding,
> albeit more indirectly suffered.  Wouldn't it make  more sense to recode
> those macros as static functions and try various  compiler optimization flags
> relevant to automatic inlining of  functions?  A smaller (in generated native
> code) VM that *seemed* to  have more function call overhead might
> nevertheless actually be a win for  HiPE-compiled code.  Maybe a win more
> generally, at least on some  architectures.  For giving HiPE a chance, it
> might be worth an  experiment or two.

It might be interesting to do a trace based simulation and comparison of the 
I-cache performance of the emulator in various scenarios. Or just check whether 
there are any palpable problems on a local setup, of course. I think Mattias 
Lang has noted that the emulator has grown quite a bit over the years, is that a 
problem for instance?

Best regards,


More information about the erlang-questions mailing list