numactl是一个可以设置处理器关联的进程。它将插入cpu的过程作为参数:
numactl -physcpubind 0 <process> <args>
我可以使用pysys startProcess命令成功运行我的进程:
BaseTest.startProcess('processA argsA')
然而,根据ps -ef PID,下面的内容会导致一个失效的python进程。
BaseTest.startProcess('numactl -physcpubind 0 processA argsA')
关于如何使用startProcess()来调用进程(numactl)的任何想法:
提亚
发布于 2017-03-07 19:31:02
def startProcess(self, command, arguments, environs=None, workingDir=None, state=FOREGROUND,
timeout=TIMEOUTS['WaitForProcess'], stdout=None, stderr=None, displayName=None,
abortOnError=None, ignoreExitStatus=True):
startProcess的命令参数是要启动的实际可执行文件,在本例中是numactl。因此,对startProcess的任何调用至少应该是形式;
startProcess(command='numactl', arguments=...)
所以问题是,你所传递的论点是什么?我没有现成的linux环境可以确认,但我希望有以下几种环境之一:
arguments=['-physcpubind', '0', 'processA', 'argsA']
arguments=['-physcpubind', '0', 'processA argsA']
第一种方法意味着numactl通常将要运行的进程及其命令行参数作为自身的单个参数来处理,而后者则意味着numactl将进程及其参数作为单个参数来运行。这两者都值得一试,看看会发生什么。
https://stackoverflow.com/questions/42645793
复制相似问题