libunwind-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libunwind-devel] performance regression for v1.3 on aarch64


From: Dave Watson
Subject: Re: [Libunwind-devel] performance regression for v1.3 on aarch64
Date: Tue, 13 Feb 2018 11:09:07 -0800
User-agent: Mutt/1.6.0 (2016-04-01)

On 02/13/18 04:15 AM, yangyongyong wrote:
> Hi all,
> Recently I upgrade libunwind from 1.2 to 1.3 (until commit 
> 26718da1713a5698070e702e68db1f995baeae07) mostly because commit 
> 5a491cb2d889f03952182d611d2ac6e15c3c5845:
> "arm64: Support for restore of ARM64 Neon callee-saved registers during 
> unwind"
> 
> v1.3 works well except the performance regression of unw_get_proc_info.
> I sampled the time consumed by unw_get_proc_info with 
> clock_gettime(CLOCK_MONOTONIC, ...)
> Here is the results (Tests are performed on aarch64/linux with gcc 5.4, us 
> means microsecond):
> v1.3:
> 
> It seems v1.3 costs 10 times more. And things are getting even worse on qemu. 
> I do not have any clue for this problem, please some one enlights me.

This was just discussed on the list, maybe the same issue: 

http://lists.nongnu.org/archive/html/libunwind-devel/2018-01/msg00001.html

Wasn't fully resolved though, there is still an open task

https://github.com/libunwind/libunwind/issues/63

> 
> By the way, v1.3 can not be built on Android NDK r16b 
> (https://urldefense.proofpoint.com/v2/url?u=https-3A__dl.google.com_android_repository_android-2Dndk-2Dr16b-2Dlinux-2Dx86-5F64.zip&d=DwIFAg&c=5VD0RTtNlTh3ycd41b3MUw&r=vou6lT5jmE_fWQWZZgNrsMWu4RT87QAB9V07tPHlP5U&m=0XbMT1rFlolANBmO2Mtg-ayptQyu48agi9TKFupfZlg&s=f84LSoJQf3Q12nfD5H-8M2WWFiFRAuBh-26JrLEHFwM&e=
>  ) with configure :  "configure   --host=aarch64-linux-android  
> --prefix=xxx_install_yyy     --enable-debug".  Following are some potential 
> problems:
> 
> 1.       test-coredump-unwind  includes execinfo.h  which does not exist on 
> android.
> 
> 2.       HAVE_STRUCT_ELF_PRSTATUS is not defined during configuration.
> 
> 3.       struct elf_prstatus is defined in linux/elfcore.h which is not 
> included.

I would love to merge a patch if you have one to fix these issues.  I
do not have an android setup.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]