<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          LWN:各種BPF實現(xiàn)的性能對比!

          共 1542字,需瀏覽 4分鐘

           ·

          2024-06-17 13:38

          關(guān)注了就能看到更多這么棒的文章哦~

          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 存儲、文件系統(tǒng)、內(nèi)存管理和 BPF 峰會 上進(jìn)行了第二場遠(yuǎn)程演講,在其中比較了不同 BPF 運行時的性能。他展示了 MIT 許可的 BPF 微基準(zhǔn)測試套件 的結(jié)果,他一直在開發(fā)這個套件。該基準(zhǔn)測試套件尚未提供所有平臺之間良好的直接比較,因此結(jié)果應(yīng)該謹(jǐn)慎對待。它們似乎表明,不同實現(xiàn)之間存在一些顯著差異,尤其是對于不同類型的 BPF 映射(maps)。

          這些基準(zhǔn)測試測量了一些不同的指標(biāo),包括實際執(zhí)行各種測試程序所花費的時間,以及從內(nèi)核切換到 BPF 虛擬機的開銷,以及調(diào)用輔助函數(shù)的性能。Jowett 說,以平臺中立、可重復(fù)的方式測量這些指標(biāo)非常重要。該基準(zhǔn)測試套件使用 libbpf 加載 BPF 程序,libbpf 使用“編譯一次,隨處運行”(CO-RE)在不同的支持平臺上運行相同的 ELF 文件。

          基準(zhǔn)測試套件中包含了幾種不同類型的 BPF 程序,包括一個空(無操作)程序、一些執(zhí)行各種輔助函數(shù)的程序,以及測試 BPF 映射性能的程序,包括 trie 和哈希表映射。在多個 CPU 內(nèi)核上并行進(jìn)行測量,以使測試并發(fā)映射的性能更有意義。

          eBPF for Windows 項目使用基準(zhǔn)測試套件作為其日常持續(xù)集成 (CI) 設(shè)置的一部分,以跟蹤性能回歸。CI 還在 Linux 上運行相同的測試,但他表示,由于基礎(chǔ)設(shè)施問題,這些測試不能很好地進(jìn)行比較——CI 使用的 GitHub 運行程序無法指定特定的 Linux 內(nèi)核版本。他還指出,由于 Windows 使用 BPF 的提前編譯 (AOT),而不是像 Linux 那樣使用即時編譯 (JIT),因此會存在一些差異。

          盡管如此,Jowett 認(rèn)為,從這些基準(zhǔn)測試中可以吸取一些有價值的經(jīng)驗教訓(xùn)。他說,AOT 編譯的性能優(yōu)于 JIT 編譯,JIT 編譯的性能又優(yōu)于解釋執(zhí)行。Alexei Starovoitov 對此說法提出了質(zhì)疑;他說,在 Windows 上測試的 JIT(鑒于 Linux 基礎(chǔ)設(shè)施問題,這是 Jowett 進(jìn)行比較的依據(jù))相當(dāng)笨拙,不足以對 Linux 的 JIT 做出概括。Jowett 承認(rèn)了這一點,并指出了 Windows JIT 無法改進(jìn)的一些方法。

          Jowett 還展示了一些測量結(jié)果,證明最長前綴匹配 trie 映射的更新速度比哈希表更快,并且 Windows 在匹配 Linux 的 最近最少使用 (LRU) 表 的性能方面遇到了困難。他指出,維護表中鍵的年齡的全局一致性“代價高昂”。

          然而,由于 Jowett 在測量 Linux 性能方面遇到的困難,因此很難說 eBPF for Windows 和 Linux BPF 實現(xiàn)的比較情況如何。也許當(dāng)這個問題得到解決時,這項工作將成為一個有用的工具,可以突出潛在的性能改進(jìn)。

          全文完
          LWN 文章遵循 CC BY-SA 4.0 許可協(xié)議。

          歡迎分享、轉(zhuǎn)載及基于現(xiàn)有協(xié)議再創(chuàng)作~

          長按下面二維碼關(guān)注,關(guān)注 LWN 深度文章以及開源社區(qū)的各種新近言論~



          瀏覽 68
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日本熟妇在线 | 大胆日韩成人黄色电影在线观看 | www.性欧美 | 日韩三级视频在线观看 | 爱爱的网址 |