При использовании параллельного Python есть ли способ определить, какую машину выполняется задание?
-
22-09-2019 - |
Вопрос
Я написал простую программу с использованием параллельного питона, и все работает хорошо. Тем не менее, в основном ради курьезов, я хотел бы знать, на какой машине выполнялась каждая задача и сколько времени это заняло.
Есть ли способ программно получить эту информацию для возвращаемой работы?
Решение
UUID1 может помочь:
>>> import uuid
>>> uuid.uuid1()
UUID('b46fa8cf-1fc1-11df-b891-001641ec3fab')
>>>
См. Pydoc Uuid и RFC 4122 для более подробной информации, я думаю, что последние 48 бит уникальны для хоста. Не уверен, что вы звоните/возвращаете это в параллельном питоне.
в pp.py
Я нашел:
self.__stats[hostid] = _Statistics(ncpus, rworker)
Вы можете тогда использовать get_stats()
Чтобы получить это:
get_stats (self) возвращает статистику выполнения задания в качестве словаря.
Не связан с StackOverflow