[erlang-questions] Dialyzer startup time

Bernard Duggan <>
Thu Jun 24 02:10:48 CEST 2010


Hi Kostis,
> What does your Erlang banner look like?  On my office it looks as:
>
>     Erlang R14A (erts-5.8) [source] [smp:4:4] [rq:4] ... [hipe]
>    
Erlang R13B04 (erts-5.7.5) [source] [smp:2:2] [rq:2] [async-threads:0] 
[hipe]

> Also, can you check which OTP libraries/applications were compiled to
> native code?  The ones that matter for this task are files in stdlib,
> compiler, hipe and dialyzer.
>
> If you do not know how to look, you find out about this for some module
> by the command:
>
>     1>  [begin code:ensure_loaded(M), code:is_module_native(M) end
>         || M<- [erl_types, cerl, sets, dialyzer_plt]].
>     [true,true,true,true]
>    
That was the issue - it turned out that building/installing from a clean 
source package with --enable-native-libs was, for some reason, not 
sufficient (ended up with [false, false, false, false]).  I had to 
manually delete and rebuild the beams in the hipe, stdlib and compiler 
directories then run the install again.  That got it, and the native 
compilation part of dialyzer is now down to <7s (a dual-core laptop, 
about 3 years old, for reference).

Thanks very much for your (and Tuncer's) help.  It would be interesting 
to know why it didn't build native libs the first time, but that could 
easily be something that's been resolved in R14A (haven't spent the time 
to upgrade yet - I'm a coward and am waiting for 14B :)).

Cheers,

Bernard


More information about the erlang-questions mailing list