我開發了一個模型,它使用幾個大型 3 維數據集(按 (1e7, 10, 1e5) 的順序),并對這些數據集的切片進行數百萬次讀?。ê蛿登Т螌懭耄┱{用。到目前為止,我發現用于進行這些調用的最佳工具是 numpy.memmap,它允許在 RAM 中保存最少的數據,并允許干凈的索引和直接在硬盤驅動器上非常快速地調用數據。numpy.memmmap 的缺點似乎是性能相當不均勻 - 讀取數組切片的時間在調用之間可能會相差 2 個數量級。此外,我使用 Dask 并行化腳本中的許多模型函數。Dask DataFrames 對大型數據集進行數百萬次調用的性能如何?將 memmap 替換為 DataFrame 會顯著增加處理時間嗎?
1 回答

慕碼人8056858
TA貢獻1803條經驗 獲得超6個贊
您需要使用 Dask Array 而不是 Dask Dataframe。性能通常與 Numpy 相同,因為 Numpy 執行實際計算。
根據用例,優化可以加快計算速度。
調度程序的開銷會降低性能。這僅適用于將數據拆分為多個分區的情況,并且通常可以忽略。
- 1 回答
- 0 關注
- 192 瀏覽
添加回答
舉報
0/150
提交
取消