2017-05-23 41 views
0

我使用GPU(1080 ti)訓練了一個神經網絡。 GPU上的訓練速度遠遠優於使用CPU。在服務TensorFlow模型的過程中使用GPU有什麼影響?

目前,我想用TensorFlow Serving服務此模型。我只是想知道在服務過程中使用GPU對性能有相同的影響嗎?

由於培訓適用於批處理,但推理(服務)使用異步請求,您是否建議在使用TensorFlow服務爲模型提供服務時使用GPU?

回答

1

你仍然需要在圖上做很多張量操作來預測一些東西。因此,GPU仍然提供了推理的性能改進。看看這個nvidia paper,他們沒有測試他們對TF的東西,但它仍然是相關的:

我們的研究結果表明,GPU擁有先進設備,最先進的推論 性能和能效,使他們對於任何想要在現場部署經過訓練的神經網絡的人來說,選擇平臺 。特別是,Titan X的性能比16核Xeon E5 CPU高出5.3至6.7倍,同時實現了3.6至4.4 倍的高能效。

1

簡短的回答是肯定的,在訓練之後,你將獲得大致相同的GPU加速。有一些小的資格。

您在訓練中運行了2遍所有發生在GPU上的數據,在前饋推理期間您的工作量較少,因此相對於計算將花費更多時間將數據傳輸到GPU內存比在訓練中。這可能是一個小小的區別。如果這是一個問題,你現在可以異步加載GPU(https://github.com/tensorflow/tensorflow/issues/7679)。

您是否確實需要GPU來進行推理取決於您的工作量。如果您的工作量不是過分苛刻,那麼您可能會放棄使用CPU,畢竟,計算工作量不到每個樣本的一半,因此請考慮每秒需要提供的請求數量並測試是否你超載你的CPU來實現這一點。如果你這樣做,有時間讓GPU出來!

相關問題