问题标签 [perf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4894 浏览

linux - perf 是否锁定配置文件用户空间互斥锁?

摘要:是否perf lock配置pthread_mutex?

详情

该工具perf有一个选项perf lock。手册页说:

但是当我尝试运行时,perf lock record我收到一条错误消息:invalid or unsupported event: 'lock:lock_acquire'. 我看了看,似乎错误可能是因为我的内核没有用CONFIG_LOCKDEPor编译CONFIG_LOCK_STAT

我的问题是:是否perf lock报告与用户空间锁(如 pthread_mutex)或仅内核锁相关的事件?我对主要在用户空间中运行的分析应用程序更感兴趣。我认为 perf 中的这个选项看起来很有趣,但由于我无法在不编译(或获取)新内核的情况下运行它,所以我有兴趣在尝试之前更好地了解它的作用。

0 投票
1 回答
3751 浏览

perf - zalloc分配内存

我正在通过 linux 内核源代码中的 perf 源代码来了解如何实现用户空间探测。在很多地方,我遇到了这个:

我认为它位于 zlib 库中(对于 fedora 18)。谁能告诉我这个 zalloc 如何帮助分配内存?提前致谢...

0 投票
1 回答
3750 浏览

linux - 在 Kcachegrind 中打开 perf.data

我在某处读到可以将perf.data(来自 linuxperf record分析工具的输出)转换为 kcachegrind 可以解析/绘图的格式,但是我没有找到能够进行这种转换的应用程序,kcachegrind 也没有打开perf.data

这可能吗:使用 kcachegrind 查看 perf 输出?我可以使用哪个工具?

0 投票
1 回答
1535 浏览

android - Linux perf stat 工具返回零指令计数。我在这里想念什么?

我正在尝试在我的新 Galaxy S4 手机上获取一些基本性能数据。我已经编译了一个自定义内核并设法使用 Odin 将其闪存到设备上。这些是与我启用的 perf 工具相关的内核模块:

我还交叉编译了 perf 工具。问题是当我运行以下命令时:

输出似乎不太正确:

我已将 cpu 策略设置为“用户空间”并做了:

为了确保所有内核始终以最大频率工作。

我将不胜感激任何帮助。

以下是没有解决方案的类似案例的链接:http: //lists.linaro.org/pipermail/linaro-kernel/2012-December/002611.html http://forums.arm.com/index.php?/topic/ 15020-pmu-in-cortex-a8-omap-3530-what-am-i-doing-wrong/

相关stackoverflow主题: 如何测量ARM Cortex-A8处理器中的程序执行时间?

0 投票
3 回答
333 浏览

linux - 用于进程内性能分析的库?(Linux 上的 Intel 性能计数器)

我想通过读取路径上各个点的性能计数器来分析应用程序的关键路径。

我遇到了libperf它提供了一个相当简洁的 C api。然而,上一次活动是在 3 年前。

我也知道PAPI. 这正在积极开发中。

  • 还有其他我应该注意的图书馆吗?
  • 任何人都可以提供有关使用其中一种方法的任何见解吗?
  • 任何将这些集成到应用程序代码中的教程/介绍?
0 投票
3 回答
10326 浏览

linux - 如何在 Linux 中通过 perf 工具捕获 L3 缓存命中和未命中

有没有办法通过 Linux 中的 perf 工具捕获 L3 缓存命中和未命中。根据 的输出perf list cache,支持 L1 和 LLC 缓存。根据perf的源码中perf_evsel__hw_cache数组的定义:

LLC 是 L2-cache 的别名。我的问题是如何通过 Linux 中的 perf 工具捕获 L3 缓存命中和未命中。提前致谢!

0 投票
2 回答
9296 浏览

performance - cpu缓存性能。存储未命中与加载未命中

我使用 perf 作为基本事件计数器。我正在开发一个遭受数据缓存存储未命中的程序。其中高达80%的比例。

我知道原则上缓存是如何工作的。它会在各种未命中情况下从内存中加载,并在需要时从缓存中删除数据。我不明白的是,存储加载未命中之间有什么区别。加载和存储有何不同。你怎么能储存小姐?

0 投票
4 回答
6745 浏览

linux - perf 可以在内核中找到符号,但在我的程序中找不到符号。如何解决?

你可能已经读过这个问题: 如何让性能在我的程序中找到符号

1)我的问题是:

当我使用 perf report 时,它会给出如下结果:

即:性能可以在内核中找到符号,但在我的程序中找不到符号。

我的程序在这里:

2)我已经编译了这样的程序:

gcc test.c -g -o 测试

我的环境:操作系统:ubuntu 内核:3.10.9

0 投票
1 回答
4860 浏览

linux - perf 注释,只显示源代码

我正在使用 Perf 执行一些分析实验。

但是,我想知道特定代码区域的结果,在这种情况下,查看每行源代码(在这种情况下为 C/C++)的结果(百分比)将简化任务。

perf annotate有一个显示 ASM+Source Code 的视图,还可以选择关闭显示源代码。我想知道如何完成此选项的另一端,即仅显示源代码 + 每行事件的百分比并隐藏 ASM 输出。这可能perf吗?

其他工具的建议吗?我也在使用 Vtune,但是我不想做的分析正在工作。Valgrind 是没有问题的,太慢了。

我在运行 Ubuntu 13.04 的 x64 上。

0 投票
1 回答
372 浏览

linux-kernel - 这些跟踪事件代表什么?

我刚刚学会了使用 ftrace 和 perf,它们有一些我不理解的共同点——跟踪事件。我猜它们是一些内核内部函数,如果启用它们,ftrace 会在调用它们时记录它们的名称。那正确吗?所有事件都按下面列出的组进行排序。有人能告诉我他们代表什么,或者我可以从哪里获得有关他们的详细信息。谢谢。

块 btrfs 压缩 drm ext3 ext4 fs ftrace gpio header_event header_page irq jbd jbd2 kmem mce 模块 napi net power raw_syscalls rcu regmap 调节器 rpm sched scsi 信号 skb sock syscalls timer udp vfs vmscan vsyscall workqueue writeback xen xfs