Logo

Linux 内核

6.16.0-rc4

快速搜索

目录

  • 开发流程
  • 提交补丁
  • 行为准则
  • 维护者手册
  • 所有开发流程文档
  • 核心 API
  • 驱动 API
  • 子系统
  • 锁
  • 许可规则
  • 编写文档
  • 开发工具
  • 测试指南
  • 黑客指南
  • 追踪
  • 故障注入
  • 实时补丁
  • Rust
  • 管理
    • 内核管理通用指南
    • 启动内核
    • 追踪和识别问题
      • 报告问题
      • 报告回归
      • 如何快速构建精简的 Linux 内核
      • 如何验证错误和二分法回归
      • Bug 搜索
      • 二分法回归
      • 被污染的内核
      • Ramoops oops/panic 日志记录器
      • 动态调试
      • 解释“未找到工作 init”启动挂起消息
      • Kdump 文档 - 基于 kexec 的崩溃转储解决方案
      • 性能监视器支持
      • pstore block oops/panic 日志记录器
      • 清除 WARN_ONCE
      • 减少由 per-cpu kthread 引起的 OS 抖动
      • Softlockup 检测器和 Hardlockup 检测器 (aka nmi_watchdog)
      • 可靠性、可用性和可维护性 (RAS)
      • 错误解码
      • 地址转换
      • Linux Magic 系统请求键技巧
    • 核心内核子系统
    • 块层和文件系统管理
    • 设备特定指南
    • 工作负载分析
    • 其他一切
  • 构建系统
  • 报告问题
  • 用户空间工具
  • 用户空间 API
  • 固件
  • 固件和设备树
  • CPU 架构
  • 未排序的文档
  • 翻译

本页

  • 显示源代码

StarFive StarLink 性能监控单元 (PMU)¶

StarFive StarLink 性能监控单元 (PMU) 存在于 StarLink 片上一致性网络 (CNoC) 中,该网络将多个 CPU 集群与 L3 内存系统连接起来。

Uncore PMU 支持溢出中断,最多 16 个可编程的 64 位事件计数器和一个独立的 64 位周期计数器。 PMU 只能通过内存映射 I/O 访问,并且对于连接到同一 PMU 的内核是通用的。

驱动程序在 sysfs “events” 目录下公开支持的 PMU 事件

/sys/bus/event_source/devices/starfive_starlink_pmu/events/

驱动程序在 sysfs “cpumask” 目录下公开用于处理 PMU 事件的 cpu

/sys/bus/event_source/devices/starfive_starlink_pmu/cpumask/

驱动程序在 sysfs “format” 目录下描述配置(事件 ID)的格式

/sys/bus/event_source/devices/starfive_starlink_pmu/format/

perf 使用示例

$ perf list

starfive_starlink_pmu/cycles/                      [Kernel PMU event]
starfive_starlink_pmu/read_hit/                    [Kernel PMU event]
starfive_starlink_pmu/read_miss/                   [Kernel PMU event]
starfive_starlink_pmu/read_request/                [Kernel PMU event]
starfive_starlink_pmu/release_request/             [Kernel PMU event]
starfive_starlink_pmu/write_hit/                   [Kernel PMU event]
starfive_starlink_pmu/write_miss/                  [Kernel PMU event]
starfive_starlink_pmu/write_request/               [Kernel PMU event]
starfive_starlink_pmu/writeback/                   [Kernel PMU event]


$ perf stat -a -e /starfive_starlink_pmu/cycles/ sleep 1

不支持采样。 因此,不支持“perf record”。 不支持附加到任务,仅支持系统范围的计数。

©内核开发社区。 | 由 Sphinx 5.3.0 & Alabaster 0.7.16 强力驱动 | 页面源代码