物美價廉: GROMACS 2018在GPU節點上的使用 (4)

2021-02-14 分子模擬之道

■原文 More bang for your buck: Improved use of GPU nodes for GROMACS 2018, DOI: 10.1002/jcc.26011[1]■翻譯: 劉玉傑; 校對: 李繼存

摘要

我們確定了在Linux計算集群上, GROMACS 2018程序運行分子動力學(MD)模擬的最佳硬體. 因此, 我們在各種計算節點上對GROMACS性能進行了基準測試, 並將其與節點成本聯繫起來, 其中的成本可能也包括能源和冷卻成本. 與我們早先使用GROMACS 4.6在2014年的硬體上進行的調查一致, 消費級GPU節點的性價比遠高於CPU節點. 然而, 在GROMACS 2018中, CPU到GPU處理能力的最佳平衡更多地轉向了GPU. 因此, 與針對舊GROMACS版本優化的節點相比, 針對GROMACS 2018及更高版本進行優化的節點具有更高的性價比. 而且, 向GPU處理的轉移使得使用新GPU升級舊節點變得更便宜, 得到的性能與相近的全新硬體基本相同.

結果對GROMACS性能發展的評估

圖7: GPU節點上GROMACS 4.6-2018版的性能的演變. 在所有實例中, 短程非鍵相互作用都卸載到GPU, 對於2018版, 也可以將PME網格計算部分卸載到GPU(最頂部的黑條). Tesla V100和GTX 1080 GPU掛載到一個帶有兩個Xeon E5-2620v4處理器(2×8核)的節點上. Tesla K80 GPU掛載到一個帶有兩個Xeon E5-2620v3處理器(2×6核)的節點上.

如圖7所示, 由於前面所述的算法改進和優化, 自我們之前的研究以來, 對4.6和2016版之間的最初四個版本, 在先前的硬體(例如Tesla K80)上模擬性能提高了65%, 在新一點的硬體(例如GTX1080和Tesla V100)是提高達75%-90%. 對在CPU上使用PME的2016和2018版之間, 我們測量得到了6%-9%的性能提升(圖7中的淺藍色條和深藍色條), 這主要歸功於動態修剪算法. 我們預計這種優勢會隨著未來GPU硬體的發展變得更大, 因為計算時GPU卸載越快, 該算法的好處就越大. 對於給定的基準測試系統和伺服器設置, 我們觀察到, 使用最新GPU時額外的PME卸載可以提升35%-84%的性能(見圖7中的黑條). 同時, 在傳統硬體設置上, 卸載到老一代的Tesla K80會導致速度變慢. 為了更好地理解這種性能的改變, 我們下面將探討GROMACS 2018中異構PME卸載代碼的性能特性.

圖8: GROMACS 2018性能與每個GPU使用CPU核心的關係. GTX 1080, RTX 2080和Tesla V100卡安裝在帶有Xeon E5-2620v4處理器(2×8核)的伺服器節點上, 而Tesla K80安裝在帶有兩個E5-2620v3處理器(2×6核)的節點上. 實線表示PME卸載到GPU時的性能, 而帶有較小符號的虛線表示使用CPU計算PME時的性能(水平軸給出核心數目).

我們的評估基準測試是在代表GPU密集設置的伺服器上進行的, 這些伺服器由具有相當適度性能的Xeon CPU和快速加速器組成. 一般而言, 這對GROMACS具有挑戰性, 這可以從性能與所用核心數的強烈依賴關係看到(圖8中的虛線). GROMACS 2018開發的主要性能目標之一是, 在平衡硬體上達到接近先前卸載方案(僅限非鍵)的峰值模擬速度, 但GPU只使用少數CPU核心. 在我們的基準測試硬體設置中, GTX 1080(圖8中的淺綠色曲線)與E5-2620v4的大約12-14個核心相結合可以認為是平衡設置. 對於這兩個系統, 每個GPU只使用四個核, PME卸載功能可以分別達到無卸載峰值的80%和90%.

2016版需要許多快速核心才能在CPU和GPU之間實現良好的負載平衡, 而在2018版中, 在大多數情況下, 像我們的基準測試系統那樣, 只有4-6個較慢(典型伺服器)的核就足以達到>80%的峰值模擬性能(例如使用一個節點的16個核). 工作站的核心通常核心, 但很快. 相比之下, 伺服器通常擁有比工作站更多但更慢的核心. 為了比較兩種節點類型的原始CPU處理能力, 我們考慮"core-GHz", 即核心數目乘以主頻. 我們發現, 使用中到高端GPU, 10-15 "core-GHz"通常足以在典型的生物分子模擬任務(如我們所用的)中接近峰值性能. 但是, 如果在卸載非鍵和PME計算後CPU還有許多剩餘工作要做(例如, 大量的成鍵相互作用或自由能計算設置), 可能需要更多的CPU核心才能實現最佳平衡. 此外, 當可以使用更大更快的GPU時, 這種平衡當然會發生偏移. 例如Tesla V100(或性能相近的GeForce RTX 2080Ti)在性能達到平臺期(紫色線條)之前實際上確實需要大約8-10個核心, 相當於16-20 "core-GHz". 然而, GPU尺寸的增加也為計算帶來了挑戰: 大型設備難以飽和, 無法通過像MEM基準測試等常見工作負載獲得峰值吞吐量, 這就是為什麼Tesla V100的優勢相對於RTX 2080較小, 尤其是與更大的RIB基準測試(圖8中的紫色和深綠色線)進行比較時.

PME卸載的另一個好處是, 可實現的峰值性能也會提高, 並且在使用快速GPU的情況下, 可以實現顯著的性能提升(見圖8中的深綠色和紫色線條), 這在以前使用較慢CPU的情況下是不可能實現的. 相反, 如果使用早期GROMACS版本的最佳CPU-GPU設置, PME卸載可能不會提高性能. 特別是在傳統GPU硬體上, PME卸載通常較慢, 這反映在Xeon E-2620v3 CPU與Tesla K80基準測試中, 其中每個GPU大約使用5-6核心.

總之, 由於動態修剪算法和PME卸載的結合, GROMACS 2018版可以將更少和/或更慢的CPU核心與更快的GPU結合起來使用, 這特別適用於GPU密集型硬體的吞吐量研究. 如果使用的硬體接近2016版的平衡設置, PME卸載並不會帶來顯著的性能提升, 但新代碼為使用進一步加速器升級提供了可能. 作為一個例子, 一個8核工作站的CPU(如AMD Ryzen 7 2700), 大約會與圖8中的10-16個核心一樣快, 當與GTX 1080一起使用時, PME卸載幾乎不會提升性能, 即便使用RTX 2080, 改進也不大(假設工作負載與我們的相似). 但是, 為這樣的工作站添加第二塊GPU幾乎會使性能翻倍.

運行MD的最佳硬體

表3: GROMACS 2018單節點性能(兩次運行平均)和相應的性價比. 給出了在具有N個GPU的節點上, N個模擬的整體性能(4R除外, 它表示運行了4次模擬).

U處理器 AMD/Intel插槽×核主頻(GHz)掛載GPUMEM(ns/d)RIB(ns/d)≈淨價(€)性價比 MEM
(ns/d/122 €)性價比 RIB
(ns/d/1530 €)1E3‐1270v5a1×43.6107062.963.1413005.783.611E3‐1270v5a1×43.61070Ti70.053.2313956.133.541E3‐1270v5a1×43.6108071.163.114406.033.291E3‐1270v5a1×43.61080Ti84.633.816306.333.57









1E3‐1240v6b1×43.7–11.70.6910401.371.021E3‐1240v6a1×43.7107068.723.4813506.213.941E3‐1240v6a1×43.7108078.043.4814606.523.651E3‐1240v6a1×43.71080Ti95.454.3816507.064.061E3‐1240v6b1×43.72080110.694.8516808.044.421E3‐1240v6b1×43.72080Ti133.265.7720907.784.22









1Core i7‐6700Ka1×44.0107067.693.2813506.123.721Core i7‐6700Ka1×44.01080Ti92.524.0316506.843.74









1Silver 4110a1×82.11080Ti97.635.2719106.244.221Silver 4110a1×82.11080×2131.176.9828405.633.761Silver 4110a1×82.11080Ti×2155.668.8432205.94.2









1E5‐2630v4a1×102.2107073.613.8416305.513.61E5‐2630v4a1×102.21070Ti82.414.0216955.933.631E5‐2630v4a1×102.2108083.423.8317405.853.371E5‐2630v4a1×102.21080Ti104.014.9919306.573.961E5‐2630v4b1×102.22080115.415.8819607.184.591E5‐2630v4b1×102.22080Ti146.287.2723707.534.691E5‐2630v4a1×102.21080Ti×2179.518.5828607.664.591E5‐2630v4b1×102.22080×2201.3310.1329208.415.31









1Silver 4114a1×102.21070Ti81.314.4918555.353.71Silver 4114a1×102.2108082.894.3419005.323.491Silver 4114a1×102.21080Ti103.95.5720906.064.081Silver 4114b1×102.22080Ti147.297.8525307.14.751Silver 4114a1×102.21080×2142.77.2930205.763.691Silver 4114a1×102.21080Ti×2165.199.5834006.074.31









DRyzen 1950Xb1×163.41080Ti94.95.0124404.753.14DRyzen 1950Xb1×163.42080106.085.5624705.243.44DRyzen 1950Xb1×163.41080Ti×2172.629.1630506.94.6DRyzen 1950Xb1×163.42080×2196.7310.0831107.724.96DRyzen 1950Xb1×163.42080×3267.5112.7937508.75.22DRyzen 1950Xb1×163.42080×4332.8314.0743909.254.9









1Epyc 7401Pb1×242.0–28.712.283500111Epyc 7401Pb1×242.01080Ti×2191.669.4947204.953.081Epyc 7401Pb1×242.01080Ti×4369.0616.9659407.584.37









2Gold6148F×2c2×202.4V100×2300.7619.9523,2001.581.322Gold6148F×2c2×202.4V100×2 (4R)393.3227.2723,2002.071.8









U: 需要的機架空間(每節點計), D為桌面機箱. 性價比進行了歸一化以便其值≥1.a: 使用CUDA 8.0 + GCC 5.4 + Intel MPI 2017.b: 使用CUDA 9.1 + GCC 6.4 + Intel MPI 2017.c: 使用CUDA 10.0 + GCC 6.4 + Intel MPI 2018.

表3和圖9顯示了我們得到的當前硬體排名. 總體而言, 與沒有GPU的同類產品相比, 我們所測試的消費級GPU節點的性價比大致是3-6倍. 具有消費級GPU的新節點的性價比都非常相似; 大多數都小於1.5倍, 因此在雙對數圖中大致分布在一條等值線上(圖9). 注意, 這種相似性來自我們的硬體篩選, 並不意味著任何具有消費級GPU的節點都具有相近的性價比. 有非常多可能的硬體組合我們沒有考慮, 因為一個或多個單獨組件的高成本從一開始就排除了它們性價比的競爭性.

圖9: (整體)模擬性能與節點淨成本的關係. MEM(圓圈)和RIB(星星)根據CPU類型著色. 白色填充符號表示沒有GPU加速的節點; 虛線將GPU節點與對應的CPU連接起來. 灰色: 具有與圖1相同性價比的等值線, 右下方性價比更好. 升級了GPU的表4中的舊節點以黃色(圖例)表示.

具有良好性價比的最便宜節點, 大約從1,400歐元起, 分別是Intel E3-1270v5, E3-1240v6或Core i7-6700K CPU結合GeForce 1070(Ti). 通過將E5-2630v4或Ryzen 1950X CPU與兩個(或可能更多的)RTX 2080 GPU相結合, 能得到最佳性價比(以當前定價算), 起價為3,000歐元. 消費級GPU節點的最佳整體性能為AMD Epyc 24核心節點加四個1080Ti GPU.

考慮到空間要求, 表3中列出的大多數節點類型能夠放到一個高度單位(U)的機架空間中. 一個例外是Ryzen Threadripper 1950X, 它只能在臺式機箱中使用(如果安裝在機架中, 大約會使用4U).

替代方案: 使用最新的GPU升級現有節點

如果不願使用新硬體替換老的GPU節點, 一個可能更好的替代方案是只將GPU替換為功能更強大的新型GPU. 與舊版本相比, GROMACS 2018會將更多相互作用的計算卸載到GPU上, 因此GROMACS 2018需要GPU提供更多的計算能力, 但對CPU計算能力的需求更小. 因此, 幾年前的CPU型號通常可以理想地與現代GPU一起使用.

例如, 作為2014年調查的一部分, 對具有兩個K20Xm GPU的雙十核節點, 通過使用最新的RTX 2080 GPU替換舊的GPU, 對於MEM基準測試所得的性能提升為原來的3.5倍. 表4列出了不同升級方案的性能提升. 每一部分的頂行給出了GROMACS 2018在舊節點上的性能, 而下行顯示了升級GPU後的性能提升. 取決於具體的新舊GPU類型, 只需要花費比較低的成本購買GPU而不是整個節點, 就可以輕鬆地將整體性能提升為原來的兩倍. 性能方面, 四個1080Ti GPU與新的EPYC 7401處理器(24核)一起使用, 或與兩個舊的E5-2670v2處理器(2×10核)一起使用, 沒有太大區別. 圖9中的黃色和橙色符號顯示了這些節點的性能與使用現代GPU升級的成本關係.

能源效率

為了確定節點在其使用周期內的總成本, 我們確定了其功耗. 假設能源和製冷的淨成本為每千瓦時0.2歐元, 我們計算了所選節點型號的總成本, 即運行五年的硬體和能源成本之和(圖10, 能源和冷卻在五年中每一年的成本). 對於所考慮的節點型號和平均3-5年的壽命, 硬體和能源的成本是相似的. 然而, 一般情況下並非如此, 例如使用專業GPU, 硬體成本可輕鬆高達三倍.

圖10: 選定節點型號的總成本分解圖, 能源和冷卻成本以每千瓦時0.2歐元計, 節點壽命為五年.

圖11顯示了所選節點型號的能源效率與其GROMACS性能的關係. 使用GROMACS 2018, 除模擬性能更高外, GPU節點的每瓦性能是CPU節點的兩倍以上.

圖11: 所選節點型號對RIB測試系統的性能與其能效的關係. 無GPU的節點(白色填充)性能和能效都低, 與GROMACS版本和CPU代數無關. 使用新GPU的GROMACS 2018(黑色和綠色填充符號)具有最佳能效.

通過將硬體和能源成本與生成的軌跡量聯繫起來, 我們得出了在不同節點型號上生成MD軌跡的總成本(圖12). 我們得到了三個主要觀察結果: (1) 在沒有消費級GPU的節點上, 軌跡成本最高(圖中標有星號); (2) 對於使用2014年硬體的GROMACS 4.6, 最佳GPU節點的軌跡成本是單純CPU節點的0.5~0.6倍; (3) 使用GROMACS 2018和當前硬體, 該因子減少到約0.3.

圖12: 假定運行五年情況下, 對RIB基準測試體系所選節點型號的軌跡成本, 包括能源和冷卻成本, 以每千瓦時0.2歐元計. 圖的上半部分展示了2014年使用GROMACS 4.6[16]所得的結果, 下半部分給出了GROMACS 2018在最近的硬體, 使用新GPU升級的舊硬體(最低的三個條形圖)上的結果. 無GPU節點的軌跡生產成本最高(星號).

粗粒化模型

我們使用全原子基準測試所用節點型號的一部分運行了Martini體系, 結果如圖13所示. 總體情況與全原子基準測試結果(圖9)非常相似, 但有一些差別.

圖13: (整體)模擬性能與節點淨成本的關係, 類似圖9但基於兩個Martini力場粗粒化基準測試(囊泡和膜)的結果. VES(正方形)和BIG(三角形)符號的顏色表示CPU類型. 白色填充符號表示無GPU加速的節點; 虛線將GPU節點與對應的CPU連接起來. 使用新GPU的舊節點以橙色(圖例)表示.

類似全原子系統, 具有消費級GPU節點的性價比明顯高於CPU節點. 然而, CPU節點和消費級GPU節點之間的差距沒有全原子情況下的那麼明顯. 對於小的VES體系, 性價比倍數大約為2-4, 對於BIG膜, 倍數為1.5-2. 與全原子情形一樣, 使用最新消費級GPU升級的舊節點具有最好的性價比.

雖然Martini粗粒化MD體系的工作量與全原子系統的工作量(粒子密度較低, 無PME網格)有很大不同, 但事實證明, 對於全原子MD而言最佳的節點型號同樣非常適合用於運行粗粒化模擬.

對GROMACS 2018的結論

在2014年, 我們發現, 與無GPU的節點或具有專業GPU的節點相比, 具有消費級GPU的節點提供了效果最佳, 因為它們每歐元所產生的軌跡量顯著更高. 對當前硬體, GROMACS 2018也具有相同的結論. 此外, 現有差距已經明顯增大: 考慮到節點的原始價格, 現在使用GROMACS 2018, 消費級GPU節點所產生的軌跡可以增加至三到六倍, 相比之下, 2014年使用GROMACS 4.6可以增加至兩到三倍. 如果包括能源和冷卻成本, 這個倍數從2增加到大約3.

除短距離非鍵相互作用之外, 這種顯著的性能改進可能是因為將PME網格計算卸載到了GPU上. PME卸載使得最佳硬體平衡更傾向於消費級GPU. 通過性價比確定的最佳CPU/GPU組合, 每個1080Ti或2080 GPU大約需要4到8個CPU核心; 一個有用的一般性經驗規則是, 對於類似本文所示的模擬體系, 10-15 "core-GHz"就足夠了, 而升級到15-20 "core-GHz"(或者具有額外CPU計算能力)的機器在將來也是可以的.

此外, PME卸載為特定於舊GROMACS版本的GPU節點提供了廉價升級的可能性. 將舊的GPU替換為目前最先進的型號, 而其他設備保持不變, GROMACS 2018就可以達到最佳CPU/GPU平衡, 這樣對GPU的投資相對較小.

展望

因為硬體在不斷發展, 將來可以使用新的組件(CPU, GPU, 裸機, 主板等), 很可能將來會出現比本文所確定的性價比更高的配置. 如果你在使用那些本文未提及的硬體配置, 我們希望你能從https://www.mpibpc.mpg.de/grubmueller/bench下載我們的基準測試輸入文件, 這些文件採用CC許可協議, 你可以使用它們進行自己的基準測試, 這樣我們在更新表格時可以包含你的數據.

值得指出的是, 本文給出的結果確實適用於GROMACS 2019版, 在撰寫本文時它的代碼剛剛發布. 在性能方面, 這個新版本只有適度的提高, 但也有一些值得注意的地方. 新版本可以使用OpenCL支持PME卸載, 這在AMD GPU上特別有用, 特別是考慮到(現在已經是上一代的)Radeon Vega GPU相對於其競爭者的優勢. 當將它們的性價比與Tesla GPU進行比較時, 它們的優勢尤為明顯(見圖3和4).

2019版本的另一個值得注意的附加功能是, 可以使用CUDA卸載(大多數)成鍵相互作用. 但是, 由於GROMACS具有針對成鍵相互作用高度優化的SIMD內核, 因此只有在可用CPU資源較低或模擬系統中包含大量成鍵相互作用的情況下, 成鍵卸載功能才會提升性能. 對於我們的基準測試, 這意味著對於只需幾個核心與快速GPU配對的情況性能會得到改善, 如圖8中紫色和深綠色線在1-3核心範圍內所示.

參考

[1] More bang for your buck: Improved use of GPU nodes for GROMACS 2018, DOI: 10.1002/jcc.26011: https://onlinelibrary.wiley.com/doi/full/10.1002/jcc.26011


相關焦點

  • 物美價廉: GROMACS 2018在GPU節點上的使用 (1)
    DOI: 10.1002/jcc.26011[1]■翻譯: 劉玉傑; 校對: 李繼存摘要我們確定了在Linux計算集群上, GROMACS 2018程序運行分子動力學(MD)模擬的最佳硬體.因此, 我們在各種計算節點上對GROMACS性能進行了基準測試, 並將其與節點成本聯繫起來, 其中的成本可能也包括能源和冷卻成本. 與我們早先使用GROMACS 4.6在2014年的硬體上進行的調查一致, 消費級GPU節點的性價比遠高於CPU節點. 然而, 在GROMACS 2018中, CPU到GPU處理能力的最佳平衡更多地轉向了GPU.
  • GROMACS如何使用其他水模型
    由於真實情況下水分子的電量分布並不是完全在原子上的,如氧原子的一部分負電量就在H-O-H的對角線上,還有兩個電子對處在H-O化學鍵的延長線上。為了得到更加真實的水分子模型,四個粒子以上的模型就被應用到分子動力學模擬中。其中最著名的有TIP4P模型。該模型在三個原子中間,H-O-H化學鍵的對角線上多了一個不含質量,只帶電量的點。
  • 使用GROMACS計算紅外光譜
    , GMX2019.6測試通過上一篇博文 【整理】使用分子動力學模擬紅外光譜[1] 中整理了根據分子動力學模擬計算紅外光譜的理論基礎知識, 既然已經知道了計算方法, 剩下的就是如何實現了.首先將不易讀寫的trr文件轉換為容易讀寫的gro文件, 然後將其中的速度乘上前面得到的電荷值, 得到新的gro文件, 再將替換後的gro文件轉換為trr文件.最後我們就可以使用替換速度值後的trr文件計算光譜了.代碼見 gmxtool[3] .
  • 你知道GROMACS中各文件的用途嗎?
    小編很早就想寫一點關於Gromacs的東西,可是Gromacs涉及東西太多了:從安裝到使用,從分子動力學模擬基本知識到最終的數據分析,內容太多導致小編不知道從何處入手。然而,正所謂不積跬步,無以至千裡,今天下定決心,首篇文章先介紹一些Gromacs使用中涉及到的文件。Gromacs是一個用來進行分子動力學模擬的軟體。
  • 使用GPU.js改善JavaScript性能
    同時,web worker仍然運行在CPU上,但是運行在不同的線程上。在該初學者指南中,我們將演示如何使用GPU.js執行複雜的數學計算並提高JavaScript應用的性能。什麼是GPU.js?GPU.js是一個針對Web和Node.js構建的JavaScript加速庫,用於在圖形處理單元(GPGPU)上進行通用編程,它使你可以將複雜且耗時的計算移交給GPU而不是CPU,以實現更快的計算和操作。還有一個備用選項:在系統上沒有GPU的情況下,這些功能仍將在常規JavaScript引擎上運行。
  • 如何在GPU上設計高性能的神經網絡
    gpu對於機器學習是必不可少的。可以通過AWS或谷歌cloud輕鬆地啟動這些機器的集群。NVIDIA擁有業內領先的GPU,其張量核心為Volta V100和安培A100加速哪種方法最適合你的神經網絡?為了以最低的成本設計出最快的神經網絡,機器學習架構師必須解決許多問題。此外,僅僅使用帶有GPU和張量核心的機器並不能保證最高性能。
  • 基於 Kubernetes 的 GPU 類型調度實現
    因此,在這篇文章中,我將介紹才雲科技在這一點上的經驗,談一談我們如何基於 Kubernetes 靈活實現 GPU 類型的調度。問題:原生 Kubernetes 如何讓 Pod 使用指定類型的 GPU?假設集群中有兩個節點有 GPU:節點 A 上有兩個 Tesla K80,節點 B 上有兩個 Tesla P100。
  • TensorFlow Lite的 GPU 委託代理(Delegate)是什麼
    Caffe的MobileNetV1結構是沒有reshape2和squeeze2操作的,其實在做端側框架性能調研時,源自不同訓練框架的模型會有不同,結合本身推理框架的底層實現上,對性能可能有不小的影響;在 GPU 上,張量數據被分成4個通道。因此,計算一個 [B,H,W,5] 的張量和計算 [B,H,W,8]的效果是一樣的,但是它們都比運行 [B,H,W,4] 的性能要差的多。
  • 超算安裝GPU-based軟體 (以pytorch為例)
    一般的超算的拓撲結構是若干個登陸節點+若干個交換機+大量計算CPU節點+大量GPU計算節點+一個(或若干個)存儲節點+管理節點。其中存儲節點的共享存儲可以被所有節點訪問。一般運作方式是,如果我的計算依賴非常共性的軟體,我可以找超算管理員安裝,使用的時候可以通過module load來初始化自己所需軟體。
  • 基於VMware Bitfusion的GPU共享技術使用場景討論
    我們通過創建4臺虛擬機,每臺虛擬機通過vSphere的直通技術使用2塊GPU V100(32GB顯存)的GPU卡。課程場景的資源,通過Horizon虛擬桌面提供。具體流程如下:老師通過在虛擬機中安裝課程所需的軟體,製作課程模板。
  • 【翻譯】Sklearn與TensorFlow機器學習實用指南 ——第12章 設備和伺服器上的分布式TensorFlow(上)
    例如,要使 TensorFlow 只佔用每個 GPU 內存的 40%,您必須創建一個ConfigProto對象,將其gpu_options.per_process_gpu_memory_fraction選項設置為 0.4,並使用以下配置創建session:config = tf.ConfigProto() config.gpu_options.per_process_gpu_memory_fraction
  • 2020年深度學習如何挑選 GPU?這篇 GPU 最全攻略請查收
    深度學習是一個對計算有著大量需求的領域,從一定程度上來說,GPU的選擇將從根本上決定深度學習的體驗。
  • 2020 年深度學習如何挑選 GPU?這篇 GPU 最全攻略請查收
    的選擇將從根本上決定深度學習的體驗。由於TPU具有複雜的並行基礎結構,因此如果使用多個雲TPU(相當於4個GPU),TPU將比GPU具有更大的速度優勢。因此,就目前來看,TPU更適合用於訓練卷積神經網絡。3 多GPU並行加速卷積網絡和循環網絡非常容易並行,尤其是在僅使用一臺計算機或4個GPU的情況下。TensorFlow和PyTorch也都非常適合併行遞歸。
  • 機器學習平臺在Kubernetes上的實踐
    GPU任務設置容忍(Toleration):讓GPU任務可以調度在GPU節點<#if (gpu > 0)>    tolerations:        - effect: NoSchedule          key: nvidia.com/gpu          value: "true"     線上與測試任務隔離線上與測試任務
  • Justin GROMACS教程: 從蛋白質到哈密頓微擾
    多年來, GROMACS一直是世界上運行速度最快的分子動力學代碼之一[1]. 隨著硬體和算法的發展, 模擬軌跡的長度也不斷增加, 這使得GROMACS成為流行的分子動力學模擬程序.這裡提供了7個教程, 以適當的方式指導用戶使用GROMACS來準備和進行不同類型的分子動力學模擬.
  • 【經驗】深度學習如何挑選GPU?
    深度學習是一個對計算有著大量需求的領域,從一定程度上來說,GPU的選擇將從根本上決定深度學習的體驗。
  • 2020年深度學習如何挑選GPU?這篇 GPU 最全攻略請查收
    關注 極市平臺 公眾號 ,回復 加群,立刻申請入群~深度學習是一個對計算有著大量需求的領域,從一定程度上來說,GPU的選擇將從根本上決定深度學習的體驗。因此,選擇購買合適的GPU是一項非常重要的決策。那麼2020年,如何選擇合適的GPU呢?
  • PyTorch中使用DistributedDataParallel進行多GPU分布式模型訓練
    例如,如果你要使用兩個GPU和32的批處理大小,一個GPU將處理前16條記錄的向前和向後傳播,第二個處理後16條記錄的向後和向前傳播。這些梯度更新然後在gpu之間同步,一起平均,最後應用到模型。worker使用all-reduce算法來同步他們各自的梯度,本地計算所有節點上相同的平均梯度。每個worker都將梯度更新應用到它的本地模型副本上。下一批訓練開始。
  • 使用GPU和Theano加速深度學習
    要做到這一點,我們需要在我們的工程目錄中新建一個.theanorc文件,該文件內容如下:[global] device = gpu floatX = float32 [nvcc] fastmath = True這個.theanorc文件必須放置在主目錄中。
  • 居然有免費的GPU可以跑深度學習代碼!
    Colab中的GPU首先我們要讓Colab連上GPU,導航欄-->編輯-->筆記本設置-->選擇GPU接下來我們來確認可以使用Tensorflow連接到GPUimport= tf.random_normal((100, 100, 100, 3)) net_gpu = tf.layers.conv2d(random_image_gpu, 32, 7) net_gpu = tf.reduce_sum(net_gpu)sess = tf.Session(config=config) # 確保TF可以檢測到GPU