From fca8d60f638858f1582d255fc62b17837f83ec28 Mon Sep 17 00:00:00 2001 From: Samo Penic <samo.penic@fe.uni-lj.si> Date: Thu, 07 Apr 2016 13:00:18 +0000 Subject: [PATCH] Fix in ETA calculation. Redirected stdout of trisurf into null. --- python/trisurf/trisurf.py | 20 +++++++++++++++----- 1 files changed, 15 insertions(+), 5 deletions(-) diff --git a/python/trisurf/trisurf.py b/python/trisurf/trisurf.py index 34c5ca8..b1f99b6 100644 --- a/python/trisurf/trisurf.py +++ b/python/trisurf/trisurf.py @@ -12,7 +12,7 @@ import psutil import time import datetime - +import subprocess # Process status TS_NOLOCK=0 # lock file does not exist @@ -246,8 +246,10 @@ ''' Class Runner consists of a single running or terminated instance of the trisurf. It manages starting, stopping, verifying the running process and printing the reports of the configured instances. ''' - def __init__(self, subdir='run0', tape='', snapshot=''): + def __init__(self, subdir='run0', tape='', snapshot='', runArgs=[]): self.subdir=subdir + self.runArgs=runArgs + self.fromSnapshot=False if(tape!=''): self.initFromTape(tape) if(snapshot!=''): @@ -265,7 +267,8 @@ except: print("Error reading snapshot file") exit(1) - + self.fromSnapshot=True + self.snapshotFile=snapshotfile root = tree.getroot() tapetxt=root.find('tape') version=root.find('trisurfversion') @@ -303,8 +306,15 @@ if(self.getStatus()==0): self.Dir=Directory(maindir=self.maindir,simdir=self.subdir) self.Dir.makeifnotexist() -# self.Dir.goto() + cwd=Directory(maindir=os.getcwd()) + self.Dir.goto() print("Starting trisurf-ng executable at "+self.Dir.fullpath()+"\n") + if(self.fromSnapshot==True): + params=["trisurf", "--restore-from-vtk",self.snapshotFile]+self.runArgs + else: + params=["trisurf"]+self.runArgs + subprocess.Popen (params, stdout=subprocess.DEVNULL) + cwd.goto() else: print("Process already running. Not starting\n") return @@ -342,7 +352,7 @@ statustxt="Running" if(self.statistics.fileOK): - report=[time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(int(self.statistics.startDate))),str(datetime.timedelta(microseconds=(int(self.tape.config['iterations'])-int(self.statistics.last))*self.statistics.dT)*1000), statustxt, pid, str(self.Dir.fullpath()), self.Comment.getText()] + report=[time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(int(self.statistics.startDate))),str(datetime.timedelta(microseconds=(int(self.tape.config['iterations'])-int(self.statistics.last))*self.statistics.dT)*1000000), statustxt, pid, str(self.Dir.fullpath()), self.Comment.getText()] else: report=["N/A","N/A\t",statustxt, pid, str(self.Dir.fullpath()), self.Comment.getText()] return report -- Gitblit v1.9.3