mirror of
https://github.com/nasa/trick.git
synced 2024-12-21 22:17:51 +00:00
49 lines
1.3 KiB
Python
Executable File
49 lines
1.3 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
from random import randint
|
|
|
|
import subprocess
|
|
import commands
|
|
import sys
|
|
import os
|
|
|
|
try:
|
|
f = open( commands.getstatusoutput( 'echo $TRICK_HOME' )[1] + "/config_Linux.mk", "r" )
|
|
|
|
except:
|
|
print "\nUnable to open" + commands.getstatusoutput( 'echo $TRICK_HOME' )[1] + "/config_Linux.mk\n"
|
|
sys.exit(0)
|
|
|
|
|
|
|
|
start_sim = ''
|
|
|
|
for line in f:
|
|
|
|
if line.startswith('#'):
|
|
continue
|
|
|
|
# --join: if a coordinator is running, join it (for checkpointing more than one sim on same machine)
|
|
if "DMTCP =" in line:
|
|
start_sim = line.split( "=", 1 )[1].strip() + "/bin/dmtcp_checkpoint " + \
|
|
"--port " + str( randint(2000,10000) ) + \
|
|
" --quiet " + \
|
|
"--join " + \
|
|
"--checkpoint-open-files " + \
|
|
"--ckptdir " + commands.getstatusoutput( 'echo $PWD' )[1] + "/dmtcp_checkpoints " + \
|
|
"./S_main_" + commands.getstatusoutput( '$TRICK_HOME/bin/gte TRICK_HOST_CPU' )[1] + ".exe " + \
|
|
" ".join( sys.argv[1:] ) + \
|
|
" dmtcp"
|
|
|
|
f.close()
|
|
|
|
if ( not start_sim ):
|
|
print "\nPlease run configure script in " + commands.getstatusoutput( 'echo $TRICK_HOME' )[1] + \
|
|
" to set DMTCP location.\n"
|
|
|
|
try:
|
|
subprocess.call( start_sim, shell=True )
|
|
|
|
except:
|
|
print "\nExiting...\n"
|