草庐IT

profiling

全部标签

android - react native 分析。 Systrace 未显示 JS 和 native 模块线程

我已遵循ProfilingAndroidUIPerformance的指南我运行以下命令:/usr/local/Cellar/android-sdk/24.4.1_1/platform-tools/systrace/systrace.py--time=10-otrace.htmlshredgfxview-acom.navigation.我能够获得跟踪输出。但是Js和NativeModulesThreads并不像指南中描述的那样可用。这是生成的跟踪示例。我已尝试使用指南中描述的dev=false和本answer中提到的dev=true来运行跟踪。但没有工作我目前使用的是0.28.0版。我以

android - 有没有办法在构建后直接附加新的 Android Profiler 来调试应用程序进程?

附加AndroidStudio3.0AndroidProfiler以从冷启动调试应用程序几乎是不可能的,因为我必须在很短的时间内从下拉列表中选择进程(并开始记录)。profilingappcoldstart,有没有更方便的方法?不幸的是,在android开发者设置中选择“调试应用程序”没有帮助。 最佳答案 借助AndroidStudio3.2Canary11,您可以从启动时分析您的应用。只需转到“运行”->“编辑配置”->“性能分析”选项卡并选中“在启动时开始记录方法跟踪”。这是一个下载链接。https://developer.an

安卓工作室 3.0 : Studio Profilers encountered an unexpected error

我的应用程序运行完美。但是我的logcat每次运行我的应用程序时都会报错:12-1120:45:42.539946-1547/packageE/StudioProfiler:StudioProfilersencounteredanunexpectederror.Considerreportingabug,includinglogcatoutputbelow.Seealso:https://developer.android.com/studio/report-bugs.html#studio-bugsFailedtocaptureapplication这个错误是什么意思?为什么每次都出

c++ - 如何解释 Google 性能工具 CPU 分析器中的地址

我的C++程序消耗大量CPU,并且在运行时消耗更多。我使用GooglePerformanceTools来分析CPU使用情况,这就是我得到的结果:(pprof)topTotal:1343samples133099.0%99.0%133099.0%0x0000000801dcb11c70.5%99.6%70.5%0x0000000801dcb11e40.3%99.9%40.3%program::threadWorker10.1%99.9%10.1%0x0000000801dcb11010.1%100.0%10.1%0x00007fffffffffc0但是,这里显示的5个进程中只有1个是实际

C++ exp LUT(查找表)

在我正在编写的C++CPU绑定(bind)模拟中,我通过程序中的valgrind将瓶颈追踪到cmath::exp。它目前占用了我40%以上的模拟时间。我可以将输入绑定(bind)到一个相对较小的域,但我想控制准确性。我正在考虑转向LUT(查找表)来替换exp但我不太确定如何以“正确的方式”(tm)执行此操作。我的顾虑:大型查找表将无法放入缓存,从而降低访问速度将double输入转换为整数以访问查找表的最佳方法(2)的答案是否取决于输入函数的斜率?我是在重新发明轮子吗-以前有人这样做过吗?为exp实现/(从库中包含)LUT的最佳方法是什么? 最佳答案

c++ - 按事件类型分析程序

典型分析器的输出是代码中的函数列表,按程序运行时每个函数所用的时间排序。这很好,但有时我更感兴趣的是程序大部分时间在做什么,而不是EIP大多数时间在哪里。我假设的分析器的示例输出是:WaitingforfileIO-19%ofexecutiontime.Waitingfornetwork-4%ofexecutiontimeCachemisses-70%ofexecutiontime.Actualcomputation-7%ofexecutiontime.有这样的分析器吗?是否可以从“标准”分析器中得出这样的输出?我使用的是Linux,但我很高兴听到任何适用于其他系统的解决方案。

c++ - 探查器输出中线程并发开销时间的含义是什么?

如果有人对IntelVTuneAmplifier有很好的体验,我将不胜感激。最近我收到了其他使用英特尔VTuneAmplifier来对付我的程序的人的性能分析报告。它表明,线程并发区域中存在高开销时间。开销时间是什么意思?他们不知道(问我),我无法访问英特尔VTune放大器。我的想法很模糊。这个程序有很多线程sleep调用,因为pthreadcondition在目标平台上不稳定(或者我做的不好)所以我改变了很多例程来在循环中做工作,如下所示:while(true){mutex.lock();if(eventchanged){mutex.unlock();//dosomethingbre

c++ - 分析 C++ 多线程应用程序

您是否使用过英特尔Vtune分析器等分析工具?对于Linux和Windows上的C++多线程应用程序,您有何建议?我主要对缓存未命中、内存使用、内存泄漏和CPU使用感兴趣。我使用valgrind(仅在UNIX上),但主要用于查找内存错误和泄漏。 最佳答案 以下是多线程应用程序的好工具。您可以试用评估版。运行时完整性检查工具线程检查器——英特尔线程检查器/VTune,here内存一致性检查工具(内存使用情况、内存泄漏)-内存验证器,here性能分析。(CPU使用率)-AQTime,here编辑:英特尔线程检查器可用于诊断数据竞争、死锁

Unity 内存性能分析器 (Memory Profiler)

一、安装安装有两种方式一:addpackage:com.unity.memoryprofiler方式二:FromPackages:UnityRegistry搜索MemoryProfiler二、使用打开:Windows->Analysis->MemoryProfiler打开MemoryProfiler界面,可以链接真机检测,也可以在Editor检测。点击Capture保存当下帧的内容。Capture完毕之后,会保存本地一个镜像:*.snap文件点击Snap会显示对应帧的详细信息三、单帧检测单帧检测,一般去看工程内的资源,去检查占用内存特别大的游戏对象。在TreeMap界面进行检查,这里已经分好类

c++ - 为什么 vector 在一个测试中比 map 快,而在另一个测试中不是?

我一直被告知vector速度很快,而在我多年的编程经验中,我从未见过任何东西可以收缩它。我决定(过早地优化和)编写一个关联类,它是一个围绕顺序容器的薄包装器(即::std::vector并提供与::std::map。大部分代码都非常简单,我几乎没有遇到什么困难。但是,在我对各种大小的POD类型(4到64字节)和std::strings的测试中,计数从8到2000不等,::std::map::find比我的::associative::find快,对于几乎所有测试,通常快15%左右。我做了一个Short,SelfContained,Correct(Compilable),Example这