簡體   English   中英

在 Keras、Tensorflow 上 CPU 使用率超過 GPU 使用率

[英]CPU usage is more than GPU usage on Keras, Tensorflow

我想教一個圖像分類 CNN,並使用 Keras。

圖片尺寸為 300x300x3。

我用 2M 參數訓練了一個 CNN,我使用 Keras 的 MobileNet 進行遷移學習,但是我凍結了最后 63 層並在底部添加了密集層,最后一層有 2 個單元和 Softmax 激活。

為了進行預測,我加載了 h5 文件並使用 OpenCV 視頻捕獲來獲取視頻幀,對於每一幀我使用 model.predict(img_array)。

當我查看 Windows 10 的任務管理器時,我看到 Python 腳本使用了處理器的 %80 但 GPU 的 %2。 這種 CPU 使用會導致我的筆記本電腦出現滯后。

如何減少 CPU 使用率並強制 Keras 使用 GPU 進行計算?

我的筆記本電腦上裝有 Nvidia Rtx 2060 4GB 和 Intel Core i7-9750H。 Tensorflow 2.1 和 Keras 2.3.1 OpenCV 4.1

我試過了,但實際上沒有任何改變。

tf.config.threading.set_inter_op_parallelism_threads(12)
tf.config.threading.set_intra_op_parallelism_threads(12)

with tf.device(\gpu:0):
     model.predict(img_array)

此致。

編輯:

我通過在 predict 方法中聲明 steps 參數將 CPU 使用率降低到 %20。

請檢查您的 pip 列表或 conda 列表。

有時,我們錯誤地同時安裝了tensorflowtensorflow-gpu 如果兩者都有,系統將自動選擇 tensorflow,即 CPU 之一。

如果是這種情況,請刪除“tensorflow”,只保留“tensorflow-gpu”。

如果您首先沒有看到 tensorflow-gpu,請嘗試使用以下命令在 conda 上安裝它:

conda create -n [EnvironmentName] python=3.6

conda activate [環境名稱]

conda install -c conda-forge tensorflow-gpu==1.14

它將評估您需要哪個版本(CUDA、CUDNN 等),然后將其直接下載並安裝到您的環境中。 然后從此環境運行您的python文件。 祝你好運^_^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM