当前位置:首页 > 报告详情

SNIA-SDC23-Mazzie-Understanding-Applications-Through-NVMe_1.pdf

上传人: 2*** 编号:149003 2023-12-08 29页 1.31MB

1、1|2023 Micron Technology,Inc.All Rights Reserved.Virtual ConferenceSeptember 28-29,2021Understanding Applications Through NVMe Driver Tracing Using BPFJohn MazzieMember of Technical Staff,Systems Performance EngineerMicron Technology,Inc.2|2023 Micron Technology,Inc.All Rights Reserved.AgendaBPF and

2、 the NVMe DriverApplication Analysis:MLPerf Storage3|2021 Storage Developer Conference.Insert Company Name Here.All Rights Reserved.BPF and the NVMe Driver4|2023 Micron Technology,Inc.All Rights Reserved.BPF Overview4 Originally“Berkeley Packet Filter”Developed to analyze network traffic Integrated

3、with kernel Executes sandbox programs in kernel Used to trace,profile and monitor Utilizes a just-in-time compiler Verification Engine to protect kernel space Various features supported in different kernel versions Kernel 3.18 eBPF VM Kernel 5.5 BPF Trampoline support BPF stack(Kernel)is limited to

4、512 bytes Use maps to increase memory availability5|2023 Micron Technology,Inc.All Rights Reserved.Methods of Tracing Kernel/Drivers5 Tracepoints Stable interface Managed by developers over multiple kernel versions Limited to the data provided by tracepoint.Kprobes(Kernel Probes kprobe/kretprobe)Can

5、 attach/register probe to virtually any instruction.Attachment to none kernel methods/functions requires debug kernel.Can access data not directly provided.Unstable interface Kernel Functions are not stable across versions BPF Trampoline(kfunc/kretfunc and fentry/fexit)Interface is similar to kprobe

6、s Reduced overhead from kprobes Doesnt cause events to be missed due to interruption Requires kernel support(Added in mainline kernel 5.5)6|2023 Micron Technology,Inc.All Rights Reserved.Need6Original Multiple Tools Blktrace Used to analyze read/write pattern that was going to the device at the bloc

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了如何通过BPF(Berkeley Packet Filter)和NVMe驱动程序跟踪来分析应用程序。主要内容包括: 1. BPF概述:BPF最初是“Berkeley Packet Filter”,用于分析网络流量,现在被集成到内核中,可以在内核中执行沙盒程序,用于跟踪、分析和监控。 2. NVMe驱动程序跟踪方法:包括基于tracepoints、kprobes和BPF trampoline的方法。 3. NVMeTrace工具:用于收集NVMe驱动程序中的每个事务信息,如事务大小、开始时间、完成时间、延迟等。 4. MLPerf™ Storage基准测试:用于衡量存储性能,通过模拟真实AI训练过程,测试不同配置下的数据传输速度和队列深度。 5. 设备设置对I/O模式的影响:如最大数据传输大小(MDTS)和命名空间最佳写入大小(NOWS)等设置,会影响I/O模式和性能。 6. 未来改进:包括文件访问跟踪、应用程序进程跟踪和分析改进等。
如何使用BPF进行NVMe驱动程序跟踪? MLPerf™存储基准测试如何评估存储性能? 如何通过调整设备设置优化I/O模式?
客服
商务合作
小程序
服务号
折叠