Summary: __register_frame and the corresponding _Unwind_Find_FDE use a global mutex for frame registration and unwinding. This can lead to very poor performance on machines with high core counts. This patch organizes the frames in a b-tree with read-optimized synchronization instead, which allows for fully parallel unwinding.

See:
https://gcc.gnu.org/pipermail/gcc-patches/2022-June/597256.html

Best

Thomas

Reply via email to