我已经使用并行 python 编写了一个简单的程序,并且一切正常。但是,主要是出于好奇,我想知道每个任务在哪台机器上运行,以及花费了多长时间。
有没有办法以编程方式获取返回的作业的这些信息?
我已经使用并行 python 编写了一个简单的程序,并且一切正常。但是,主要是出于好奇,我想知道每个任务在哪台机器上运行,以及花费了多长时间。
有没有办法以编程方式获取返回的作业的这些信息?
uuid1 可以帮助:
>>> import uuid
>>> uuid.uuid1()
UUID('b46fa8cf-1fc1-11df-b891-001641ec3fab')
>>>
有关更多详细信息,请参阅 pydoc uuid 和 RFC 4122,我认为最后 48 位是主机独有的。不确定您是否在 Parallel python 中调用/返回它。
在pp.py
我发现:
self.__stats[hostid] = _Statistics(ncpus, rworker)
然后你能用它get_stats()
来解决这个问题吗:
get_stats(self) 以字典形式返回作业执行统计信息。