色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

實現 TensorFlow 架構的規模性和靈活性

Tensorflowers ? 來源:工程師李察 ? 2019-01-26 14:48 ? 次閱讀

TensorFlow 是為了大規模分布式訓練和推理而設計的,不過它在支持新機器學習模型和系統級優化的實驗中的表現也足夠靈活。

本文對能夠同時兼具規模性和靈活性的系統架構進行了闡述。設定的人群是已基本熟悉 TensorFlow 編程概念,例如 computation graph, operations, and sessions。有關這些主題的介紹,請參閱

https://tensorflow.google.cn/guide/low_level_intro?hl=zh-CN。如已熟悉Distributed TensorFlow,本文對您也很有幫助。行至文尾,您應該能了解 TensorFlow 架構,足以閱讀和修改核心 TensorFlow 代碼了。

概覽

TensorFlow runtime 是一個跨平臺庫。圖 1 說明了它的一般架構。 C API layer 將不同語言的用戶級代碼與核心運行時分開。

實現 TensorFlow 架構的規模性和靈活性

圖 1

本文重點介紹以下幾個方面:

客戶端:

將整個計算過程轉義成一個數據流圖

通過 session,啟動圖形執行

分布式主節點

基于用戶傳遞給 Session.run() 中的參數對整個完整的圖形進行修剪,提取其中特定子圖

將上述子圖劃分成不同片段,并將其對應不同的進程和設備當中

將上述劃分的片段分布到 worker services 工作節點服務上

每個 worker services 工作節點服務上執行其收到的圖形片段

工作節點服務 Worker Services(每一任務一個)

使用內核實現來計劃圖形表示的計算部分分配給正確的可用硬件(如 cpugpu 等)

與其他工作節點服務 work services 相互發送和接收計算結果

內核實現

執行單個圖形操作的計算部分

圖2 說明了這些組件的相互作用。“/ job:worker / task:0” 和 “/ job:ps / task:0” 都是工作節點服務 worker services 上執行的任務。“PS” 表示“參數服務器”:負責存儲和更新模型參數。其他任務在迭代優化參數時會對這些參數發送更新。如果在單機環境下,上述 PS 和 worker 不是必須的,不需要在任務之間進行這種特定的分工,但是對于分布式訓練,這種模式就是很常見的。

實現 TensorFlow 架構的規模性和靈活性

圖 2

請注意,分布式主節點 Distributed Master 和工作節點服務 Worker Service 僅存在于分布式 TensorFlow 中。TensorFlow 的單進程版本包含一個特殊的 Session 實現,它可以執行分布式主服務器執行的所有操作,但只與本地進程中的設備進行通信

下面,通過逐步處理示例圖來詳細介紹一下 TensorFlow 核心模塊。

客戶端

用戶在客戶端編寫 TensorFlow 程序來構建計算圖。該程序可以直接組成單獨的操作,也可以使用 Estimators API 之類的便利庫來組合神經網絡層和其他更高級別的抽象概念。TensorFlow 支持多種客戶端語言,我們優先考慮 Python 和 C ++,因為我們的內部用戶最熟悉這些語言。隨著功能的日趨完善,我們一般會將它們移植到 C ++,以便用戶可以從所有客戶端語言優化訪問。盡管大多數訓練庫仍然只支持 Python,但 C ++ 確實能夠支持有效的推理。

客戶端創建會話,該會話將圖形定義作為tf.GraphDef 協議緩沖區發送到分布式主節點。當客戶端評估圖中的一個或多個節點時,評估會觸發對分布式主節點的調用以啟動計算。

在圖 3 中,客戶端構建了一個圖表,將權重(w)應用于特征向量(x),添加偏差項(b)并將結果保存在變量中。

實現 TensorFlow 架構的規模性和靈活性

圖 3

代碼:

tf.Session

分布式主節點 Distributed master

分布式主節點:

基于客戶端指定的節點,從完整的圖形中截取所需的子圖

對圖表進一步進行劃分,使其可以將每個圖形片段映射到不同的執行設備上

以及緩存這些劃分好的片段,以便在后續步驟中再次使用

由于主節點可以總攬步驟計算,因此它可以使用標準的優化方法去做優化,例如公共子表達式消除和常量的綁定。然后,對一組任務中優化后的子圖或者片段執行協調。

實現 TensorFlow 架構的規模性和靈活性

圖4

圖 5 顯示了示例圖的可能分區。分布式主節點已對模型參數進行分組,以便將它們放在參數服務器上。

實現 TensorFlow 架構的規模性和靈活性

圖5

在分區切割圖形邊緣的情況下,分布式主節點插入發送和接收節點以在分布式任務之間傳遞信息(圖 6)。

實現 TensorFlow 架構的規模性和靈活性

圖 6

然后,分布式主節點將圖形片段傳送到分布式任務。

實現 TensorFlow 架構的規模性和靈活性

圖 7

代碼:

MasterService API definition

Master interface

工作節點服務 Worker Service

在每個任務中,該部分負責:

處理來自 master 發來的請求

為包含本地子圖規劃所需要的內核執行

協調與其他任務之間的直接信息交換

我們優化了 Worker Service,以便其以較低的負載便能夠運行大型圖形。當前的版本可以執行每秒上萬個子圖,這使得大量副本可以進行快速的,細粒度的訓練步驟。Worker service 將內核分派給本地設備并在可能的情況下并行執行內核,例如通過使用多個 CPU 內核或者 GPU 流。

我們還特別針對每對源設備和目標設備類型的 Send 和 Recv 操作進行了專攻:

使用 cudaMemcpyAsync() 來進行本地 CPU 和 GPU 設備之間的重疊計算和數據傳輸

兩個本地 GPU 之間的傳輸使用對等 DMA,以避免通過主機 CPU 主內存進行高負載的復制

對于任務之間的傳輸,TensorFlow 使用多種協議,包括:

gRPC over TCP

融合以太網上的 RDMA

另外,我們還初步支持 NVIDIA 用于多 GPU 通信的 NCCL 庫

實現 TensorFlow 架構的規模性和靈活性

圖8

代碼:

WorkerService API definition

Worker interface

Remote rendezvous (for Send and Recv implementations)

內核運行

該運行時包含了 200 多個標準操作,其中涉及了數學,數組,控制流和狀態管理等操作。每個操作都有對應各種設備優化后的內核運行。其中許多操作內核都是通過使用 Eigen::Tensor 實現的,它使用 C ++ 模板為多核 CPU 和 GPU 生成高效的并行代碼;但是,我們可以自由地使用像 cuDNN 這樣的庫,就可以實現更高效的內核運行。我們還實現了 quantization 量化,可以在移動設備和高吞吐量數據中心應用等環境中實現更快的推理,并使用 gemmlowp 低精度矩陣庫來加速量化計算。

如果用戶發現很難去將子計算組合,或者說組合后發現效率很低,則用戶可以通過注冊額外的 C++ 編寫的內核來提供有效的運行。例如,我們建議為一些性能的關鍵操作注冊自己的融合內核,例如 ReLU 和 Sigmoid 激活函數及其對應的梯度等。XLA Compiler提供了一個實驗性質的自動內核融合實現。

代碼:

OpKernel?interface

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲
    +關注

    關注

    13

    文章

    4320

    瀏覽量

    85912
  • 架構
    +關注

    關注

    1

    文章

    515

    瀏覽量

    25492
  • tensorflow
    +關注

    關注

    13

    文章

    329

    瀏覽量

    60537

原文標題:實現 TensorFlow 架構的規模性和靈活性

文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    卷積神經網絡的實現工具與框架

    TensorFlow是由Google Brain團隊開發的開源機器學習框架,它支持多種深度學習模型的構建和訓練,包括卷積神經網絡。TensorFlow以其靈活性和可擴展性而聞名,適用于研究和生產環境。 特點:
    的頭像 發表于 11-15 15:20 ?281次閱讀

    面對快速迭代的技術,怎能忽視設備升級的高效與靈活性

    競爭的商業環境中,技術的飛速迭代和業務需求的持續變化,現場部署的效率與靈活性已成為衡量項目成功與否的關鍵因素之一。企業為了搶占市場先機,必須迅速完成新設備的部署與舊
    的頭像 發表于 11-05 08:03 ?221次閱讀
    面對快速迭代的技術,怎能忽視設備升級的高效與<b class='flag-5'>靈活性</b>?

    使用低成本MSPM0 MCU提高電池管理設計的靈活性

    電子發燒友網站提供《使用低成本MSPM0 MCU提高電池管理設計的靈活性.pdf》資料免費下載
    發表于 09-07 10:53 ?0次下載
    使用低成本MSPM0 MCU提高電池管理設計的<b class='flag-5'>靈活性</b>

    使用低成本MSPM0 MCU提高電子溫度計設計的靈活性

    電子發燒友網站提供《使用低成本MSPM0 MCU提高電子溫度計設計的靈活性.pdf》資料免費下載
    發表于 09-07 09:46 ?0次下載
    使用低成本MSPM0 MCU提高電子溫度計設計的<b class='flag-5'>靈活性</b>

    納米軟件帶您了解電源自動測試設備的儀器靈活接入與擴展

    在ATECLOUD智能云測試平臺上開發的電源自動測試系統,對比傳統自動化測試系統,其獨特之處在于擁有極為靈活的系統架構。這種架構靈活性體現在自動化測試的
    的頭像 發表于 09-03 16:06 ?272次閱讀
    納米軟件帶您了解電源自動測試設備的儀器<b class='flag-5'>靈活</b>接入與擴展

    使用BQ27Z746實現反向充電保護的設計靈活性

    電子發燒友網站提供《使用BQ27Z746實現反向充電保護的設計靈活性.pdf》資料免費下載
    發表于 08-30 11:45 ?0次下載
    使用BQ27Z746<b class='flag-5'>實現</b>反向充電保護的設計<b class='flag-5'>靈活性</b>

    探索中國星坤FPC連接器:電子設備靈活性與可靠雙重保障

    了電子設備設計中的一顆璀璨明星。 ? FPC連接器的靈活性 FPC連接器由柔性電路板構成,它擁有極高的彎曲和可塑性。這使得FPC連接器能夠適應各種需要彎曲和折疊的應用場景,無論是在復雜的曲面還是狹小的空間中,都能展現出其卓越的適應
    的頭像 發表于 08-13 16:14 ?405次閱讀
    探索中國星坤FPC連接器:電子設備<b class='flag-5'>靈活性</b>與可靠<b class='flag-5'>性</b>雙重保障

    TensorFlow是什么?TensorFlow怎么用?

    TensorFlow是由Google開發的一個開源深度學習框架,它允許開發者方便地構建、訓練和部署各種復雜的機器學習模型。TensorFlow憑借其高效的計算性能、靈活架構以及豐富的
    的頭像 發表于 07-12 16:38 ?728次閱讀

    OPSL 優勢1:波長靈活性

    與其他類型的連續激光器相比,光泵半導體激光器 (OPSL) 技術有許多優勢,包括波長的靈活性。 特別是OPSL打破了傳統技術的限制,可以通過設計與應用的波長要求相匹配。 不折不扣的波長靈活性 光泵
    的頭像 發表于 07-08 06:30 ?337次閱讀
    OPSL 優勢1:波長<b class='flag-5'>靈活性</b>

    如何提升NMEA插座的靈活性

    德索工程師說道通過模塊化設計,將NMEA插座拆分成多個獨立的模塊,每個模塊具有特定的功能和接口。這種設計方式可以使插座更加靈活,方便用戶根據實際需求進行組合和擴展。同時,模塊化設計還可以降低制造和維護成本,提高產品的市場競爭力。
    的頭像 發表于 06-19 15:48 ?279次閱讀
    如何提升NMEA插座的<b class='flag-5'>靈活性</b>

    8芯M16公頭如何提升靈活性

      德索工程師說道在電子設備的連接和傳輸中,8芯M16公頭作為一種重要的電氣連接器,其靈活性對于提高連接效率、降低故障率和增強用戶體驗至關重要。因此,本文將詳細探討如何提升8芯M16公頭的靈活性,以滿足不斷變化的電子系統需求。
    的頭像 發表于 05-25 17:48 ?261次閱讀
    8芯M16公頭如何提升<b class='flag-5'>靈活性</b>

    英特爾銳炫A系列顯卡為客戶提供了強大的性能和靈活性

    在當今快速發展的邊緣計算和人工智能領域,英特爾憑借其創新的軟硬件解決方案,為客戶提供了強大的性能和靈活性。其中,推出的英特爾銳炫 A 系列顯卡備受關注。
    的頭像 發表于 03-22 15:17 ?538次閱讀
    英特爾銳炫A系列顯卡為客戶提供了強大的性能和<b class='flag-5'>靈活性</b>

    意法半導體推出一款兼備智能功能和設計靈活性的八路高邊開關

    意法半導體新推出的八路高邊開關兼備智能功能和設計靈活性,每條通道導通電阻RDS(on)(典型值)僅為110mΩ,保護系統能效,體積緊湊,節省 PCB 空間。
    的頭像 發表于 03-12 11:41 ?560次閱讀

    利用 IO-Link 提高工業 4.0 工廠的靈活性、利用率和效率

    和其他設備。在具有各種特性的傳統自動化網絡協議中,這一點是很難有效實現的。工業 4.0 設備需要在現有網絡和不斷增加的大量本地傳感器、執行器和指示器之間建立另一層連接并實現靈活性。 為了應對這些挑戰,IO-Link 作為一種開放
    的頭像 發表于 02-13 10:12 ?786次閱讀
    利用 IO-Link 提高工業 4.0 工廠的<b class='flag-5'>靈活性</b>、利用率和效率

    納米軟件電源自動測試系統的靈活性特點詳解

    實現自動化測試的同時,也為客戶實現經濟效益最大化。該系統的靈活性體現在:儀器靈活、流程靈活、分析靈活
    的頭像 發表于 01-16 16:23 ?406次閱讀
    主站蜘蛛池模板: 麻豆AV无码蜜臀AV色哟| 久久99精品AV99果冻 | 91麻豆精品| 真实的强视频免费网站| 亚洲欧洲日韩天堂无吗| 亚洲AV无码国产精品色在线看| 双腿被绑成M型调教PLAY照片| 日韩精品亚洲专区在线影院| 人人模人人干| 日本护士喷水| 日韩一区二区三区四区区区| 日韩AV爽爽爽久久久久久 | 草莓视频cm.888tw| 草民电影网午夜伦理电影网| 99视频免费看| wwwwxxxxx中国| 成人毛片手机版免费看| 大岛优香久久中文字幕| 囯产精品一区二区三区线| 国产精品看高国产精品不卡| 国产欧美日韩中文视频在线| 国产在线观看不卡| 久久电影院久久国产| 快播av种子大全| 欧美激情性AAAAA片欧美 | 俄罗斯人与动ZOZ0| 国产99久久久欧美黑人刘玥| 国产精品久久久久久久伊一 | 芒果视频看片在线观看| 嫩草影院永久在线一二三四| 清晨紧湿爱运动h高h| 色爰情人网站| 亚洲国产精品天堂在线播放 | 韩国精品韩国专区久久| 久久热这里只有 精品| 伊人久久综合影院首页| 在线看免费毛片| a在线观看视频| 国产成人免费高清在线观看| 国产又粗又黄又爽的大片| 久久视频这有精品63在线国产 |