Сколько потоков у меня в моем коде Python? - PullRequest
0 голосов
/ 11 июня 2018

У меня есть код Python, который я хочу профилировать с nvprof или visual profiler, я хочу знать, сколько потоков используется в моем коде?

Мне нужна команда Linux.

Используя эту команду:

sudo dmidecode -t 4 | egrep -i "Designation|Intel|core|thread"

Получает мне эту информацию, но это не для моего кода:

Socket Designation: CPU1
Manufacturer: Intel
        HTT (Multi-threading)
Version: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
Core Count: 14
Core Enabled: 14
Thread Count: 28
        Multi-Core
        Hardware Thread
Socket Designation: CPU2
Manufacturer: Intel
        HTT (Multi-threading)
Version: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz
Core Count: 14
Core Enabled: 14
Thread Count: 28
        Multi-Core
        Hardware Thread

Я хочу знать, сколько потоков использует мой код Python.

1 Ответ

0 голосов
/ 18 июня 2018

Вы можете использовать threading.active_count.Из документации:

Возвращает количество Thread объектов, которые в данный момент живы.Возвращенное количество равно длине списка, возвращенного enumerate().

Из документации threading.enumerate:

Возвратсписок всех Thread объектов, находящихся в данный момент в живых.Список включает в себя демонические потоки, фиктивные объекты потоков, созданные current_thread(), и основной поток.Он исключает завершенные потоки и потоки, которые еще не были запущены.

...