我正在开发一个Android应用程序,该应用程序大量使用NDK,并且还使用从C ++编译的外部共享库。
这些库包含各种算法,我希望使用分析工具来提高此库中代码的性能。值得一提的是我正在使用CMake构建我的C ++库。
是否有适用于我的案例的分析工具?
修改
特别是,我可以在共享库中使用android-ndk-profiler吗?
答案 0 :(得分:0)
我找到了两种可以与原生Android C ++库一起使用的方法。
1)" Intrusive"剖析。使用-pg
编译代码并使用android-ndk-profiler项目链接所有内容。
2)"非侵入式"办法。使用fplutil android_ndk_perf
在设备上运行perf
。请按照他们的文档获取指导。
第一种方式应该适用于所有地方,而第二种方式需要Linux内核的一些支持,并且可能无法在某些设备上正常工作。