簡體   English   中英

為什么我的 CPU 核心數是 2,但使用 multiprocessing.cpu_count() 得到 4?

[英]Why my CPU core number is 2, but use multiprocessing.cpu_count() get 4?

在我的 Mac 中:MacBook Pro(Retina,13 英寸,2015 年初)

有CPU信息:

  Model:                MacBook Pro
  Model description:    MacBookPro12,1
  CPU name:             Dual-Core Intel Core i5
  CPU rate:             2.7 GHz
  CPU number:           1
  Core number:          2

當我使用 Python 執行代碼時:

from multiprocessing import cpu_count
print(cpu_count())  # 4

有輸出4

為什么不是2?

我認為multiprocessing.cpu_count()返回邏輯內核的數量,而不是物理內核的數量。 例如,我有一個 Surface pro 7,有 4 個物理內核和 8 個邏輯內核,我的輸出是:

>>> print(multiprocessing.cpu_count())
8

是的multiprocessing.cpu_count()os.cpu_count()將返回邏輯處理器。 如果你想分別檢查邏輯和物理處理器,你可以使用psutil它們可以如下所示使用。

import psutil

print(psutil.cpu_count(logical = False))
print(psutil.cpu_count(logical = True))

輸出將是

2

4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM