Дешевый трюк с многопоточностью в Python

#python-3.x #multithreading #cmd #neural-network

#python-3.x #многопоточность #cmd #нейронная сеть

Вопрос:

У меня есть ANN (искусственная нейронная сеть), которую я должен обучать со многими параметрами в python. Я слышал о дешевом / быстром способе «multi_thread» в python. Я понимаю, что это не самый чистый способ сделать это (для этого есть библиотеки, но они предназначены для быстрого тестирования и разработки сетей). Тем не менее, я хотел проверить правильность этого трюка с переполнением стека

Я открываю 4 CMD’а (у меня 4-ядерный процессор) и запускаю ту же программу на каждом из CMD’ов, python my_program.py param1 param2 что и . Единственное отличие заключается в том, что в каждом из CMD’ов я изменяю параметры, чтобы они обучались по-разному. Затем они сохраняют свои обученные сети на диск.

Действительно ли этот метод открытия 4 CMDS использует 4 ядра, которые у меня есть на моем компьютере, и в некотором смысле многопоточен?

Ответ №1:

Он должен работать так, как вы думаете, и является вполне допустимым способом полного использования многоядерной машины.

Предполагая, что упоминание «CMD» означает, что вы находитесь в Windows: проверьте представление диспетчера задач Windows об использовании ЦП. Он должен показывать, что все 4 ядра полностью используются, когда у вас запущено 4 процесса, предполагая, что эти процессы связаны с вычислениями (а не ожидают ввода-вывода на диске или в сети).

Комментарии:

1. Да, когда я это делаю, диспетчер задач показывает все четыре используемых ядра и синхронизирует процессор на 100%, ха-ха. Я также слежу за тем, чтобы вокруг машины был хороший воздушный поток, потому что машина немного нагревается