博客

  • CWDP 認證介紹

    CWDP 認證介紹
    CWDP-305認證無線設計專業人員 (CWDP) 擁有管理所需的知識和技能,Wi-Fi WLAN設計生命週期中的任何步驟:定義、設計、確保正確部署,驗證和優化。 CWDP 可參與或負責該框架內的任何或所有階段過程。
    CWDP-305考試衡量的技能和知識源自於工作任務分析 (JTA)涉及無線網路專家(CWNE)和專業人士。該 JTA 的結果用於衡量各主題領域的權重,並確保權重能反映出各個主題領域的相對重要性內容。

    當您通過 CWDP 考試並持有有效的 CWNA 認證時,您將獲得 CWDP 認證,並且滿足 CWNE 認證的要求之一。
    CWDP 考試概要:
    考試編號:CWDP-305
    費用:349.99 美元 -考試券
    可用性:Prometric 測試中心
    時長:90分鐘
    問題:60 題選擇題
    語言:英語

    知識領域百分比
    定義 WLAN 的規範 25%
    設計 WLAN 40%
    部署 WLAN 10%
    驗證並優化 WLAN 25%

  • 思科 Firepower 和 ASA 的区别

     Luke 网工笔记本

    總結
    Cisco FTD 與 ASA 皆為思科核心安全產品,定位與功能差異顯著。
    FTD 為新一代防火牆,整合防火牆、IPS、惡意軟體防護及 URL 過濾,透過 Firepower 管理中心(FMC)實現統一管理,支援雲端/本地部署,適合複雜企業環境。
    ASA 為傳統防火牆,專注狀態化偵測、VPN 及基礎威脅防禦,依賴 ASDM/CLI 管理,部署彈性較低,適用於中小規模場景。
    FTD 在擴展性、威脅覆蓋及集中管控上優勢明顯,而 ASA 以操作簡易性和成本效益見長。
    企業可依安全需求複雜度與規模選擇適配方案。
    1. 產品概述Cisco Firepower 威脅防禦(FTD)
    • 定位:新一代威脅防禦平台,整合防火牆、IPS、進階惡意軟體防護於一體
    • 核心功能:
    • 提供攻擊全生命週期防護(預防→偵測→反應)
    • 支援多區域/多租用戶架構,帶外網路分段保護資料安全
    • 整合 URL 過濾、裝置控制等擴充能力
    • 硬體支援:Firepower 1000/2100/4100/9000 系列、ASA 5506/8-X 等人 • 管理方式:**Firepower 管理中心(FMC)**統一管理,支援雲端/本地部署Cisco 自適應安全設備(ASA)
    • 定位:傳統防火牆,整合防火牆、VPN、IPS 功能
    • 核心功能:
    • 狀態化防火牆檢查(L3-L4)
    • 即時威脅偵測與阻斷,支援有線與無線網路防護
    • 提供強加密與多因素認證
    • 硬體支援:ASA 5500-X/5585-X 系列
    • 管理方式:ASDM 圖形介面或 CLI 命令列

    3. 補充技術細節
    •版本管理:FTD 需透過 FMC 升級,且 FMC 版本需 ≥ FTD 版本
    •混合部署:FTD 可運作於 ISR 路由器 UCS E 系列刀鋒伺服器
    •安全建議:定期更新修補程式(參考 CVE-2024-20481 漏洞修復方案)

  • Deepseek 30個餵飯指令

    Deepseek 30個餵飯指令
    一、內容創作類(5條)
    1.爆款標題生成
    -指令:產生10個吸引眼球的[主題]標題,要求包含數字、情緒詞和懸念
    例:輸入”產生10個關於減肥的爆款標題”
    2.小​​紅書種草文
    -指令:以[身份]的口吻,寫一篇[產品]的種草筆記,突出3個使用場景和2個痛點解決方案
    3.短視訊腳本
    -指令:產生一個[時長]的短視頻腳本,包含開場懸念+中間反轉+結尾行動號召
    4. 具 號長文
    -指示:以[風格]寫一篇關於[主題]的深度文章,包含3個分論點,每個論點配1個案例
    5.SEO優化文章
    -指令:圍繞關鍵字[XXX1寫一篇1000字文章,密度3%,包含H2/H3標籤

    二、電商營運類(5條)
    6.產品描述優化
    指令:為[產品]寫一段吸引人的描述,突顯3個賣點,包含1個使用場景
    7.亞馬遜評論分析
    -指示:分析以下評論數據,總結出3個用戶痛點和2個改進建議
    8.客服話術生成
    -指令:針對[問題],產生5條專業且友善的客服回話術
    9.促銷郵件撰寫
    -指示:寫一封[節日]促銷郵件,包含限時優惠、緊迫感和行動號召
    10.競品分析報告
    指令:對比[產品A]和[產品B],列出3個優勢、2個劣勢和1個差異化建議

    三、知識付費類(5條)
    11.課程大綱設計
    指令:設計一門[主題]的21天入門課程大綱,包含每天的學習目標和作業
    12.電子書章節生成
    -指令:以[風格]寫一篇關於[主題]的電子書章節,包含3個案例和1個行動指南
    13.直播腳本撰寫
    -指令:產生一場[時長]的直播腳本,包含開場互動、乾貨分享和促銷環節
    14.社群營運話術
    -指示:為[主題]社群設計7天啟動話術,包含歡迎語、每日話題和互動遊戲
    15.知識星球內容
    -指令:產生一篇[主題]的星球日更內容,包含1個乾貨點+1個互動問題

    四、資料分析類(5條)
    16.銷售數據洞察
    -指示:分析以下銷售數據,找出3個成長機會和2個潛在風險
    17.用戶畫像生成
    -指令:根據以下行為數據,產生[產品]的目標使用者畫像包含3個特徵
    18.市場趨勢預測
    指令:基於[產業]最新數據,預測未來6個月的3個趨勢
    19.財務報表解讀
    -指示:用通俗語言解讀以下財務報表,指出2個關鍵問題和1個改進建議
    20.競品定價策略
    指示:分析[競品]的定價策略,給3個最佳化建議

    五、程式開發類(5條)
    21.程式碼註解生成
    指令:為以下程式碼新增詳細註釋,解釋每段功能
    22.Bug修復建議
    -指令:分析以下程式碼錯誤,給3個修復方案
    23.API文檔生成
    指令:為以下函數產生標準的API文檔,包含參數說明和範例
    24.演算法最佳化建議
    -指令:優化以下演算法,使其時間複雜度降到O(n)
    25.自動化腳本編寫
    -指令:寫一個Python腳本,實現[功能]自動化

    六、生活效率類(5條)
    26.旅行計畫生成
    -指示:設計一份[地點]的7天旅行計劃,包含景點、美食和交通建議
    27.健身計劃定制
    -指示:為我制定一份21天減脂計劃,包含飲食和運動安排
    28.時間管理方案
    指示:根據我的行程表,優化時間分配,提升工作效率
    29.理財規劃建議
    指示:基於我的收入和支出,制定年度理財計劃
    30.學習路徑設計
    -指令:為我設計一份[技能]的3個月學習路徑,包含每週目標

  • 2024 年的 Python:比以往更快、更強大、更受歡迎

    为开发者服务的 21CTO

    導讀:對 Python 來說,2024年是飛躍的一年,速度更快,冗餘更少,用戶群越來越龐大且不斷成長。在 2024 年,Python 一次又一次地證明了為什麼它是目前最受歡迎、最有用、最有前途的程式語言之一。
    該語言的最新版本在速度和功能方面進一步突破了極限,擺脫了 Python 的許多最陳舊的元素,並擴大了其對全球開發人員的吸引力。
    下面讓我們回顧一下 Python 的這一年。
    Python 3.13 引入了「無 GIL」構建
    今年最大的新聞是,核心 Python 開發團隊朝著克服 Python 長期存在的缺陷之一邁出了重要一步:移除全域解釋器鎖或“GIL”,GIL是一種管理解釋器狀態的機制。 GIL 可防止 Python 程式中跨執行緒的資料損壞,但代價是執行緒對於 CPU 密集型工作幾乎毫無用處。
    多年來,各種試圖移除 GIL 的嘗試均以失敗告終,因為它們使單線程 Python 程式的效能大大降低。但是,最新的無 GIL 專案在解決這個問題上取得了很大進展,而且足以讓一般使用者試用。
    但是,無 GIL 或「自由執行緒」版本仍被視為實驗性的,目前還不應該將它部署到生產環境中。 Python 官方團隊希望在為無 GIL 版本開綠燈之前,盡可能減輕單線程效能影響以及其它產生的任何問題。這些版本的早期跡象令人鼓舞,相信在2025年會更進一步。
    Python 3.13 中引入的另一個前瞻性功能是實驗性的即時編譯器(JIT)。它透過在運行時為某些操作產生機器碼來擴展,為解釋器加速所做的最大努力。目前,加速效果有效果,還不是那麼大的明顯(對於大多數程式有 5%的增益),但未來版本的 Python 將進一步擴展 JIT 的功能,使其產生實際的回報。
    我們與 Python 的「沒電的電池」告別
    說起來,Python 語言已經存在三十多年了,多年來累積了不少垃圾。其中一些垃圾包括標準庫模組,這些模組已經過時或不再積極維護。由於 Python 被描述為「自帶電池」的語言,這些老化的模組被人稱為「壞電池」。
    在過去的幾個 Python 版本中,許多失效的電池已被棄用並標記為要移除。
    在 Python 3.13 中,它們現在已經完全消失。
    這是將 Python 從其遺留根源中解放出來的一步。但在某些情況下,移除這些電池會破壞仍在使用的其他東西。好消息是,失效的和消失的東西可以而且應該被替換,而且替換通常情況並不難。
    Python 受歡迎程度仍位居榜首
    在過去的十年中,Python 在軟體開發領域中得到了廣泛的應用,但 2024 年是迄今為止最大的勝利。
    2024 年, Python在 TIOBE 程式語言排行榜中的佔比攀升至 18% ,此排行榜指數用來衡量一種程式語言的使用範圍。

    唯一達到這數字的程式語言是2015年的 Java,它也是預期的年度程式語言。
    現在,Python 在 GitHub 上的使用範圍比 JavaScript 語言更廣泛。最後的變化可以歸功於 Python 在平台上託管的人工智慧、機器學習和資料科學應用程式程式碼中的核心作用。
    Python也被公認為「三大」程式語言之一。
    在過去的三十年中,企業對 Python、Java 和 JavaScript 的依賴程度超過了其他語言。
    JavaScript仍然是在瀏覽器中執行操作的最受支援的方式,而 Java 程式碼則為企業運行大量業務邏輯和基礎軟體架構。
    除了成為 AI、機器學習和資料科學(現在所有關鍵業務功能)的首選平台之外,Python 的一大優勢在於它的多功能性。
    它實際上幾乎是所有事物的預備型語言,也是幾乎所有事物中最方便、最快捷的語言。

  • Fortinet FCSS_SASE_AD-24 FortiSASE 管理員認證

    考試科目: FCSS_SASE_AD-24 FortiSASE 管理員認證
    FCSS_SASE_AD-24考試是 Fortinet 認證解決方案專家-安全存取服務邊緣認證課程的一部分。此認證證明您設計、管理、監控和排除 Fortinet SASE 解決方案故障的能力。

    FCSS – FortiSASE 24 管理員考試評估您對 FortiSASE 解決方案的知識和專業技能。
    此考試測試您對 FortiSASE 配置和操作的應用知識,包括操作場景、事件分析、與支援產品的整合以及故障排除場景。

    FCSS – FortiSASE 24 管理員考試是為負責以下事項的網路和安全專業人員而設:
    在 Fortinet SASE 解決方案中設計、部署、維護和分析日誌。
    考試詳細信息
    考試名稱 FCSS – FortiSASE 24 管理員
    考試系列 FCSS_SASE_AD-24
    允許時間 60 分鐘
    考試題目 30 題選擇題
    評分通過或失敗。您可以從 Pearson VUE 帳戶取得分數報告。
    語言 英語、日語
    產品版本 FortiSASE 24、FortiOS 7.4、FortiAuthenticator 6.5、FortiClient 7.0 及更高版本
    考試主題
    成功的候選人已在以下領域和任務中運用了知識和技能:
    1.SASE架構及元件
    2.在混合網路中整合 FortiSASE
    3.識別 FortiSASE 組件
    4.建置FortiSASE部署案例
    5.SASE部署
    6.實施各種類型的使用者引導方法
    7.配置 SASE 管理設定
    8.配置並套用安全態勢檢查和合規性規則
    9.SIA、SSA 和 SPA
    10.設計安全性設定檔來執行內容檢查
    11.使用 FortiSASE 部署 SD-WAN
    12.使用 SASE 部署 ZTNA
    13.分析
    14.使用 FortiSASE 流量日誌識別潛在的安全威脅
    15.配置儀表板和日誌設定
    16.分析用戶流量和安全問題報告

  • Fortinet FCP – FortiMail 7.4 Administrator:FCP_FML_AD-7.4

    Fortinet FCP – FortiMail 7.4 Administrator
    考試詳情
    考試名稱:FCP – FortiMail 7.4 管理員
    考試系列:FCP_FML_AD-7.4
    允許時間:65 分鐘
    考試題:34 選擇題
    得分:通過或失敗。您可以從您的 Pearson VUE 帳戶取得成績報告。
    語言:英語、日語
    產品版本:FortiMail 7.4
    考試内容主題
    l 初始部署和基本配置
    l 描述 SMTP 和電子郵件流程的基礎知識
    l 完成FortiMail運行模式、系統設定、保護域的基本設置
    l 部署FortiMail高可用集群
    l 電子郵件流程與身分驗證
    l 在FortiMail上啟用並符合身份驗證
    l 設定安全MTA功能
    l 設定和追蹤存取控制規則、IP策略和收件者策略
    l 郵件安全
    l 設定基於會話的電子郵件過濾
    l 設定和管理垃圾郵件過濾技術
    l 設定惡意軟體偵測和進階持續性威脅緩解
    l 設定基於內容的電子郵件過濾和歸檔
    l 加密
    l 設定傳統SMTP加密方式
    l 設定基於身分的加密(IBE)
    l 管理IBE用戶
    l 伺服器模式和透明模式
    l 設定與管理伺服器模式功能
    l 以透明模式部署FortiMailc

  • TypeScript、Rust 和 Python 是 2024 年最有前景的語言

    为开发者服务的 21CTO導讀:今年還有半個月即將過去,哪些語言經過數據總結是有前景的語言。近日,JetBrains 發布了其年度開發者生態系統狀況報告,其重點介紹了軟體開發領域的趨勢。
    今年的報告新增了一個名為「語言前景指數」的部分,該指數根據增長、穩定性和採用意願對語言進行排名。自 2017 年以來,JavaScript 一直高居榜首,61% 的使用者使用該語言進行程式設計。 「一旦開發人員選擇了一個生態系統,他們通常就不會計劃採用任何其他技術或工具集。通常情況下,人們傾向於選擇他們喜歡的東西並堅持他們所了解的東西,」JetBrains 在報告中如此寫道。但是,TypeScript、Rust 和 Python 也呈現逐年成長的趨勢。該公司表示,這反映了它們在不同領域的多功能性和吸引力。其中,TypeScript 的使用率從2017 年的12% 增加到2024 年的37%;Python 的使用率從2017 年的32% 成長到2024 年的57%;而Rust 的使用率從2018 年的2% 成長到2024 年的11%。據 JetBrains 介紹,TypeScript 相對於 JavaScript 的優點包括開發過程中的早期錯誤偵測、提高程式碼品質以及更容易的長期維護、編譯時錯誤擷取、不易出錯的重構以及對 ES6 模組的原生支援等。

     

    該項報告還研究了人工智慧在軟體開發中的整體使用情況。數據發現近 80% 的公司允許使用第三方人工智慧工具或沒有正式限制。該公司指出,這顯示人們對人工智慧的接受度正在提高。此項調查還發現,18%的開發人員已經開始將AI功能整合到自己的產品線中。開發人員體驗也越來越受到關注,28%的受訪者表示他們同時衡量開發人員的生產力與開發人員體驗。大多數開發者(67%)表示,團隊領導應負責開發人員的生產力和開發人員體驗,而17% 的人認為應該有一個平台工程團隊負責此事,16% 的人認為應該有其他專門的專家或團隊。 JetBrains 如此寫道:「由於開發人員體驗與軟體開發交付的有效性密切相關,因此這個主題最近越來越受到關注。各公司正在加強評估DevEx 和開發人員的生產力,旨在更好地了解影響它們的因素。 Kotlin 和Rust是目前北美市場薪酬最高的程式語言桌面開發仍然比行動開發更為常見。

  • 從GPU虛擬化到池化

    【摘要】隨著大模型的興起,GPU算力的需求越來越多,而當前現實狀況使企業往往受限於有限的GPU卡資源,即便進行了虛擬化,往往也難以充分使用GPU卡資源或持續使用資源。為解決GPU算力資源不均衡等問題,同時支援GPU算力的國產化替代,提升GPU資源的使用率,GPU算力池化需求迫在眉睫。
    本文分享了GPU設備虛擬化的幾種路線、GPU虛擬化與共享方案以及GPU算力池化雲端原生實作。
    【作者】汪照輝,中國銀河證券架構師,專注於容器雲、微服務、DevOps、資料治理、數位轉型等領域,對相關技術有獨特的理解與見解。擅長於軟體規劃和設計,提出的「平台融合」的觀點越來越被認同和事實證明。發表了許多技術文章探討容器平台建置、微服務技術、DevOps、數位轉型、資料治理、中台建置等內容,受到了廣泛關注與肯定。

    智慧化應用如人臉辨識、語音辨識、文字辨識、智慧推薦、智慧客服、智慧風控等已廣泛應用於各行各業,這些應用被稱為判定式AI的範疇,通常和特定的業務場景相綁定,因此在使用GPU(Graphics Processing Unit)卡的時候也通常各自獨立,未考慮業務間GPU共享能力,至多實現vGPU虛擬化切分,從而一張實體GPU卡虛擬出多張vGPU,可以運行多個判定式AI 應用。隨著大模型的興起,對GPU算力的需求越來越多,而當前現實情況使企業往往受限於有限的GPU卡資源,難以支撐眾多的業務需求,同時由於業務特性等,即便進行了虛擬化,往往難以充分使用GPU卡資源或持續使用資源,因此也造成有限的卡片資源也無法有效利用。
    從GPU虛擬化需求到池化需求智慧化應用數量的成長對GPU算力資源的需求越來越多。 NVIDIA雖然提供了GPU虛擬化和多GPU執行個體切分方案等,但仍無法滿足自由定義虛擬GPU和整個企業GPU資源的共享重複使用需求。 TensorFlow、Pytorch等智慧化應用框架開發的應用往往獨佔一張GPU整卡(AntMan框架是為共享的形式設計的),從而使GPU卡短缺,另一方面,大部分應用卻只使用卡的一小部分資源,例如身分證辨識、票據辨識、語音辨識、投研分析等推理場景,這些場景GPU卡的使用率都比較低,沒有業務請求時利用率甚至是0%,有算力卻受限於卡的有限數量。

    單一推理場景佔用一張卡片造成很大浪費,和卡片數量不足形成矛盾,因此,算力切分是目前許多場景的基本需求。再者,往往受限於組織架構等因素,GPU由各團隊自行採購使用,算力資源形成孤島,分佈不均衡,有的團隊GPU資源空閒,有團隊無卡可用。為解決GPU算力資源不均衡等問題,同時支援GPU算力的國產化替代,協調線上和離線資源需求、業務高峰和低峰值資源需求、訓練和推理、以及開發、測試、生產環境對資源需求不同,實現算力的統一管理與調度重複使用,實現GPU資源的切分、聚合、超分、遠端呼叫、應用熱遷移等能力,提升GPU資源的利用率,GPU算力池化需求迫在眉睫。
    GPU設備虛擬化路線GPU設備虛擬化有幾個可行方案。

    首先是PCIe直通模式(PCIe Pass-through技術,pGPU),也就是將實體主機上的整塊GPU卡直通掛載到虛擬機器上使用。但這種方式是獨佔模式,GPU卡沒有虛擬化切分,並不能解決多個應用運行在一張卡上的問題,因此意義不是很大。

    第二是採用SR-IOV技術,讓一個PCIe設備在多個虛擬機器之間共享,同時保持較高效能。透過SR-IOV在實體GPU設備上創建多個虛擬vGPU來實現的,每個虛擬vGPU可以被分配到一個虛擬機,讓虛擬機直接存取和控制這些虛擬功能,從而實現高效的I/O虛擬化。 NVIDIA早期的vGPU就是這樣的實現,不過NVIDIA vGPU需要額外的license,額外增加了成本。SR-IOV雖然實現了1:N的能力,但其彈性比較差,難以更細粒度的分割和調度。

    第三是MPT(Mediated Pass-Through,受控制的直通)模式。 MPT本質上是一種通用的PCIe設備虛擬化方案。兼顧了1:N靈活性、高性能、功能完整性,但邏輯上相當於實現在內核態的device-model,廠商通常不會公開硬體編程接口,因此採用MPT可能會形成廠商依賴。用的最多的模式是API轉送模式。根據AI應用的呼叫層次(如下圖),API轉送有多個層次,包含CUDA API轉送(圖中①)、GPU Driver API轉送(圖中②)和裝置硬體層API轉送(圖③)。設備硬體層API通常是難以取得的,因此目前市面上通常採用CUDA API轉送模式(截獲CUDA請求轉發,也稱為用戶態)和GPU卡驅動Driver API轉送模式(截取驅動層請求轉發,也被稱為內核態).另外AI開發框架往往和GPU卡綁定(例如華為支持CANN框架,海光支持DTK框架,英偉達則支持TensorFlow、Pytorch等框架),AI應用在使用AI框架時,也可以在AI框架層進行轉發,在AI應用程式遷移時比較有用。

    AI應用呼叫層次
    GPU虛擬化與共享方案了解了GPU設備虛擬化的方式,基於裝置虛擬化技術,看下GPU虛擬化與共享的實作方式。 GPU虛擬化和共享有多種方案,英偉達從官方也提供了vGPU、MIG、MPS等方案,以及非官方的vCUDA、rCUDA、核心劫持等多種方案。

    NVIDIA VGPU方案NVIDIA vGPU是NVIDIA提供的虛擬化方案,可靠性和安全性高,但不支援容器,只能虛擬化若干個vGPU ,使用不靈活;無法動態調整資源比例;有一定的共享損耗;不支援客製化開發,需支付額外license費用。 MIG方案MIG是多實例GPU方案。只支援Linux作業系統,需要CUDA11/R450或更高版本;支援MIG的卡有A100, H100 等比較高階的卡;支援裸機和容器,支援vGPU模式,一旦GPU卡設定了MIG後,就可以動態管理instance了,MIG設定時persistent 的,即使是reboot也不會受影響,直到使用者明確地切換。

    借助MIG,用戶可以在單一GPU卡上獲得最多7倍的GPU資源,為研發人員提供了更多的資源和更高的靈活性。優化了GPU的利用率,並支援在單一GPU上同時執行推理、訓練和高效能運算(HPC)任務。每個MIG實例對於應用程式都像獨立GPU一樣運行,使其程式設計模型沒有變化,對開發者友好。

    MPS(Multi-Process Scheduling)MPS多進程調度是CUDA應用程式介面的替代二進位相容實作。從Kepler的GP10 架構開始,NVIDIA 引入了MPS ,允許多個流(Stream)或CPU 的進程同時向GPU 發射K ernel 函數,結合為單一應用程式的上下文在GPU上運行,從而實現更好的GPU利用率。當使用MPS時,MPS Server會透過一個CUDA Context 管理GPU硬體資源,多個MPS Clients會將他們的任務透過MPS Server 傳入GPU ,從而越過了硬體時間分片調度的限制,使得他們的CUDA Kernels 實現真正意義上的並行。但MPS由於共享CUDA Context也帶來一個致命缺陷,其故障隔離差,如果一個在執行kernel的任務退出,和該任務共享share IPC和UVM的任務一會一同出錯退出。 rCUDArCUDA指remote CUDA,是遠端GPU呼叫方案,支援以透明的方式並發遠端使用CUDA 設備。 rCUDA提供了非GPU節點存取使用GPU 的方式,因此可以在非GPU 節點運行AI應用程式。 rCUDA是一種C/S架構,Client使用CUDA運行庫遠端呼叫Server上的GPU接口,Server監控請求並使用GPU執行請求,返回執行結果。

    在實際場景中,無需為本地節點配置GPU資源,可以透過遠端呼叫GPU資源而無需關注GPU所在位置,是非常重要的能力,隔離了應用程式和GPU資源層。 vCUDAvCUDA採用在用戶層攔截和重定向CUDA API的方式,在VM中建立pGPU的邏輯映像,即vGPU,來實現GPU資源的細粒度劃分、重組和再利用,支援多機並發、掛起恢復等VM的高級特性。 vCUDA函式庫是nvidia-ml和libcuda函式庫的封裝函式庫,透過劫持容器內使用者程式的CUDA呼叫來限制目前容器內程序對GPU 算力和顯存的使用。 vCUDA優點是API開源,容易實現;缺點是CUDA庫升級快,CUDA 庫升級則需要不斷適配,成本高;另外隔離不準確無法提供算力精準限制的能力、安全性低用戶可以繞過限制等。目前市面上廠商基本上都是採用vCUDA API轉送的方式來實現GPU算力池化。

    GPU算力池化雲端原生實現GPU池化(GPU-Pooling)是透過對實體GPU進行軟體定義,融合了GPU虛擬化、多卡聚合、遠端呼叫、動態釋放等多種能力,解決GPU使用效率低和彈性擴展差的問題。 GPU資源池化最理想的方案是屏蔽底層GPU異質資源細部(支援英偉達和國產各廠商GPU) ,分離上層AI 架構應用與底層GPU類型的耦合性。不過目前AI框架和GPU類型是緊密耦合的,尚沒有實現的方案抽像出一層能屏蔽異構GPU。

    基於不同框架開發的應用程式在遷移到其他類型GPU時,必須重新建構應用,至少要遷移應用到另外的GPU,往往需要重新的適配與調試。算力隔離、故障隔離是GPU虛擬化與池化的關鍵。算力隔離有硬體隔離也就是空分的方式,MPS共享CUDA Context方式和Time Sharing時分的方式。越靠底層,隔離效果越好,如MIG硬體算力隔離方案,是一種硬體資源隔離、故障隔離方式,效果最好。但硬體設備程式介面和驅動介面往往是不公開的,所以對廠商依賴大,實施的難度非常大,靈活性差,如支援Ampere架構的A100等,最多只能切分為7個MIG實例等。 NVIDIA MPS是除MIG外,算力隔離最好的。

    它將多個CUDA Context合併到一個CUDA Context中,省去Context Switch的開銷並在Context內部實現了算力隔離,但也致額外的故障傳播。 MIG和MPS優缺點都非常明顯,實際工程中使用的並不普遍。採用API轉送的多工GPU時間分片的實作模式相對容易實現且應用最廣。根據AI應用使用GPU的呼叫層次,可以實現不同層次的資源池化能力。例如CUDA層、Diver層、硬體設備層等。在不同的抽象層次,將需要加速的應用轉送(Forwarding)到GPU資源池。總的來說,越靠底層的轉發效能損失越小,可操作的範圍越大;但同時,程式設計量也越大,也越難。


    由於雲端原生應用程式的大量部署,GPU算力資源池化需要支援雲端原生部署能力,比如說支援Kubernetes、Docker服務,透過K8s Pod綁定由GPU資源池按需虛擬出來的vGPU,執行Pod中的應用。不管是英偉達的GPU卡或是國產GPU,所有的卡片都在算力資源池中,目前可以將不同的卡片分類,不同框架的應用按需調度到適當的分類GPU算力池上。從而提升資源管理效率。算力資源池同樣需要實現對應的資源、資產管理和運作監控和可觀測性,優化調度能力,減少GPU資源片段。隨著AI應用需求的快速成長,算力資源池化在未來一段時間內將是企業關注的重要的一個面向。