LWN:各种BPF实现的性能对比!

关注了就能看到更多这么棒的文章哦~

Comparing BPF performance between implementations

By Daroc Alden
June 5, 2024
LSFMM+BPF
Gemini-1.5-flash translation
https://lwn.net/Articles/976317/

Alan Jowett 在 2024 年的 Linux 存储、文件系统、内存管理和 BPF 峰会 上进行了第二场远程演讲,在其中比较了不同 BPF 运行时的性能。他展示了 MIT 许可的 BPF 微基准测试套件 的结果,他一直在开发这个套件。该基准测试套件尚未提供所有平台之间良好的直接比较,因此结果应该谨慎对待。它们似乎表明,不同实现之间存在一些显著差异,尤其是对于不同类型的 BPF 映射(maps)。

这些基准测试测量了一些不同的指标,包括实际执行各种测试程序所花费的时间,以及从内核切换到 BPF 虚拟机的开销,以及调用辅助函数的性能。Jowett 说,以平台中立、可重复的方式测量这些指标非常重要。该基准测试套件使用 libbpf 加载 BPF 程序,libbpf 使用“编译一次,随处运行”(CO-RE)在不同的支持平台上运行相同的 ELF 文件。

基准测试套件中包含了几种不同类型的 BPF 程序,包括一个空(无操作)程序、一些执行各种辅助函数的程序,以及测试 BPF 映射性能的程序,包括 trie 和哈希表映射。在多个 CPU 内核上并行进行测量,以使测试并发映射的性能更有意义。

eBPF for Windows 项目使用基准测试套件作为其日常持续集成 (CI) 设置的一部分,以跟踪性能回归。CI 还在 Linux 上运行相同的测试,但他表示,由于基础设施问题,这些测试不能很好地进行比较——CI 使用的 GitHub 运行程序无法指定特定的 Linux 内核版本。他还指出,由于 Windows 使用 BPF 的提前编译 (AOT),而不是像 Linux 那样使用即时编译 (JIT),因此会存在一些差异。

尽管如此,Jowett 认为,从这些基准测试中可以吸取一些有价值的经验教训。他说,AOT 编译的性能优于 JIT 编译,JIT 编译的性能又优于解释执行。Alexei Starovoitov 对此说法提出了质疑;他说,在 Windows 上测试的 JIT(鉴于 Linux 基础设施问题,这是 Jowett 进行比较的依据)相当笨拙,不足以对 Linux 的 JIT 做出概括。Jowett 承认了这一点,并指出了 Windows JIT 无法改进的一些方法。

Jowett 还展示了一些测量结果,证明最长前缀匹配 trie 映射的更新速度比哈希表更快,并且 Windows 在匹配 Linux 的 最近最少使用 (LRU) 表 的性能方面遇到了困难。他指出,维护表中键的年龄的全局一致性“代价高昂”。

然而,由于 Jowett 在测量 Linux 性能方面遇到的困难,因此很难说 eBPF for Windows 和 Linux BPF 实现的比较情况如何。也许当这个问题得到解决时,这项工作将成为一个有用的工具,可以突出潜在的性能改进。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~

294039d5e51d6e962e04d42821b54b71.jpeg

内容概要:本文系统介绍了Ćuk转换器的工作原理及其在Simulink环境下的建模与仿真实现方法,重点阐述了该转换器如何实现输入直流电压到极性相反的输出直流电压的能量转换。内容涵盖电路拓扑结构、工作模式分析(连续导通模式与断续导通模式)、关键元器件(如电感、电容、开关管和二极管)的参数设计原则,以及仿真模型的构建步骤与动态响应特性分析,深入揭示其能量传递机制和电压反转特性。此外,文档还整合了多个科研方向的Matlab/Simulink代码实现案例,涉及智能优化算法、机器学习、电力系统优化、信号处理、路径规划、通信技术等多个领域,充分展示了仿真工具在现代科研中的广泛应用价值和技术交叉潜力。; 适合人群:电气工程、自动化、控制科学与工程、电力电子及相关专业的本科生、研究生、科研人员及工程技术人员,尤其适合具备电路理论基础和一定Matlab/Simulink操作经验的学习者; 使用场景及目标:①用于深入理解Ćuk转换器的拓扑结构与工作机理,掌握其建模与仿真方法;②作为电力电子课程教学或科研项目的实践参考;③结合文中丰富的跨学科科研案例,拓展研究视野,辅助论文复现与创新课题设计; 阅读建议:此资源以仿真实践为核心导向,建议读者在学习过程中同步搭建并调试Simulink模型,细致观察系统参数变化对输出性能的影响,并积极借鉴其他科研方向的技术路线,推动多领域融合创新研究。
内容概要:本文提出了一种基于粒子群优化算法(PSO)的求解方法,用于解决包含风能、光伏、柴油发电机及储能系统的综合能源系统容量优化配置问题,并充分引入需求响应机制以提升系统运行的灵活性与经济性。通过构建兼顾经济性、可靠性和可再生能源利用率的多目标优化模型,利用Matlab进行仿真求解,获得各类电源与储能设备的最优容量组合方案。该方法能够有效降低系统全生命周期成本,提高能源自给率与资源利用效率,适用于微电网、离网系统及混合供电系统的规划与设计。文中提供的Matlab代码实现了完整的建模、优化与结果分析流程,具有较强的可复现性与工程参考价值。; 适合人群:从事新能源系统规划、电力系统优化、微电网设计等领域的科研人员、工程技术人员及电气工程、能源动力类专业的研究生;需具备一定的Matlab编程能力、优化理论基础及对分布式能源系统的基本认知。; 使用场景及目标:①解决风光柴储多能互补系统的容量配置优化问题;②研究需求响应策略对系统运行经济性与稳定性的影响;③为实际微电网项目提供技术方案比选与决策支持;④作为智能优化算法在能源系统中应用的教学案例。; 阅读建议:建议结合Matlab代码深入理解目标函数设计、约束条件建模及PSO算法参数设置等关键环节,重点关注需求响应模型的数学表达与求解过程,可进一步拓展至其他智能算法(如GA、GWO、HLOA等)的对比分析与算法改进研究。
标题大学健身场所管理系统的设计与开发研究AI更换标题第1章引言介绍大学健身场所管理系统的研究背景、意义、国内外研究现状、论文方法及创新点。1.1研究背景与意义分析大学健身场所管理现状及开发管理系统的必要性。1.2国内外研究现状综述国内外健身场所管理系统的研究进展及存在的问题。1.3研究方法以及创新点概述本文采用的系统设计方法及主要创新点。第2章相关理论总结健身场所管理系统设计的相关理论,为系统开发提供理论基础。2.1系统设计理论介绍系统设计的基本原则、方法和流程。2.2数据库管理理论阐述数据库设计、管理和优化的基本理论。2.3软件开发理论介绍软件开发模型、生命周期及项目管理理论。第3章大学健身场所管理系统需求分析详细分析大学健身场所管理系统的功能需求和非功能需求。3.1功能需求分析列举系统应具备的各项功能,如用户管理、课程预约等。3.2非功能需求分析分析系统的性能、安全性、易用性等非功能需求。3.3用户需求调研介绍通过问卷调查、访谈等方式收集的用户需求。第4章大学健身场所管理系统设计详细介绍大学健身场所管理系统的设计过程,包括架构、数据库和界面设计。4.1系统架构设计给出系统的整体架构,包括前端、后端和数据库的连接方式。4.2数据库设计设计系统的数据库结构,包括表结构、字段和关系等。4.3界面设计设计系统的用户界面,包括布局、色彩和交互方式等。第5章大学健身场所管理系统实现与测试阐述系统的实现过程和测试方法,确保系统满足设计要求。5.1系统实现技术介绍系统开发所采用的技术栈和工具。5.2系统实现过程详细描述系统的编码、调试和集成过程。5.3系统测试方法介绍系统的测试方法,包括单元测试、集成测试和用户测试等。第6章结论与展望总结大学健身场所管理系统的设计与开发成果,并提出未来研究方向。6.1研究结论概括系统的主要功能、性能和创新点。6.2展望指出系统存在的不足及未来改进的方向
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值