Hi,

When dynamically linking a fast enough machine hides the latency, but when
Statically linking or on slower devices this change caused a 5x increase in
Instruction count and 2x increase in cycle count before getting to main.

This has been quite noticeable on smaller devices.  Is there a reason the btree
can't be initialized lazily? It seems a bit harsh to pay the cost of unwinding 
at
startup even when you don't throw exceptions..

we cannot easily do that lazily because otherwise we need a mutex for lazy initialization, which is exactly what we wanted to get rid of.

Having said that, I am surprised that you saw a noticeable difference. On most platforms there should not be dynamic frame registration at all, as the regular frames are directly read from the ELF data.

Can you please send me an precise description on how to reproduce the issue? (Platform, tools, a VM if you have one would be great). I will then debug this to improve the startup time.

Best

Thomas

Reply via email to