我有一個系統 - 處理器2.8 GHz,20個物理內核,40個邏輯核心,128 GB RAM和4 TB硬盤驅動器。充分利用CPU和內存
場景:
我運行3(獨立)蟒鹼處理/從文件中讀取數據並將其寫入到數據庫腳本(獨立地運行)。他們花費時間,而不使用CPU和內存100%甚至不到40%。
這是爲什麼? (我認爲這取決於操作系統)
如何配置它以更多地利用CPU和內存?
我正在使用Windows 8.1。
我有一個系統 - 處理器2.8 GHz,20個物理內核,40個邏輯核心,128 GB RAM和4 TB硬盤驅動器。充分利用CPU和內存
場景:
我運行3(獨立)蟒鹼處理/從文件中讀取數據並將其寫入到數據庫腳本(獨立地運行)。他們花費時間,而不使用CPU和內存100%甚至不到40%。
這是爲什麼? (我認爲這取決於操作系統)
如何配置它以更多地利用CPU和內存?
我正在使用Windows 8.1。
的處理(包括Python腳本)不會比它運行的線程使用任何更多的內核。所以如果你的python腳本是單線程的,它只會使用一個單一的內核。
此外,磁盤和數據庫操作會阻止進程,同時阻塞I/O和網絡。 (有效的CPU使用情況== 0)。
換句話說,如果您的程序執行大量的I/O操作,那麼您的程序可能不是「cpu bound」。
我不確定你的程序是做什麼的,但是如果手頭的問題可以並行化(分解成多個獨立的任務),那麼它可能會讓自己有更多的線程或進程來利用額外的硬件你有。但它很棘手,很難得到這個權利,並獲得性能增益。
嗯,我想配置(步驟),而不是代碼,以物理方式利用我的CPU和內存100%(或至少80%)。 – Junaid