症狀
在Ubuntu 18 上的NumPy 中分配大型組數組時,使用者可能會遇到「MemoryError:無法指派具有形狀的陣列」錯誤。儘管系統記憶體充足,也會發生這種情況。值得注意的是,macOS 上沒有出現此類問題。
原因
問題源自於系統的過量使用處理模式。在預設模式 (0) 下,核心可能會拒絕認為實體記憶體過多的分配請求。
解決方案
解決這個錯誤:
檢查過量使用模式:
檢查過量使用模式:
如果返回0,繼續執行步驟2。
重試陣列
重試陣列重試數組重試陣列對於維度數組(156816, 36, 53806),資料型別為 uint8:只有當特定的陣列元素寫入時,系統才會被分配記憶體。這允許使用稀疏數組。以上是為什麼 NumPy 在 Ubuntu 上無法分配大型數組,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!