oprofile

Android 性能优化资源汇总 2020 版

徘徊边缘 提交于 2020-05-08 15:38:56
近期做 Android 性能优化,整理了部分性能优化的开发资源,先发布出来,后续会在这个 git仓库 更新,感兴趣的网友可以关注下。 以下是初稿: 网站博客 以组织或人为单位的教程资源: Android 官方教程,关于 性能优化的主题 , 中文翻译 Android Developers Android 官方开发者频道 微信终端开发团队博客,公众号 WeMobileDev ,也可访问 腾讯云专栏 Facebook Android 专栏 《性能之巅》作者 Brendan D.Gregg 的网站 ClassShark 作者 Boris Farber 的 个人网站 androidperformance 博客文章目录 markzhai’s home BlockCanary 作者的博客 Trinea 的性能优化系列文章 Deep into Android 里面源码剖析和性能总结文章不错 书籍培训 相关书籍 《性能之巅:洞悉系统、企业与云计算》 Linux 系统优化必看的书,Andoid 开发者可从中借鉴性能优化工具和思路 《Android移动性能实战》 腾讯SNG专项测试团队 2017 年出的性能优化案例集锦,基本都是手Q、手空和 QQ音乐的实际例子 《移动App性能评测与优化》 腾讯TMQ专项测试团队 2016 年出的实战案例精选,还讲了 GT 的使用 《高性能Android应用开发》 AT

oprofile unable to produce call graph

百般思念 提交于 2019-12-23 23:15:10
问题 I am trying to use oprofile to generate call graph. Compiler is g++, platform is linux x86-64, linker is gfortran C++ code is compiled with -fno- omit-frame-pointer. oprofile is started with --callgraph=25. report I run with --callgraph. the call graph is produced but it's only includes self time, which is not much use what am I missing? 回答1: Check if opcontrol --status does not have Call-graph depth: 0 in its output. If it does, stop profiling, do opcontrol --callgraph=<desired call stack

What does the OProfile warning 'dropping hyperspace sample' mean?

最后都变了- 提交于 2019-12-23 12:28:44
问题 When using the statistical execution profiler OProfile to visualise a callgraph profile for my C application, it includes the following warning multiple times. The warning is rather cryptic to me: warning: dropping hyperspace sample at offset 1af9 >= 2be8 for binary /home/myuser/mybinary I'm using OProfile in a Xen virtualized environment like this: modprobe oprofile timer=1 opcontrol --no-vmlinux opcontrol --start (wait for profiling data to accumulate) opcontrol --stop opreport --session

OPROFILE can't get performance data

十年热恋 提交于 2019-12-23 11:47:05
问题 I am using OPROFILE to collect some performance data. but I got in troubule. Here is my shell: ~ # rm -f /root/.oprofile/daemonrc ~ # opcontrol --setup --no-vmlinux ~ # opcontrol --init ~ # opcontrol --reset ~ # opcontrol --start ~ # opcontrol --status Daemon running: pid 14909 Separate options: none vmlinux file: none Image filter: none Call-graph depth: 0 ~ # opcontrol --shutdown Stopping profiling. Killing daemon. ~ # opreport error: no sample files found: profile specification too strict?

OPROFILE can't get performance data

无人久伴 提交于 2019-12-23 11:46:08
问题 I am using OPROFILE to collect some performance data. but I got in troubule. Here is my shell: ~ # rm -f /root/.oprofile/daemonrc ~ # opcontrol --setup --no-vmlinux ~ # opcontrol --init ~ # opcontrol --reset ~ # opcontrol --start ~ # opcontrol --status Daemon running: pid 14909 Separate options: none vmlinux file: none Image filter: none Call-graph depth: 0 ~ # opcontrol --shutdown Stopping profiling. Killing daemon. ~ # opreport error: no sample files found: profile specification too strict?

How to get call graph profiling working with gcc compiled code and ARM Cortex A8 target?

丶灬走出姿态 提交于 2019-12-21 18:00:30
问题 I am biting my teeth out on this one... I need to do profiling on an ARM board and need to view call graphs. I tried with OProfile, Kernel perf and Google performance tools. All work fine but do not output any call-graph information. This led me to the conclusion that I am not compiling my code correctly. I use the following flags when compiling my C++ code: Arch specific: -march=armv7-a -mtune=cortex-a8 -mfloat-abi=hard -mfpu=vfpv3 General: -fexceptions -fno-strict-aliasing -D_REENTRANT

What profiler should I use to measure _real_ time (including waiting for syscalls) spend in this function, not _CPU_ one

こ雲淡風輕ζ 提交于 2019-12-20 01:46:59
问题 The application does not calculate things, but does i/o, read files, uses network. I want profiler to show it. I expect something like something like in callgrind that calls clock_gettime each proble. Or like oprofile that interrupts my application (while it is sleeping or waiting for socket/file/whatever) to see what is it doing. I want things like "read", "connect", "nanosleep", "send" and especially "fsync" ( And all their callers ) to be bold (not things like string or number functions

oprofile on Linux running in a virtual machine

那年仲夏 提交于 2019-12-08 13:50:44
问题 I'm running a Linux Ubuntu 10.4 VM using VirtualBox. I'm trying to use oprofile to profile some application in the virtual machine. I've installed oprofile 0.9.6 but I cannot get it to work. When I try to start I get the following error: opcontrol --start /usr/local/bin/opcontrol: line 323: /usr/local/bin/ophelp: cannot execute binary file /usr/local/bin/opcontrol: line 1483: /usr/local/bin/oprofiled: cannot execute binary file Couldn't start oprofiled. Check the log file "/var/lib/oprofile

OProfile on android

筅森魡賤 提交于 2019-12-07 08:53:45
问题 Has anybody used OProfile tool on android...If you are able to profile please provide the basic steps and any other configuration or setup in order to do that... Regards, Bharat Pawar 回答1: You could use this very effective method. It works just fine on Eclipse. 回答2: oprofile is said to be supported in some htc devices : http://groups.google.com/group/android-platform/browse_thread/thread/a722fde26c5330ca 来源: https://stackoverflow.com/questions/2354349/oprofile-on-android

How to get call graph profiling working with gcc compiled code and ARM Cortex A8 target?

妖精的绣舞 提交于 2019-12-04 09:03:26
I am biting my teeth out on this one... I need to do profiling on an ARM board and need to view call graphs. I tried with OProfile, Kernel perf and Google performance tools. All work fine but do not output any call-graph information. This led me to the conclusion that I am not compiling my code correctly. I use the following flags when compiling my C++ code: Arch specific: -march=armv7-a -mtune=cortex-a8 -mfloat-abi=hard -mfpu=vfpv3 General: -fexceptions -fno-strict-aliasing -D_REENTRANT -Wall -Wextra Debugging (with optimization): -O2 -g -fno-omit-frame-pointer I did a lot of Google searching