首頁 > 後端開發 > Python教學 > 為什麼 NumPy 在 Ubuntu 上無法分配大型數組,如何修復?

為什麼 NumPy 在 Ubuntu 上無法分配大型數組,如何修復?

Patricia Arquette
發布: 2024-11-30 14:40:11
原創
133 人瀏覽過

Why Does NumPy Fail to Allocate Large Arrays on Ubuntu, and How Can I Fix It?

無法分配具有形狀和資料類型的陣列

症狀

在Ubuntu 18 上的NumPy 中分配大型組數組時,使用者可能會遇到「MemoryError:無法指派具有形狀的陣列」錯誤。儘管系統記憶體充足,也會發生這種情況。值得注意的是,macOS 上沒有出現此類問題。

原因

問題源自於系統的過量使用處理模式。在預設模式 (0) 下,核心可能會拒絕認為實體記憶體過多的分配請求。

解決方案

解決這個錯誤:

  1. 檢查過量使用模式:

    檢查過量使用模式:

  2. 如果返回0,繼續執行步驟2。

  3. 以root 身分啟用「始終過量使用」模式:

重試陣列

重試陣列

重試數組重試陣列對於維度數組(156816, 36, 53806),資料型別為 uint8:只有當特定的陣列元素寫入時,系統才會被分配記憶體。這允許使用稀疏數組。

以上是為什麼 NumPy 在 Ubuntu 上無法分配大型數組,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板