通信模組性能調優

通信模組性能調優

  • 1 背景
  • 2 高通平臺軟硬加速
    • 2.1 NSS
    • 2.2 SFE
    • 2.3 PPE
  • 3 CPU 負載均衡設置
    • 3.1 啟用內核 RPS&RFS 功能
    • 3.2 網卡隊列修改建議
    • 3.3 調整負載前后的 CPU 使用對比
    • 3.4 網卡中斷均衡
      • 3.4.1 netdev_max_backlog
      • 3.4.2 中斷綁核
    • 3.5 CPU性能模式
    • 3.6 熱管理
    • 3.7 調整接收發送緩存
  • 4 示例
    • 4.1 現狀
    • 4.2 調整措施

1 背景

通信模組會與Host搭配組成CPE/ODU/IDU等整機形態使用。在整機吞吐率測試中,經常會各種原因導致的速率不達標問題,下面是一些速率優化建議。

2 高通平臺軟硬加速

高通IPQ系列上位機,支持NSS\SFE\PPE等加速。不同型號支持的加速方式也是不同的,下面是幾種加速方式的介紹。

在這里插入圖片描述
在這里插入圖片描述

2.1 NSS

高通NSS(Networking Subsystem)是高通路由器平臺中用于網絡加速和數據處理的子系統,主要功能包括報文分類和硬件加速。
通過分類器(classifiers)判斷哪些報文需要加速,符合條件的報文直接在NSS中以L2轉發到目的端口,繞過Linux協議棧,降低CPU負載并提升傳輸效率。
通過NPU(Network Processing Unit)實現硬件級加速,與Linux協議棧并行處理數據包,顯著提升網絡吞吐量。 ?
在這里插入圖片描述
目前在IPQ807x、IPQ60XX和IPQ50xx上支持。

2.2 SFE

SFE(Shortcut Forwarding Engine)是高通推出的網絡加速技術,通過優化數據轉發路徑減少延遲并提升傳輸效率。早期版本與多線、流控等功能存在兼容性問題,后續通過代碼優化實現了與高恪固件的適配,支持多撥、智能流控等特性。開啟SFE后,設備性能可提升2-3倍(如K2P機型可達600Mbps),但部分功能(如無線限速、固定流控)可能受限。 ?

在這里插入圖片描述
目前在IPQ95xx和IPQ50xx上支持。

2.3 PPE

PPE(Packet Processing Engine)是一個用于轉發流量的硬件加速塊。
在這里插入圖片描述目前在IPQ95xx和IPQ53xx上支持。

3 CPU 負載均衡設置

3.1 啟用內核 RPS&RFS 功能

RPS 全稱是 Receive Packet Steering,在 2.6.35 進入 Linux 內核。這個 patch 采用軟件模擬的方式,實現了多隊列網卡所提供的功能,分散了在多 CPU 系統上數據接收時的負載,把軟中斷分到各個 CPU 處理,而不需要硬件支持,大大提高了網絡性能。

RFS 全稱是 Receive Flow Steering,它是用來配合 RPS 補丁使用的,是 RPS 補丁的擴展補丁,它把接收的數據包送達應用所在的 CPU 上,提高 cache 的命中率。

使用以下命令使能此功能,把 2 個網卡的負載分別調到 CPU3 和 CPU2 上:拆分 QMAP 包成單個IP 包 跑在 CPU3 上;提交 IP 包到內核協議棧 跑在 CPU2 上。PCIe 中斷保持不變,承載在 CPU0 上。

echo 32768 > /proc/sys/net/core/rps_sock_flow_entries 
echo 8 > /sys/class/net/pcie_mhi0/queues/rx-0/rps_cpus
echo 4096 > /sys/class/net/pcie_mhi0/queues/rx-0/rps_flow_cnt 
echo 4 > /sys/class/net/pcie_mhi0.1/queues/rx-0/rps_cpus
echo 4096 > /sys/class/net/pcie_mhi0.1/queues/rx-0/rps_flow_cnt

3.2 網卡隊列修改建議

如果PHY 支持多隊列處理,建議將每個網卡平均分布到各核心,以便減小最終用戶實際使用中的 CPU 負載情況。

如從圖中可以看出當前只使用了 eth3、pcie_mhi0、pcie_mhi0.1 三個網卡。

在這里插入圖片描述
eth3 RX 隊列負載平衡調整

echo 0 > /sys/class/net/eth3/queues/rx-0/rps_cpus
echo 4096 > /sys/class/net/eth3/queues/rx-0/rps_flow_cnt 
echo 2 > /sys/class/net/eth3/queues/rx-1/rps_cpus
echo 4096 > /sys/class/net/eth3/queues/rx-1/rps_flow_cnt 
echo 4 > /sys/class/net/eth3/queues/rx-2/rps_cpus
echo 4096 > /sys/class/net/eth3/queues/rx-3/rps_flow_cnt 
echo 8 > /sys/class/net/eth3/queues/rx-3/rps_cpus

eth3 TX 隊列負載平衡調整

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/923583.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/923583.shtml
英文地址,請注明出處:http://en.pswp.cn/news/923583.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

消息隊列kafka的事務特性

kafka的java客戶端producer也支持事務消息嗎?具體是啥事務呢? 是的,Kafka的Java客戶端Producer確實支持事務消息。讓我詳細解釋Kafka事務的概念和使用方法。 Kafka事務的主要特點: Producer Transactions:確保多個消息…

用Python實現自動化的Web測試(Selenium)

Python作為數據科學和自動化領域的主流語言,在網絡爬蟲開發中占據著重要地位。本文將全面介紹Python爬蟲的技術棧、實現方法和最佳實踐。爬蟲技術概述網絡爬蟲(Web Crawler)是一種按照特定規則自動抓取互聯網信息的程序。它可以自動化地瀏覽網…

「Memene 摸魚日報 2025.9.17」上海張江人工智能創新小鎮正式啟動,華為 DCP 技術獲網絡頂會獎項

theme: condensed-night-purple 以下內容包括「人工智能生成內容」 上海張江人工智能創新小鎮正式啟動,華為 DCP 技術獲網絡頂會獎項 👏在昨天(2025.9.16),AI領域有這些內容可能值得你關注: 上海張江人工智…

Vehiclehal的VehicleService.cpp

VehicleService.cpp 是 Android Automotive OS 中負責車輛相關功能的核心服務組件,主要處理車身信息獲取及狀態設置接口,通過 HIDL(Hardware Interface Definition Language)接口與系統框架層交互。 ?12核心功能VehicleService.c…

《LINUX系統編程》筆記p11

公共資源也稱為共享資源,是指可以被多個并發進程或線程共同訪問(讀取或寫入)的系統資源。臨界資源是公共資源的一個子集。特指那些一次僅允許一個進程或線程訪問的公共資源。如果一個進程正在使用它,其他試圖訪問該資源的進程必須…

spring-kafka消費異常處理

默認的消費異常處理 默認情況下,如果程序沒有顯式做任何的異常處理,spring-kafka會提供一個默認的DefaultErrorHandler, 它會使用FixedBackOff做重試,會不間斷的連續重試最多9次,也就是說一個消息最多會被消費10次。如果重試次數耗…

leecode73 矩陣置零

我的思路 這個題目不難,就是一句話,遍歷這個矩陣的時候,當遇到0的時候就把該行該列改為0,同時為了不影響后續的遍歷,我們可以將這個遍歷和修改分為兩個數組。使用mn的輔助空間 class Solution {public void setZeroe…

Spring Boot 與前端文件上傳跨域問題:Multipart、CORS 與網關配置

前言在前后端分離架構下,文件上傳是一個常見功能。但在 Spring Boot 項目中,我們經常會遇到前端調用接口上傳文件時出現 跨域問題,表現為:瀏覽器控制臺報錯:Access-Control-Allow-Origin 缺失或不匹配。使用 FormData …

快速解決云服務器的數據庫PhpMyAdmin登錄問題

打開PhpMyAdmin數據庫管理器登錄頁面賬號密碼就是你的用戶名(如YiXun)和密碼注意:root賬戶的密碼,點擊下面的“root密碼”即能看到或修改PhpMyAdmin無法打開如果打不開:在數據庫,點擊PHPMyAdmin&#xff0c…

vite+vue3中使用FFmpeg@0.12.15實現視頻編輯功能,不依賴SharedArrayBuffer!!!

FFmpeg0.12.15完全不依賴SharedArrayBuffer!!!強烈推薦使用 本文章主要是在vitevue3項目中使用FFmpeg,只展示了如何在項目中引入和基礎的使用 更多詳細參數可參照 ffmpeg官網https://ffmpeg.org/ 一、安裝FFmpeg 可通過npm直接安裝 npm install ffmpeg/core0.12.10…

構網型5MW中壓儲能變流升壓一體機技術方案

1 構網型儲能背景概述1.1 新型電力系統亟需構網支撐眾所周知,新型電力系統具有兩高特征:高比例新能源大規模并網、高比例電力電子大范圍接入。近年來風光裝機占比越來越高,而傳統火電裝機占比越來越低,并在2023年首次降至50%以下…

SRE 系列(七)| 從技術架構到團隊組織

目錄SRE落地與組織架構實踐技術架構與組織架構的匹配技術架構示例運維職責分工技術保障體系SRE 多角色團隊總結SRE落地與組織架構實踐 在落地 SRE 時,很多團隊最關心的問題之一就是組織架構:我們究竟需要怎樣的團隊形態,才能支撐微服務和分…

香港期權市場的主要參與者有哪些?

本文主要介紹香港期權市場的主要參與者有哪些?香港期權市場作為全球重要的金融衍生品市場,其參與者結構呈現多元化、專業化的特征,主要涵蓋以下核心群體。香港期權市場的主要參與者有哪些?1. 機構投資者(主導力量&…

搜維爾科技:全身可穿戴Teslasuit動捕服的功能,自立式FES裝置

功能性電刺激 (FES) 設備廣泛應用于康復和醫療實踐。其底層技術利用低能量電脈沖,在中風、脊髓損傷、多發性硬化癥、腦癱等各種疾病患者中人工產生身體運動。一般來說,FES系統可以分為三類:開環、有限狀態控制和閉環方法。這三種方法描述了 F…

【深度學習新浪潮】MoE是什么技術?

混合專家模型(Mixture of Experts,MoE)是大模型時代提升計算效率與模型能力的核心技術之一。其核心思想是將復雜任務分解為多個子任務,通過動態路由機制激活特定專家網絡處理輸入數據,從而在保持模型容量的同時大幅降低計算成本。以下是技術細節與實際應用的深度解析: 一…

Java進階教程,全面剖析Java多線程編程,實現Callable接口實現多線程,筆記05

Java進階教程,全面剖析Java多線程編程,實現Callable接口實現多線程,筆記05 參考資料 多線程&JUC-05-多線程的第三種實現方式一、實現Callable接口實現多線程 二、三種方式對比 優點缺點繼承Thread類編程比較簡單,可以直接使…

軌道交通絕緣監測—軌道交通安全的隱形防線

軌道交通絕緣監測作為保障行車安全的核心環節,正面臨多重技術與環境挑戰。復雜運營環境是首要痛點,隧道內高濕度(月均濕度達95%)會增大鋼軌表面電導率,霧氣中的鹽分更會加速扣件絕緣性能下降,導致過渡電阻驟…

tar-符號連接(軟連接)

1.符號連接是什么符號鏈接(symbolic link,也叫軟鏈接)本質上是一個 指向路徑的特殊文件。例如:ln -s /etc/passwd passwd_link這會創建一個叫 passwd_link 的文件,但它本身不存放 /etc/passwd 的內容,而是存…

ffmpeg切割音頻

ffmpeg切割音頻 我希望對指定音頻切割,按照開始時間,結束時間,切割成新文件,自動保存,非常好用 step1: from pydub import AudioSegment import os# 配置FFmpeg路徑(確保路徑正確) ffmpeg_path …

Python 批量處理:Markdown 與 HTML 格式相互轉換

文章目錄引言與同類工具的優勢對比Python 將 Markdown 轉換為 HTMLPython 將 HTML 轉換為 Markdown批量轉換與自動化處理引言 在多平臺內容分發與管理的場景中,文檔格式轉換已成為內容生態系統中的關鍵環節。Markdown 作為輕量級標記語言,以其語法簡潔、…