一. 深度學(xué)習(xí)平臺(tái)的特性
深度學(xué)習(xí)應(yīng)用越來(lái)越多瞬项,也有越來(lái)越多的平臺(tái)開源出來(lái)昵骤。我個(gè)人看好tensorflow,mxnet和百度的paddle萝映。機(jī)器學(xué)習(xí)平臺(tái)不同于之前的mapreduce和spark的模型檩小,主要由于以下2點(diǎn):
- 數(shù)據(jù)依賴性很強(qiáng),運(yùn)算過程中參與計(jì)算的各個(gè)機(jī)器之間經(jīng)常需要交換大量的數(shù)據(jù)杜耙。通訊有可能成為集群線性性能增長(zhǎng)的瓶頸
- 處理復(fù)雜搜骡,主要表現(xiàn)在整個(gè)處理過程需要反復(fù)地迭代計(jì)算,需要解決復(fù)雜計(jì)算依賴的問題
二. MPI環(huán)境搭建
mpi:message passing interface佑女。 其支持千兆的網(wǎng)絡(luò)(RDMA)和資源的調(diào)度记靡。很適合深度學(xué)習(xí)的應(yīng)用。
其架構(gòu)如下圖:
說(shuō)明:
- submit_server: 提交/查詢job的機(jī)器团驱,一般會(huì)有權(quán)限驗(yàn)證
- head_node:頭結(jié)點(diǎn)摸吠,一般會(huì)啟動(dòng)pbs_server和job調(diào)度進(jìn)程pbs_sched
- compute_node:工作節(jié)點(diǎn):需要啟動(dòng)pbs_mom進(jìn)程,在實(shí)際的深度學(xué)習(xí)訓(xùn)練中嚎花,機(jī)器一般會(huì)配置gpu卡
具體的安裝配置可以參考最后的參考資料1寸痢,主要的點(diǎn)有: - 配置pbs_server,使其知道管理compute_node 資源數(shù)量
node001 np=24 gpu=4 cluster_online
其中node001 是compute node 的hostname
np=24紊选,cpu的個(gè)數(shù)
gpu=4啼止,gpu的個(gè)數(shù)
cluster_online, 自定義標(biāo)簽丛楚,在提交job的時(shí)候可以根據(jù)該標(biāo)簽過濾
- 測(cè)試配置的是否正確
在submit_server上提交一個(gè)簡(jiǎn)單的job族壳,得到如下信息憔辫,表示配置已經(jīng)是正確的
su - testuser
echo "sleep 30" | qsub