- Linux mnfe-pve 6.2.16-12-pve #1 SMP PREEMPT_DYNAMIC PMX 6.2.16-12 (2023-09-04T13:21Z) x86_64 GNU/Linux
- Intel Xeon E5-2697 v2 (48) @ 3.500GH
- Debian GNU/Linux 12 (bookworm)
- bpftime-llvm,bpftime 中所包含的基于 LLVM JIT 的 ebpf 运行时
- bpftime-ubpf,基于ubpf的支持JIT的ebpf运行时
- bpftime-rbpf,基于rbpf的支持JIT的ebpf运行时
- native程序
- 对8192个64位整数计算以2为底的对数。主要用于测试运行时的整数计算性能。此算法在一些bcc提供的例子中用到。
在这个测试中,LLVM JIT、ubpf、native效率接近,且都比ubpf要快。
- 简单实现的strcmp,分别对应中途比较失败和两个字符串完全匹配的情况。用以测试运行时的内存读取和条件分支的性能。
![img](example-output/strcmp match.execution.png)
- 可以看到,LLVM JIT、native、ubpf效率接近,且远快于rbpf。