学会使用perf性能分析工具(含移植到arm-linux开发板)

本文为博客 VIP 文章,开通 VIP 后可阅读全文

开通 VIP


系统:Ubuntu18.04系统
内核版本:5.4.0-150-generic(通过uname -r查看)

一、在ubuntu中使用apt包下载Perf

输入perf命令,提示:

Command 'perf' not found, but can be installed with:

apt install linux-tools-common
Please ask your administrator.

按照提示安装linux-tools-common:

sudo apt-get install linux-tools-common

查看perf -v,提示:

WARNING: perf not found for kernel 5.4.0-150

  You may need to install the following packages for this specific kernel:
    linux-tools-5.4.0-150-generic
    linux-cloud-tools-5.4.0-150-generic

  You may also want to install one of the following packages to keep up to date:
    linux-tools-generic
    linux-cloud-tools-generic

由于linux有不同的发行版本,内核工具也不同,提示的意思是可以下载特定的内核版本下的tools,根据命令行的提示,使用uname -r 查看内核版本,并下载

sudo apt-get install linux-tools-5.4.0-150-generic

再次执行perf -v可以得到当前版本

perf version 5.4.233

参考博文:Perf的安装与简单使用

二、使用源码安装Perf,并移植到arm-linux环境下

perf是一种系统级性能分析工具,它涉及内核调用,所以安装需要知道内核版本。查看arm-linux平台的内核的版本,到官网上去下载特定的内核源码

在开发板终端输入

uname -r
5.4.31

去官网上下载内核源码,可以手动下载,也可以使用wget,以下操作在ubuntu平台

下载完毕之后,解压内核源代码

tar -zxvf linux-5.4.31.tar.gz

进入如下目录

cd linux-5.4
ubuntu环境下安装perf工具 阅读详情

相关推荐

12个企业级AI Agent项目实战:从智能代码审查到高并发短链系统

AI Agent(智能代理)是一种能够感知环境、自主决策并执行动作的软件实体,其核心原理在于结合大语言模型(LLM)能力与业务规则引擎。在企业级应用中,AI Agent通过分层架构设计实现可扩展性,技术价值体现在提升开发效率、优化业务流程和增强系统智能化水平。典型应用场景包括智能代码审查、高并发短链系统、商品推荐系统等,其中RAG(检索增强生成)技术能够为代码审查提供更准确的修复建议,而Function Calling机制则支持自然语言的购物车操作。本文基于12个完整的企业级Agent项目,涵盖智能代码审查

weixin_34088583的博客 463

linux perf v5.0.0源码文件

perf-5.0.0.tar.gz perf-5.0.0.tar.xz perf-5.0.0.tar.sign sha256sums.asc

Linux性能分析工具Perf简单教程

Perf是基于Linux内核perf_events接口实现的性能分析工具。我们可以用它来分析一个程序的性能,找出影响程序性能的瓶颈,并在此基础上对程序性能进行改进。

volunteer01的专栏 4323

ubuntuubuntu通用的perf安装方法

ubuntu通用的perf安装方法

HAICHANG1105的博客 2191

ubuntu18.04 性能分析工具perf使用

参考: Ubuntu 安装perf 正文: 安装 perf 先输入 perf, Command ‘perf’ not found,有对应的安装提示 $ perf Command 'perf' not found, but can be installed with: sudo apt install linux-tools-common $ sudo apt install linux-tools-common $ perf WARNING: perf not found for kerne

weixin_40378209的博客 5434

imx6ul 移植perf工具

perf是一款专业的性能分析工具,是Linux系统自带的一款性能分析工具,可以用来分析CPU、内存、磁盘等资源的使用情况。它与Linux内核紧密结合,可以充分利用Linux内核提供的各种性能分析机制,如性能计数器、tracepoint、kprobe等。使用perf可以分析系统性能瓶颈,定位应用程序的性能问题,优化代码等,因此是Linux系统管理员、开发人员和性能分析人员的重要工具之一。perf工具位于内核 open_kernel/tools/perf 目录下,直接编译会报错缺少相关库。

EtherCAT 757

perf 移植心得

从以下地址成功移植perf,谢谢tony-liu。 转载地址:http://www.cnblogs.com/helloworldtoyou/p/5585152.html 更正了一些内容,主要是zlib编译交叉工具链 zlib编译与安装 ./configure --prefix=$CROSS_COMPILE_DIR/libc/usr/ vim Makefile 修改所有gcc/a

dean_gdp的专栏 2725

性能分析工具终极指南:LIKWID vs perf vs PAPI 深度对比

在当今高性能计算和系统优化领域,选择合适的性能分析工具至关重要。LIKWID作为一款强大的性能监控和基准测试套件,与Linux perf和PAPI等工具相比,提供了独特的优势和使用体验。本文将深入对比这三款主流性能分析工具,帮助您做出最佳选择。 [![LIKWID性能分析工具对比](https://raw.gitcode.com/gh_mirrors/li/likwid/raw/36b7cdd6

gitblog_00141的博客 782

嵌入式Linux游戏移植实战:基于GEC6818开发板的2048与扫雷优化

嵌入式Linux应用开发是连接底层硬件与上层软件的关键技术领域,其核心在于如何在资源受限的嵌入式平台上高效运行应用程序。其原理涉及交叉编译工具链的搭建,使开发者能在x86主机上为ARM等异构架构生成可执行代码,并通过图形库(如SDL2)实现硬件抽象,以适配不同的显示与输入设备。这项技术的价值在于,它能将成熟的软件生态(如经典游戏、应用框架)移植到智能家居、工业HMI、车载信息娱乐等嵌入式场景中,极大地丰富了终端设备的交互体验与功能。本文以GEC6818开发板为硬件平台,聚焦于将2048和扫雷两款经典游戏进行

weixin_30664615的博客 328

告别ARM/x86依赖?聊聊RISC-V在嵌入式Linux开发板上的真实体验(以某款国产芯片为例)

本文详细探讨了RISC-V在嵌入式Linux开发板上的实际应用体验,从芯片选型到Linux部署的全过程。通过对比不同RISC-V开发板的性能参数和工具链差异,提供了实用的优化建议和实战经验,帮助开发者更好地理解和应用这一开源指令集架构。

weixin_30466039的博客 376

ELF 1开发板NCNN移植与嵌入式AI优化实战

嵌入式AI开发中,轻量级推理框架NCNN凭借其出色的模型压缩技术和ARM架构优化,成为资源受限设备的首选方案。作为腾讯开源的高性能框架,NCNN通过去除第三方依赖和深度指令集优化,能在Cortex-A7这类低算力处理器上实现数倍于TensorFlow Lite的推理速度。其核心技术价值体现在移动端优先的设计理念,支持PyTorch/TensorFlow模型70%以上的压缩率,并提供了从模型转换、量化加速到内存优化的全流程工具链。在ElfBoard ELF 1这类嵌入式Linux平台上,结合int8量化和多线

chuliaoqiao4046的博客 326

实战突破:ReactOS ARM架构移植完整指南

**ReactOS**——这款兼容Windows API的开源操作系统,正在实现从x86到ARM架构的革命性跨越。本文将深入探讨ReactOS在ARM平板设备上的移植实战,涵盖架构适配、驱动开发到系统优化的全流程。对于系统移植爱好者和嵌入式开发者而言,这是一次探索开源操作系统跨平台能力的技术盛宴。 ## 技术挑战概述:ARM移植的三大核心难题 将ReactOS移植ARM平台面临三个主要技术挑

gitblog_00261的博客 773

从零构建Allwinner开发板Linux系统:揭秘linux-sunxi的定制化之旅

本文详细介绍了如何从零开始为Allwinner开发板构建定制化Linux系统,重点解析linux-sunxi开源内核生态的优势与配置方法。涵盖交叉编译环境搭建、U-Boot移植Linux内核优化、根文件系统构建等关键步骤,并提供实用的调试技巧和性能优化方案,帮助开发者高效完成ARM架构嵌入式系统的定制开发。

work3的博客 642

Linux驱动移植实战:从原理到优化的完整指南

Linux设备驱动作为内核与硬件交互的桥梁,其移植工作涉及硬件抽象层适配、内核API兼容性处理等核心技术。通过设备树机制描述硬件资源配置,开发者可以高效实现不同平台间的驱动迁移。在嵌入式开发领域,驱动移植ARM架构(如NXP i.MX、TI AM335x等SoC)的适配尤为重要,涉及GPIO、I2C、SPI等常见硬件接口的寄存器重映射与中断配置。典型应用场景包括工业控制设备的传感器驱动移植、消费电子产品的外设适配等。通过动态调试、ftrace跟踪等工具可有效解决版本兼容性问题,而DMA优化与线程化中断等技

weixin_42567497的博客 239

ARM架构Linux开发全攻略:从交叉编译到内核定制与实战应用

在计算架构演进中,ARM处理器凭借其精简指令集(RISC)设计,实现了卓越的能效比,成为移动和嵌入式领域的基石。其工作原理在于通过更简单的硬件逻辑降低功耗,这一特性在数据中心和边缘计算场景中价值凸显,能显著降低总拥有成本(TCO)。随着ARM生态的多样化,从服务器到物联网设备,Linux作为开源、高度可定制的操作系统,成为连接这些碎片化硬件的关键。其技术价值体现在通过工具链、内核编译和驱动适配,为特定硬件定制高效系统。在应用场景上,ARM Linux广泛服务于家庭服务器、边缘计算网关和定制化嵌入式产品。本文

anheku1562的博客 391

嵌入式Linux系统下perf性能调优实战指南

本文为嵌入式Linux开发者提供了一份详尽的perf性能调优实战指南。针对嵌入式开发中常见的性能瓶颈问题,文章重点介绍了如何通过交叉编译将perf工具移植到资源受限的嵌入式设备上,并详细讲解了从内核配置、编译部署到使用perf top、perf record等核心命令进行性能热点分析的完整流程。通过真实调优案例,展示了perf如何帮助定位CPU占用、内存访问及功耗问题,是嵌入式系统性能优化的必备工具。

weixin_29178069的博客 41

Linux驱动环境移植

设备树文件:arch/arm/boot/dts/stm32mp157a-fsmp1a.dtb。设备树文件:arch/arm/boot/dts/stm32mp157a-dk1.dtb。内核顶层目录下,更名为.config文件,当编译内核的时候会找.config的配置。将上述的内核拷贝到tftpboot目录,重启开发板,内核正常启动。所以只有移植Linux内核之后,才能使用文件管理,内存管理、内核文件: arch/arm/boot/uImage。内核文件: arch/arm/boot/uImage。

2301_79418773的博客 1052

嵌入式linux之iMX6ULL驱动开发 | 移远4G模块EC800驱动移植指南

回顾下移远4G模块移植过程, 还是蛮简单的。这里记录下过程,分享给有需要的人。环境使用正点原子的imax6ul开发板,板子默认支持中兴和移远EC20的驱动。这里想移植的是移远4G模块EC800。

猫哥 的沉淀、积累、总结。天天学习,好好向上...c/c++,嵌入式 linux,Android,HarmonyOS,AIOT) 8769
上一篇: git statsh、git submodule
下一篇: 网络测试工具——tcping
Is Fang
博客等级 码龄7年 764粉丝 · 152原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值