multi-gpu

    0熱度

    1回答

    我有一個名爲Titan Z的雙GPU卡。我有Matlab 2016a試圖解決爲不同'b'值設置的稀疏Ax=b方程。泰坦Z有兩個GPU和6 GB RAM每個GPU 這是問題所在。 如果我解決1個GPU一個Ax=b問題,比方說,一個 2GB,MATLAB副本這個矩陣的「A」矩陣大小,每個GPU的顯存。 GPU-Z報告 每個GPU擁有2 GB的數據,僅1 GPU工作 如果我解決兩個Ax=b問題2 GPU

    1熱度

    3回答

    使用CUDA,多GPU上的所有GPU必須是相同的GPU模型嗎? 例如,我現在有一個Geforce 950。如果我有更多的卡片,他們都必須是950s? (如果是的話,我必須留在同一製造商?) 的回答顯示瞭如何控制CUDA每個單獨的GPU(假設GPU是所有CUDA具有相同的計算水平),和證實我可以購買不同型號的NVIDIA卡(在我花費300美元之前)並安裝在相同的CUDA安裝(因爲CUDA工具在每臺機

    2熱度

    1回答

    在this TensorFlow tutorial中,您可以使用N個GPU將N個小批量(每個包含M個訓練樣本)分配給每個GPU並同時計算梯度。 然後,您對從N個GPU中收集的漸變進行平均並更新模型參數。 但這與使用單GPU來計算N * M個訓練樣本的梯度,然後更新參數的效果相同。 因此,我認爲唯一的優點是可以在相同的時間內使用更大尺寸的微型批次。 但是大型小批量一定更好嗎? 我以爲你不應該使用一個

    1熱度

    2回答

    Here是在TensorFlow中訓練序列到序列模型的非常好的教程。我只是有興趣知道是否有分佈式版本哪些槓桿一套GPU在單臺機器獲得更好的性能? TensorFlow white paper已經提到,它是可能的培養大量多層迴歸神經網絡(參見圖8和「模型平行訓練」部分),如Sequence to Sequence Learning with Neural Networks使用。有人知道目前的教程是否

    0熱度

    1回答

    在玩了一段時間的當前分佈式訓練實現後,我認爲它將每個GPU視爲一個單獨的工作者。但是,現在在一個盒子中有2〜4個GPU 。採用單盒多GPU方法先計算單個盒子中的平均梯度,然後跨多個節點同步,是不是更好?這樣就可以緩解I/O流量,這總是數據並行性的瓶頸。由於SyncReplicasOptimizer直接將優化器作爲輸入,所以我被告知使用當前實現將單個盒子中的所有GPU作爲工作人員,但我無法弄清楚如何

    0熱度

    1回答

    我使用tensorflow訓練我的第一個多GPU模式。 正如本教程所述,變量被固定在CPU上,並且使用name_scope在每個GPU上運行。 正如我運行一個小的測試並記錄設備放置,我可以看到的OPS被放置到與TOWER_1/TOWER_0前綴各自GPU但變量沒有被放置在所述CPU上。 我缺少的東西還是我理解設備放置日誌不正確。 附加的測試代碼和這裏是device placement log 由於

    1熱度

    2回答

    的Tensorflow培訓,特別是複驗模型的實現使用分佈式Tensorflow在以下紙張https://github.com/Russell91/TensorBox給出。 我們使用之間,圖的異步執行的分佈式tensorflow設置,但結果是非常令人驚訝的。在進行基準測試時,我們發現分佈式訓練的培訓時間比單次機器訓練多兩倍以上。任何有關可能發生的事情以及還有什麼可能會被嘗試的線索都會得到真正的讚賞。

    0熱度

    1回答

    我正在嘗試使用張量流來訓練序列模型。我在教程中看到,桶有助於加速培訓。到目前爲止,我只能使用一個桶進行訓練,並且只使用一個gpu和多個桶來使用或多或少的開箱即用代碼,但是當我嘗試使用具有多個gpus的多個桶時,出現錯誤,指出 參數無效:您必須養活佔位符張量「gpu_scope_0/encoder50_gpu0」與D型的值INT32 從錯誤中,我可以告訴大家,我不是正確聲明input_feed,所以

    0熱度

    2回答

    在OpenCL中,有可能由多個GPU組成的系統隱式劃分作業,而程序員不明確劃分工作負載? 例如說我有一個由1個SM192核心GPU組成的GPU,並運行一個矩陣乘法,這個算法正常工作。現在我添加了另一個相同的GPU,並且OpenCL使用GPU來計算它的矩陣乘法,而不是程序員將工作負載分配給每個GPU。

    0熱度

    1回答

    我有兩個GPU,一個內核,一個上下文和兩個命令隊列(每個GPU一個)。我曾嘗試在每個命令隊列運行的循環中運行它們,然後我嘗試了queue.finish()和queue.flush(),希望能夠同時在GPU上運行這些工作。 但實際情況是,數據首先發送到一個設備,GPU執行其工作,然後另一個GPU開始工作。它需要兩倍於單個GPU的時間。這不是我打算實現的! 雖然我也將緩衝區讀回主機代碼,並且有人可能認