摘要:目前騰訊云提供的云服務(wù)器并未提供方面的監(jiān)控?cái)?shù)據(jù),本文旨在通過使用騰訊云的自定義監(jiān)控服務(wù)來自行實(shí)現(xiàn)對服務(wù)器的使用率的監(jiān)控。除了命令行工具,也提供了的供開發(fā)者使用,本文就基于的用于讀取使用率,并將數(shù)據(jù)上傳到騰訊云自定義監(jiān)控對應(yīng)接口進(jìn)行監(jiān)控。
歡迎大家前往云+社區(qū),獲取更多騰訊海量技術(shù)實(shí)踐干貨哦~
作者:李想
隨著人工智能以及比特幣的火熱,GPU云服務(wù)的使用場景是越來越廣,在很多場景下我們也需要獲取GPU服務(wù)器的性能參數(shù)來優(yōu)化程序的執(zhí)行。目前騰訊云提供的GPU云服務(wù)器并未提供GPU方面的監(jiān)控?cái)?shù)據(jù),本文旨在通過使用騰訊云的“自定義監(jiān)控”服務(wù)來自行實(shí)現(xiàn)對GPU服務(wù)器的GPU使用率的監(jiān)控。
1.GPU云服務(wù)創(chuàng)建騰訊云GPU云服務(wù)器的創(chuàng)建可以參考下面官網(wǎng)的文檔,采用云市場提供的GPU服務(wù)器專用鏡像可以免于自行安裝GPU驅(qū)動程序。
https://cloud.tencent.com/doc...
使用云市場的鏡像創(chuàng)建的服務(wù)器,默認(rèn)已經(jīng)包含了NVML 管理庫(Nvidia Management Library)和 基于NVML的命令行工具nvidia-smi (NVIDIA System Management Interface)。
在服務(wù)器上執(zhí)行nvidia-smi可以獲取當(dāng)前服務(wù)器的GPU使用率。
除了nvidia-smi 命令行工具,Nvidia也提供了NVML的Python SDK供開發(fā)者使用,本文就基于NVML的python SDK用于讀取GPU使用率,并將數(shù)據(jù)上傳到騰訊云自定義監(jiān)控對應(yīng)接口進(jìn)行監(jiān)控。
https://pypi.python.org/pypi/...
同時需要執(zhí)行如下命令安裝NVML的Python庫:
pip install nvidia-ml-py2.自定義監(jiān)控配置
首先創(chuàng)建監(jiān)控配置,命名空間是該監(jiān)控的名字,維度用于定義每一個監(jiān)控?cái)?shù)據(jù),由于一個服務(wù)器可能有多個GPU,所以我們這里定義兩個維度,server_name用于記錄GPU服務(wù)器名字,gpu_id用于記錄GPU序列號。如果還需監(jiān)控GPU其他指標(biāo)可以在監(jiān)控指標(biāo)里進(jìn)行添加。
配置創(chuàng)建完畢需要創(chuàng)建指標(biāo)統(tǒng)計(jì)方式,這里配置統(tǒng)計(jì)周期為5分鐘,并按照平均值進(jìn)行統(tǒng)計(jì)。
數(shù)據(jù)上報(bào)通過一個Python腳本來實(shí)現(xiàn),腳本主要需要完成下面幾個任務(wù)。
初始化NVML并調(diào)用nvmlDeviceGetCount()讀取GPU個數(shù)。
計(jì)算Signature作為API接口校驗(yàn)和鑒權(quán)參數(shù)。需要注意數(shù)據(jù)上報(bào)接口跟一般騰訊云API接口不同,并且簽名算法也有所不同,具體可參考官方文檔
調(diào)用NVML接口nvmlDeviceGetUtilizationRates()讀取GPU使用率。
將讀取的數(shù)據(jù)進(jìn)行封裝并上傳。dimensions需要指定每個維度的值,這里server_name指定為‘testserver’,gpu_id為讀取的GPU ID號。
核心部分的代碼如下:
nvmlInit() deviceCount = nvmlDeviceGetCount() while True: ts=int(time.time()) nonce=random.randint(10000,100000) text="GETreceiver.monitor.tencentyun.com/v2/index.php?Action=PutMonitorData&Nonce=%d&Region=%s&SecretId=%s&Timestamp=%d" % (nonce,region,secretId,ts) data["Timestamp"]=ts data["Nonce"]=nonce data["Signature"]=hmac.new(secretKey,text,hashlib.sha1).digest().encode("base64").rstrip(" ") for i in range(deviceCount): handle = nvmlDeviceGetHandleByIndex(i) gpu_util = getGpuUtilization(handle) Data=[ { "dimensions": {"gpu_id": str(i) ,"server_name": "testserver"}, "metricName": "gpu_util", "value": gpu_util, } ] data["Data"]=json.dumps(Data) xx = urllib.urlencode(data) sender.send_data(xx) time.sleep(20)
完整代碼可以參考如下的Github鏈接:
https://github.com/xianl/GPUM...
登錄到自定義監(jiān)控管理界面,可以查看采集到的數(shù)據(jù)。如果需要配置告警策略,可以在告警管理中進(jìn)行配置。
另外,如果需要查看詳細(xì)的數(shù)據(jù)也可以在報(bào)表詳情中進(jìn)行查看。
總結(jié)本文主要講述了如何利用騰訊云的自定義監(jiān)控服務(wù)來監(jiān)控GPU服務(wù)器的GPU使用率,為大家在實(shí)際應(yīng)用中監(jiān)控服務(wù)器的非標(biāo)數(shù)據(jù)提供了解決思路,如果需要監(jiān)控GPU的其他參數(shù)如GPU內(nèi)存使用率,GPU功耗等也可以基于此做適當(dāng)修改來實(shí)現(xiàn)。另外,如果大家需要監(jiān)控GPU之外一些非標(biāo)數(shù)據(jù),也可以參考本文提供的方案自行編寫上傳模塊來實(shí)現(xiàn)。
相關(guān)閱讀【云端架構(gòu)】騰訊云CDN鏈接鑒權(quán)算法PHP代碼模板
騰訊云微計(jì)算實(shí)踐:從Serverless說起,談?wù)勥吘売?jì)算的未來
如何在Python中從零開始實(shí)現(xiàn)隨機(jī)森林
此文已由作者授權(quán)云加社區(qū)發(fā)布,轉(zhuǎn)載請注明文章出處
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44547.html
摘要:服務(wù)器是基于的應(yīng)用于深度學(xué)習(xí)科學(xué)計(jì)算等多種場合的穩(wěn)定快速彈性的計(jì)算服務(wù),提供和標(biāo)準(zhǔn)云服務(wù)器一致的管理方式。這些是一些可以用到服務(wù)器的場景,所以如果您的使用需要比較高端,建議還是使用服務(wù)器。GPU服務(wù)器是基于GPU的應(yīng)用于深度學(xué)習(xí)、科學(xué)計(jì)算等多種場合的穩(wěn)定、快速、彈性的計(jì)算服務(wù),提供和標(biāo)準(zhǔn)云服務(wù)器一致的管理方式。出色的圖形處理能力和高性能計(jì)算能力提供極致計(jì)算性能,有效解放計(jì)算壓力,提升產(chǎn)品的計(jì)...
摘要:通過這兩天的調(diào)研,筆者將的測試方法簡單的分為兩類安卓官方提供的工具及方法廠商提供的工具及方法。其中監(jiān)測僅支持搭載高通處理器的設(shè)備,而其他功能可以在搭載任意處理器的手機(jī)上使用。 本文來自于Dev Club 開發(fā)者社區(qū),非經(jīng)作者同意,請勿轉(zhuǎn)載,原文地址:http://dev.qq.com/topic/57c7f... 作者:章未哲——騰訊SNG質(zhì)量部 背景 我們在安卓上進(jìn)行性能測試時,如果...
摘要:摘要日漸成為大家應(yīng)用和服務(wù)的核心存儲組件,本文來介紹一下如何通過云監(jiān)控的簡單配置來實(shí)現(xiàn)對資源使用量和狀態(tài)進(jìn)行監(jiān)控和報(bào)警。 摘要: OSS日漸成為大家應(yīng)用和服務(wù)的核心存儲組件,本文來介紹一下如何通過云監(jiān)控的簡單配置來實(shí)現(xiàn)對OSS資源使用量和狀態(tài)進(jìn)行監(jiān)控和報(bào)警。 點(diǎn)此查看原文:http://click.aliyun.com/m/43530/ OSS日漸成為大家應(yīng)用和服務(wù)的核心存儲組件,本...
摘要:阿里云上領(lǐng)域各個產(chǎn)品最終目標(biāo)是為了對以上各個組件進(jìn)行有效監(jiān)控。阿里云的解決方案地圖基于今天的云上的應(yīng)用架構(gòu),阿里云的解決方案地圖如下所示。其他阿里云服務(wù)包括緩存,等。阿里云解決方案地圖以下表格對阿里云解決方案進(jìn)行總結(jié)。 摘要: PM是近5年來伴隨著云技術(shù)、微服務(wù)架構(gòu)發(fā)展起來的一個新興監(jiān)控領(lǐng)域。在國內(nèi)外,無論是云廠商(如AWS, Azure,等)還是獨(dú)立的公司(Dynatrace, Ap...
閱讀 816·2021-11-25 09:43
閱讀 1683·2021-09-29 09:42
閱讀 1898·2019-08-30 15:55
閱讀 3420·2019-08-30 15:54
閱讀 2625·2019-08-30 13:20
閱讀 3509·2019-08-29 13:25
閱讀 919·2019-08-28 18:03
閱讀 1784·2019-08-26 13:44