- 博客(17)
- 收藏
- 关注
原创 结合例子学习eBPF和bcc:更好的输出机制
Strace是一个跟踪系统调用和信号的工具,可以帮助您查看应用程序与操作系统之间的交互。是很有用的,因为两个结构体不会有相同的指针地址,所以相对而言能够减少重复的情况,只要我们能够做好指针释放和重新使用的管理。则是在磁盘请求结束时调用,负责计算每个请求的延时,并输出到用户态。整体的逻辑是没有什么太大的改变的,我们只需要修改输出的流程就可以了。性能的,它可以同时处理多个请求,从而提高了系统的吞吐量和响应速度。都是用于启动块设备请求的函数,但它们是在不同的。也一样,前者作为传统的路径,后者是新版本路径。
2023-08-23 20:26:37
209
原创 结合例子学eBPF和bcc:初探
ChatGPT说:sys_sync是一个系统调用,它将所有已修改的文件系统缓存数据写入磁盘,以确保数据的持久性。在调用sys_sync之后,文件系统缓存数据将与磁盘上的数据同步,因此在系统崩溃或意外断电等情况下,不会丢失数据。eBPF是一种内核技术,它允许用户在不修改内核源代码的情况下,通过一种安全的、可编程的方式来扩展内核功能。做太大的变更,只是对程序的写法做了更好的调整,从而能够让我们更好的开发。一定是需要用到的,看起来只要保存对应的数据就可以了,让我们试试吧。每次执行出现的时间,然后进行计算和提示。
2023-08-23 20:25:35
240
原创 Off-CPU火焰图:冰山下潜航的必备工具
Off-CPU可以帮助我们了解程序被阻塞的原因。wakeup火焰图可以帮助我们了解唤醒时的相关情况,尤其适用于有锁这样相互关联的场景。本文介绍了四种与Off-CPUI/O火焰图Off-CPU火焰图Wakeup火焰图调用图(它们分别适用于不同的场景,需要合理的进行使用。本文介绍了四种与Off-CPUI/O火焰图Off-CPU火焰图Wakeup火焰图调用图(它们分别适用于不同的场景,需要合理的进行使用。关注公众号:程栩的性能优化笔记,了解更多性能优化知识。
2023-08-02 21:20:03
573
1
原创 Off-CPU分析:窥见冰山下的性能瓶颈
追踪的优点是我们可以知道很精确的时间,但是缺点也很明显:如果我们追踪全部的进程,我们可以知道全部的信息,但是也会带来很高的负载从而影响性能;)事件是非常频繁的:在某些极端场景中,每秒钟会有上百万次切换事件,在这种情况中,即使每次追踪只会增加很小的负载,最终负载也会因为过多的切换事件而变得非常大。通过追踪我们可以知道函数开始和退出的时间,从而计算出函数执行的时间。的时间,也就是被阻塞的时间。来说,同样的时间增长会使得它的处理时间从35秒变成212秒,因为其需要处理大约六倍的追踪数据。这样我们就可以聚焦于。
2023-07-22 22:30:29
612
原创 Top-Down性能分析方法(原理篇):揭秘代码运行瓶颈
性能分析方法的思想是简单直白的:将CPU执行的时间进行划分,选择其中值得关注的部分进行聚焦。反映了短的执行饥饿周期或者执行端口利用率不佳,例如一个长延迟的除法操作可能会序列化执行,导致一个周期内只有少量的执行端口被使用。指令集中,因为指令的复杂性,可能会导致硬件执行关键路径过长而影响性能,所以会将指令先翻译成微指令,再去执行。处理前端的问题会有一些困难,因为它们出现在流水线的最开始,这些短暂的问题可能并不是导致问题的真正原因。在进行性能优化的时候,往往需要先去寻找性能瓶颈,这一部分决定了性能优化的效果。
2023-07-15 12:51:24
2286
1
原创 差分火焰图,让你的代码优化验证事半功倍
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。
2023-06-27 21:16:19
394
1
原创 一文了解perf script出现[unknown]的原因
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。今天我们来聊一聊perf的相关命令,更进一步的了解perf。本文是perf系列的第七篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-06-18 14:51:19
2003
原创 Linux内核内幕:深入解析进程的结束过程
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。
2023-05-11 21:49:25
279
原创 核心调用-perf_event_open
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。本文是perf系列的第六篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-20 22:50:50
864
原创 初入源码-perf设计文档
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。本文是perf系列的第五篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-18 21:00:33
554
原创 包罗万象-perf命令介绍
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。今天我们来聊一聊perf的相关命令,更进一步的了解perf。本文是perf系列的第四篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-14 12:50:43
1533
1
原创 源头活水-perf events介绍
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。今天我们接着聊perf,聊一聊perf数据的来源,或者说perf事件。本文是perf系列的第三篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-13 20:43:00
468
1
原创 一目了然-火焰图初探
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。今天我们来聊一聊火焰图,一个很经典的性能可视化工具。本文是perf系列的第二篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-13 20:42:26
687
1
原创 初初见你-性能分析工具perf
大家好,我是程栩,一个专注于性能的大厂程序员,分享包括但不限于计算机体系结构、性能优化、云原生的知识。今天我们来聊一聊perf,一个非常重要的Linux性能工具。本文是perf系列的第一篇文章,后续会继续介绍perf,包括用法、原理和相关的经典文章。
2023-04-13 20:41:51
974
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人