将Slurm帐户命令的输出捕获到Python Dictionary
我正在尝试捕获以下slurm的输出(
-format =用户%10,Jobname%10,节点%10,start%10,End%10,经过%10,MAXRSS 输出以下输出:
User JobName NodeList Start End Elapsed MaxRSS
user_name job10000000 machine00 2022-01-25T12:35:11 2022-01-25T12:36:02 00:00:51
something machine00 2022-01-25T12:35:11 2022-01-25T12:36:02 00:00:51 0
job10000000 machine00 2022-01-25T12:35:12 2022-01-25T12:36:02 00:00:50 24000K
使用Python进入字典中,我的代码如下:
slurm_cmd = 'sacct -a -j '+ str(job_id) + ' --format=user%10,jobname%10,node%10,start%10,end%10,elapsed%10,MaxRSS'
p = subprocess.Popen(slurm_cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
output = p.stdout.read().decode()
header, *data = output.splitlines()
for datarow in data:
if data.index(datarow) == 1:
dict_ = dict(zip(header.split(), datarow.split()))
我的期望是这样的:
dict_ = {
"User" : 'user_name',
"NodList": 'machine00',
"Start" : '2022-01-25T12:35:12',
"End" : '2022-01-25T12:36:02',
"Elapsed": '00:00:51',
"MaxRSS" : '24000K'
}
有人这样做还是以前做过类似的事情?
I am trying to capture the output of the following slurm (https://hpc.nmsu.edu/onboarding/supercomputing/slurm/job-statistics/) command :
sacct -a -j <job_id> --format=user%10,jobname%10,node%10,start%10,end%10,elapsed%10,MaxRSS
that output this:
User JobName NodeList Start End Elapsed MaxRSS
user_name job10000000 machine00 2022-01-25T12:35:11 2022-01-25T12:36:02 00:00:51
something machine00 2022-01-25T12:35:11 2022-01-25T12:36:02 00:00:51 0
job10000000 machine00 2022-01-25T12:35:12 2022-01-25T12:36:02 00:00:50 24000K
into a dictionary using python, my code is as following:
slurm_cmd = 'sacct -a -j '+ str(job_id) + ' --format=user%10,jobname%10,node%10,start%10,end%10,elapsed%10,MaxRSS'
p = subprocess.Popen(slurm_cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
output = p.stdout.read().decode()
header, *data = output.splitlines()
for datarow in data:
if data.index(datarow) == 1:
dict_ = dict(zip(header.split(), datarow.split()))
my expectation is something like this:
dict_ = {
"User" : 'user_name',
"NodList": 'machine00',
"Start" : '2022-01-25T12:35:12',
"End" : '2022-01-25T12:36:02',
"Elapsed": '00:00:51',
"MaxRSS" : '24000K'
}
Does anyone did this or something similar before?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)