羅榮 胡文慶
開發(fā)設計
人工智能服務器的底板管理控制器系統(tǒng)設計*
羅榮 胡文慶
(廣東人工智能與先進計算研究院,廣東 廣州 510506)
針對人工智能計算單元或加速卡需要穩(wěn)定可靠的工作電源以及實時高效的溫度控制等需求,設計人工智能服務器的底板管理控制器系統(tǒng),實現(xiàn)人工智能服務器的電源模塊冗余管理、多路電源輸出監(jiān)測、機箱內(nèi)部溫度控制,并提供遠程接口和設備管理能力。該系統(tǒng)采用ORing冗余電源設計,對每路輸出電源進行電壓、電流狀態(tài)監(jiān)測;結(jié)合人工智能服務器的內(nèi)部溫度信息,依據(jù)電壓、電流歷史趨勢對其散熱風扇實施轉(zhuǎn)速控制,不僅實現(xiàn)了電源冷、熱冗余備份和切換管理,還有效提高了服務器的散熱水平。應用該系統(tǒng)的人工智能服務器“香雪-3B”(XIANGXUE-3B)運行穩(wěn)定可靠,并在MLPerf V2.0測試中取得了較好的成績。
人工智能服務器;底板管理控制器;冗余管理;散熱管理
人工智能(artificial intelligence, AI)服務器是針對具有高并行、高精度、高速率等計算需求的浮點運算、數(shù)值計算和科學計算設計的高性能計算平臺,是人工智能、大數(shù)據(jù)、數(shù)字孿生、智慧城市等領域的重要基礎設施。AI服務器搭載大量的計算單元和高帶寬、高容量的內(nèi)存資源,可滿足人工智能的模型訓練、線上推理計算、科學仿真計算等應用需求。
隨著AI服務器計算強度的增大,所需的計算單元數(shù)量也急劇上升。大量的計算單元雖使計算性能大幅地提升,但也導致系統(tǒng)功耗急劇上升。因此,有必要對AI服務器進行電源和散熱管理。
本文針對AI服務器的電源和散熱需求,設計了底板管理控制器(baseboard management controller, BMC)系統(tǒng)[1-2],實現(xiàn)電源冗余管理、電壓電流狀態(tài)檢測、服務器溫度狀態(tài)檢測、智能散熱管理等功能。
為滿足AI服務器高性能、大功率、高可靠性、高負荷的處理能力,BMC系統(tǒng)基本需求如下:
1)不少于16路加速卡電源供應,每路電源最大功率不低于300 W(12 V/25 A);
2)電源冗余管理,可隨時切斷故障電源模塊;
3)電壓電流實時狀態(tài)檢測;
4)服務器內(nèi)部溫度狀態(tài)檢測;
5)智能散熱管理,根據(jù)服務器的溫度、系統(tǒng)負荷等反饋,智能調(diào)整散熱策略[3];
6)提供BMC用戶管理界面;
7)支持智能平臺管理界面(intelligent platform managment interface, IPMI)協(xié)議規(guī)范[4-5];
8)具有信息回溯、故障信息記錄等功能。
人工智能服務器的底板管理控制器系統(tǒng)主要包括主控單元、冗余管理、電源監(jiān)測、風扇監(jiān)測、溫度監(jiān)測等功能模塊,組成框圖如圖1所示[6-7]。
圖1 人工智能服務器的底板管理控制器系統(tǒng)組成框圖
主控單元選用服務器管理處理器AST2600,內(nèi)部集成2個ARM Cortex-A7核心和1個ARM Cortex-M3核心,具有VGA/2D圖像顯示接口,可提供四路千兆以太網(wǎng)接口、16路I2C和16路PWM接口[8-9]。
為方便實現(xiàn)BMC上層軟件協(xié)議與控制, AST2600設計了2 GB LPDDR4;采用16 GB的eMMC用于BMC系統(tǒng)軟件、應用軟件、數(shù)據(jù)存儲等,主控單元的組成框圖如圖1所示。
電源管理包括冗余管理和電源監(jiān)測2部分。
冗余管理需滿足16路最大功率300 W(12 V/25 A)的輸出,此外服務器內(nèi)部還有PCIe背板、散熱風扇等設備的功率約為500 W,通過計算得到服務器電源總功率需滿足以下條件:
服務器采用的單個電源模塊的額定輸出功率為2 400 W(12.2 V/196.7 A),因此至少需要3個電源模塊并聯(lián)工作,才能滿足系統(tǒng)需求。此外,還需要1個額外的電源模塊在其他電源模塊故障時作冗余備用,故服務器采用4個電源模塊。
本文采用ORing冗余電源設計,利用二極管的單向?qū)ㄌ匦?,防止電源模塊之間的電壓、電流倒灌現(xiàn)象,并可以分離有故障的電源模塊。考慮到二極管通常無法承受196.7 A的導通電流,故采用ORing電源軌控制器與導通電流為240 A的N溝道MOSFET組合來實現(xiàn)。根據(jù)服務器實際功率提供靈活的2+2或者3+1的熱備或冷備電源冗余模式,且各電源模塊均支持熱拔插。
電源監(jiān)測采用集成式、零漂移、雙向電流/功率監(jiān)測計INA219,監(jiān)測16路電源輸出的電壓、電流參數(shù),并可直接讀取電壓、電流與功率,實時掌握各路電源輸出的功率狀態(tài)。
散熱管理包括風扇監(jiān)測和溫度監(jiān)測2部分。
為實時監(jiān)測AI服務器內(nèi)部溫度狀況,在其內(nèi)部設置6個溫度監(jiān)測點,如圖2中小方塊所示。采用此分布監(jiān)測方案可較好地了解AI服務器的內(nèi)部熱量分布狀態(tài),以便實施智能散熱管理。
圖2 AI服務器內(nèi)部溫度監(jiān)測點示意圖
利用TMP75數(shù)字溫度傳感器進行溫度監(jiān)測,其分辨率達到0.062 5 ℃,無需校準和外部信號調(diào)理且誤差范圍為±1 ℃。TMP75采用I2C總線通信,在單個總線上最多可以尋址27個TMP75從設備。
AI服務器熱量主要來源于計算單元(即加速卡)在計算過程中產(chǎn)生的電能消耗。計算單元的核心器件發(fā)熱與功率之間的關系為
Tmax = Tmax(Pmax×Θ)(1)
式中:
Tmax——核心器件表面的最高溫度;
Tmax——環(huán)境的最高溫度;
Pmax——核心器件的最大功率;
Θ——核心器件的熱阻率。
由公式(1)可知,核心器件的功率越大,其表面溫度越高。
電阻與溫度及功率之間關系如公式(2)、(3)所示。
0[1(0)](2)
2(3)
式中:
——導體電阻;
0——參考溫度下的電阻;
——導體電阻的溫度系數(shù);
——實際溫度;
0——參考溫度;
——電流;
——功率。
由公式(2)可知,導體電阻與溫度成比例關系,即
Tmax = Tmax(20[1(-0)]×Θ)
由公式(3)可知,電流不變時,功率隨導體電阻的增大而增大。
對于正溫度系數(shù)器件,其功率越大則溫度越高,溫度升高會導致內(nèi)阻增大,內(nèi)阻增大又導致功率增大,形成惡性循環(huán)。溫度一旦超過極限就可能使核心器件損壞,因此必須對核心器件進行科學的散熱管理。
溫度屬于遲滯型參數(shù),AI服務器內(nèi)部雖然空氣流動性大,但局部溫度通過空氣或PCB傳導到傳感器仍存在延遲時間。常規(guī)的風扇控制采用溫度反饋控制轉(zhuǎn)速的方式,但因溫度傳遞遲滯而導致系統(tǒng)獲取的溫度滯后于服務器內(nèi)的實際溫度,使得散熱相對延后,進而影響服務器整體性能。本文設計的智能散熱管理算法,將電壓、電流的當前狀態(tài)與歷史狀態(tài)結(jié)合,預測功耗趨勢,提前對風扇進行轉(zhuǎn)速調(diào)節(jié),使機箱內(nèi)部溫度維持在合理范圍,避免計算單元發(fā)生高溫失效的情況。
AST2600內(nèi)置的脈沖寬度調(diào)制(pulse width modulation, PWM)功能單元可對外提供16路輸出,每路PWM輸出都有自己的頻率控制,占空比可在0%~100%之間設定。通過調(diào)節(jié)PWM輸出占空比實現(xiàn)風扇轉(zhuǎn)速控制,通過計數(shù)器監(jiān)測風扇的工作狀態(tài)與實時轉(zhuǎn)速,構(gòu)成AI服務器內(nèi)部風扇的閉環(huán)控制。同時配合溫度監(jiān)測與電源監(jiān)測策略即可實現(xiàn)智能散熱管理算法,有效實時降低AI服務器的發(fā)熱,保證大負載下AI服務器工作的可靠性和穩(wěn)定性。
風扇轉(zhuǎn)速監(jiān)測利用AST2600內(nèi)部集成的計數(shù)器功能,支持16個獨立轉(zhuǎn)速脈沖輸入。測量方式可根據(jù)需要選擇上升沿、下降沿或2個邊沿測量,并可設置脈沖監(jiān)測,在脈沖間隔不滿足預設值時支持觸發(fā)中斷報警。
為支持遠程管理IPMI,系統(tǒng)設計了1 000 Mb/s以太網(wǎng),方便用戶遠程登錄、訪問和控制。另外,為方便開發(fā)調(diào)試,預留了調(diào)試用UART接口。
系統(tǒng)軟件根據(jù)功能和作用可劃分為操作系統(tǒng)[10]、管理程序、BMC用戶管理界面3部分。
操作系統(tǒng)為AST2600處理器運行的系統(tǒng)程序(俗稱固件),主要由U-Boot、Linux Kernel、只讀根文件系統(tǒng)、可讀可寫文件系統(tǒng)等組成。其中,系統(tǒng)引導采用U-Boot-2019.04,內(nèi)核采用Linux-5.10.35。
操作系統(tǒng)基于Ubuntu 18.04 LTS環(huán)境開發(fā),編譯器使用GCC 11.1.0,其他相關的工具和庫工具版本分別為binutils 2.36.1和glibc 2.33。
操作系統(tǒng)主要實現(xiàn)系統(tǒng)的進程、存儲、設備、文件、作業(yè)等管理,并為管理程序和用戶界面提供運行環(huán)境和相關接口服務。
管理程序主要用于AI服務器內(nèi)部的電源、溫度、風扇等監(jiān)測[11]。管理程序與操作系統(tǒng)相互獨立,操作系統(tǒng)在AI服務器接入220 V交流電源后,處于后臺運行狀態(tài)。管理程序檢測到AI服務器的電源按鈕短按或收到遠程管理端發(fā)送的開機指令后,進行AI服務器初始化操作;收到AI服務器的電源按鈕長按或遠程管理端發(fā)送的關機指令后,進行AI服務器關機操作。管理程序邏輯流程如圖3所示。
圖3 管理程序邏輯流程
服務器內(nèi)共安裝4組2 400 W電源模塊,冗余策略設計為關機僅保留2組電源模塊熱備,防止其中1個電源模塊出現(xiàn)故障而導致無法響應開機指令的情況。開機后,4組電源模塊全部進入熱備狀態(tài),根據(jù)AI服務器的計算單元功率需求,可設置為2+2或3+1冗余模式。如單張計算卡功率為250 W,則總功率為4 000 W,可設置為2+2或3+1冗余模式;若單張計算卡功率為400 W,則總功率為6 400 W,則必須設置為3+1冗余模式(用戶在BMC用戶管理界面輸入對應的單張計算卡功率后,會自動列出可選的冗余模式供用戶選擇)。
用戶管理界面是方便用戶查看、訪問、管理、讀取設備狀態(tài)信息,并進行相關設置操作的交互程序。系統(tǒng)用戶管理界面基于OpenBMC的開源OpenBMC Web UI進行二次開發(fā)設計,采用Vue.js框架。OpenBMC Web UI登錄界面如圖4所示。
圖4 OpenBMC Web UI登錄界面
登錄后,可通過左側(cè)的菜單欄選取相關的操作。左側(cè)菜單欄信息如圖5所示。
圖5 菜單欄信息
電源模塊的輸入輸出效率曲線如圖6所示。
圖6 電源模塊輸入輸出效率曲線
由圖6可以看出,電源模塊的負載在30%~80%時,電源效率高于92%,因此電源管理策略的重點在于盡量使電源模塊的負載在30%~80%工作范圍內(nèi)。
為測試電源管理和熱拔插功能,使用負載儀設定負載功率,系統(tǒng)根據(jù)負載狀態(tài)設定工作電源模塊,如表1所示。其中“√”表示工作中,“○”表示待機狀態(tài)且熱拔插正常。
表1 電源管理測試
由表1可知,系統(tǒng)可正確控制4組電源模塊的工作狀態(tài)和熱拔插管理,滿足設計要求。
為測試系統(tǒng)的自動冗余功能,按照表2設置4個電源模塊的最大輸出電流,模擬電源模塊輸出故障狀態(tài)。
表2 電源冗余測試 單位:A
冗余測試時,將負載設定為3 200 W,系統(tǒng)均能自動識別各個電源模塊的故障信息(電流超限報警),并切換到正常冷、熱備的電源模塊進行工作,且在系統(tǒng)日志中記錄了相關事件的信息和時間等。
通過加載不同負載,采用常規(guī)散熱控制策略(即讀取實時溫度,根據(jù)溫度線性調(diào)節(jié)風扇轉(zhuǎn)速)與智能散熱管理算法分別對AI服務器進行散熱管理,并記錄相應的溫度數(shù)據(jù),如圖7所示。
圖7 溫度增速對比
由圖7可以看出,采用智能散熱管理算法的AI服務器,在負載增大過程中,其內(nèi)部溫度增速顯著低于常規(guī)散熱控制策略。
在上述的溫度控制效果下,記錄不同溫度時常規(guī)散熱控制策略與智能散熱管理算法控制的風扇轉(zhuǎn)速數(shù)據(jù),得到不同溫度下風扇轉(zhuǎn)速對比圖,如圖8所示。
圖8 不同溫度下風扇轉(zhuǎn)速對比
由圖8可以看出,采用智能散熱管理算法的AI服務器,因具有提前預判能力,散熱速度更快,溫度上升較慢,進而控制風扇轉(zhuǎn)速低于常規(guī)散熱控制策略,因此AI服務器的風扇噪聲也相對較低。(注:在測試末段,為保護AI服務器內(nèi)部計算單元不受損傷,均強制在溫度高于62 ℃之后啟動最大轉(zhuǎn)速。)
應用該系統(tǒng)設計的“香雪-3B”(XIANGXUE-3B)服務器在單節(jié)點內(nèi)可提供10 Pflops AI算力,靈活支持多種PCIE架構(gòu)形式以適應廣泛的應用需求。在2022年6月的MLPerf Training V2.0評測中,“香雪-3B”共參與5項測試場景,提交3組配置和7項測試結(jié)果[12],均取得較好的成績[13]。
本文針對AI服務器的功能需求設計了BMC系統(tǒng),電源模塊可實現(xiàn)無縫冷、熱備切換而不影響服務器的正常運行;同時對AI服務器的16路輸出電壓和電流進行了實時監(jiān)測,有效地掌握服務器各計算單元或加速卡的工作和負載水平。根據(jù)電源輸出側(cè)電壓、電流狀態(tài),主動提前介入散熱響應,相比常規(guī)基于溫度反饋的散熱控制策略,可有效降低AI服務器的內(nèi)部溫度。該系統(tǒng)既有利于AI服務器性能的發(fā)揮,又可以提升AI服務器工作的穩(wěn)定性和可靠性。
[1] 朱建培.淺談BMC管理系統(tǒng)在國產(chǎn)平臺服務器中的運用分析[J].中國設備工程,2021(8):62-63.
[2] 吳之光,耿士華.淺談BMC管理系統(tǒng)在國產(chǎn)平臺服務器中的應用[J].信息技術(shù)與信息化,2016(Z1):51-53.
[3] 喬英良.刀片服務器監(jiān)控管理系統(tǒng)設計與實現(xiàn)[D].濟南:山東大學,2012.
[4] 王栩浩.基于IPMI的服務器管理系統(tǒng)的實現(xiàn)[D].上海:東華大學,2016.
[5] A joint message from the IPMI promoters (Dell, Hewlett Packard Enterprise, NEC, Intel Corporation). Intelligent plat- form management interface specification v2.0 rev. 1.1 [EB/ OL].2013-10-01.https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html.
[6] 郭利文.基于FPGA的多節(jié)點服務器集群的均衡系統(tǒng)管理設計[D].長沙:湖南大學,2018.
[7] 蔡積淼.基于IPMI的服務器管理的軟硬件設計與實現(xiàn)[D].濟南:山東大學,2017.
[8] 何毅平.基于ARM的BMC設計與實現(xiàn)[D].武漢:華中科技大學,2014.
[9] 阮榮友.基于IPMI協(xié)議的服務器主板控制器的設計與實現(xiàn)[D].武漢:華中科技大學,2012.
[10] STALLINGS William. Operating systems: internals and design principles[M].9th edition. United States: Published by Pearson, 2021.
[11] 石博凡.基于IPMI協(xié)議的服務器管理系統(tǒng)安全診斷模塊的設計與實現(xiàn)[D].南京:東南大學,2018.
[12] MLCommons. MLPerf training v2.0 results [EB/OL]. 2022- 06-29. https://mlcommons.org/en/training-normal-20/.
[13] 廣東人工智能與先進計算研究院. 研究院“香雪”服務器斬獲全球冠軍![EB/OL]. 2022-06-30. https://mp.weixin.qq. com/s/L2-KjrVTRbJPpOzzzpNxow.
Design of Baseboard Management Controller System for Artificial Intelligence Server
LUO Rong HU Wenqing
(Guangdong Institute of Artificial Intelligence and Advanced Computing, Guangzhou 510506, China)
To meet the requirements of stable and reliable working power supply and real-time and efficient temperature control for the artificial intelligence computing unit or accelerator card, the floor management controller system of the artificial intelligence server is designed to realize the redundant management of the power module of the artificial intelligence server, multi-channel power output monitoring, and temperature control inside the chassis, and provide remote interface and equipment management capabilities. ORing redundant power supply design is adopted to monitor the voltage and current status of each output power supply; Combined with the internal temperature information of the AI server, the speed of the cooling fan is controlled according to the historical trend of voltage and current, which not only realizes the cold and hot redundancy backup and switch management of the power supply, but also effectively improves the cooling level of the server. The artificial intelligence server "XIANGXUE-3B" using this system runs stably and reliably, and has achieved good results in MLPerf V2.0 test.
artificial intelligence server; baseboard management controller; redundancy management; heat dissipation management
TP277
A
1674-2605(2022)06-0006-07
10.3969/j.issn.1674-2605.2022.06.006
羅榮,胡文慶.人工智能服務器的底板管理控制器系統(tǒng)設計[J].自動化與信息工程,2022,43(6):34-40.
LUO Rong, HU Wenqing. Design of baseboard management controller system for artificial intelligence server[J]. Automation & Information Engineering, 2022,43(6):34-40.
廣東省重點領域研發(fā)計劃(高水平創(chuàng)新研究院定向委托)項目(2019B090917009);廣州市科技計劃項目(202201000009)。
羅榮,男,1993年生,工學學士,助理工程師,主要研究方向:智能儀器。E-mail: rong.luo@giaiac.cn
胡文慶(通信作者),男,1992年生,工學碩士,工程師,主要研究方向:人工智能與大數(shù)據(jù)。E-mail: wenqing.hu@ giaiac.cn