aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorswhite <swhite@e5a5a894-0e4f-0410-be11-d22c8b0a171a>2006-06-30 13:18:48 +0000
committerswhite <swhite@e5a5a894-0e4f-0410-be11-d22c8b0a171a>2006-06-30 13:18:48 +0000
commit6f384e57a2fe661f00c0bfeab68100b5016746be (patch)
tree05124f9de75bc072749876b7e5d575e9e96602c9 /src
parent02437564319f1e56f791a0e7fa8a516c5bf6cbf2 (diff)
Got rid of watchminutes Cactus variable in favour of a local variable.
Suspect the use of this variable caused a crash. Tidied up output a bit. git-svn-id: http://svn.aei.mpg.de/numrel/AEIThorns/ManualTermination/trunk@15 e5a5a894-0e4f-0410-be11-d22c8b0a171a
Diffstat (limited to 'src')
-rw-r--r--src/ManualTermination.c34
1 files changed, 16 insertions, 18 deletions
diff --git a/src/ManualTermination.c b/src/ManualTermination.c
index e0e32c4..e5a7062 100644
--- a/src/ManualTermination.c
+++ b/src/ManualTermination.c
@@ -7,6 +7,7 @@
#include "cctk_Termination.h"
#include "cctk_Timers.h"
+static CCTK_REAL watchminutes;
int ManualTermination_StartTimer (CCTK_ARGUMENTS)
{
@@ -17,21 +18,20 @@ int ManualTermination_StartTimer (CCTK_ARGUMENTS)
int ierr;
int TimerIndex;
- /* only one processor needs to query the elapsed runtime */
- if (CCTK_MyProc (cctkGH) != 0)
+ if (CCTK_MyProc (cctkGH) != 0) /* only root process queries elapsed runtime */
{
return (0);
}
- /* Create timer */
+
TimerIndex = CCTK_TimerCreate ("WatchWalltime");
- /* Start timer */
+
ierr = CCTK_TimerStart ("WatchWalltime");
- *watchminutes = output_remtime_every_minutes*1.0e0;
+ watchminutes = output_remtime_every_minutes*1.0e0;
CCTK_VInfo (CCTK_THORNSTRING, "Started Timer");
CCTK_VInfo (CCTK_THORNSTRING, "Reminding you every %d "
- "minutes about remaining walltime.",
+ "minutes of remaining walltime.",
output_remtime_every_minutes);
return (retval);
}
@@ -41,7 +41,7 @@ int ManualTermination_ResetMinutes (CCTK_ARGUMENTS)
DECLARE_CCTK_ARGUMENTS;
DECLARE_CCTK_PARAMETERS;
- *watchminutes = output_remtime_every_minutes*1.0e0;
+ watchminutes = output_remtime_every_minutes*1.0e0;
return 0;
}
@@ -56,8 +56,7 @@ int ManualTermination_CheckWalltime (CCTK_ARGUMENTS)
const cTimerVal *walltime;
CCTK_REAL time;
- /* only one processor needs to query the elapsed runtime */
- if (CCTK_MyProc (cctkGH) != 0)
+ if (CCTK_MyProc (cctkGH) != 0) /* only root process queries elapsed runtime */
{
return (0);
}
@@ -66,30 +65,29 @@ int ManualTermination_CheckWalltime (CCTK_ARGUMENTS)
info = CCTK_TimerCreateData ();
ierr = CCTK_Timer ("WatchWalltime",info);
- /* stop timer */
+
ierr = CCTK_TimerStop ("WatchWalltime");
/* get walltime */
walltime = CCTK_GetClockValue ("gettimeofday",info);
time = CCTK_TimerClockSeconds (walltime);
CCTK_TimerDestroyData (info);
- /* start timer */
+
ierr = CCTK_TimerStart ("WatchWalltime");
- if ((time/60.0e0 > *watchminutes) && *watchminutes != 0)
+ if ((time/60.0e0 > watchminutes) && watchminutes != 0)
{
- *watchminutes = (*watchminutes)+output_remtime_every_minutes*1.0e0;
+ watchminutes = (watchminutes)+output_remtime_every_minutes*1.0e0;
CCTK_INFO ("------------------------------------------------------");
- CCTK_VInfo (CCTK_THORNSTRING, "Remaining wallclock time for your job "
- "is %1.2f minutes. :-)", (max_walltime*60.0-time/60.0));
+ CCTK_VInfo (CCTK_THORNSTRING, "Remaining walltime is %1.2f minutes. :-)",
+ (max_walltime*60.0-time/60.0));
CCTK_INFO ("------------------------------------------------------");
}
if (time/60.0e0 >= (max_walltime*60.0e0 - on_remaining_walltime*1.0e0))
{
CCTK_INFO ("------------------------------------------------------");
- CCTK_VInfo (CCTK_THORNSTRING, "Remaining wallclock time for your job "
- "is %1.2f minutes. Triggering termination ...",
- (max_walltime*60.0-time/60.0));
+ CCTK_VInfo (CCTK_THORNSTRING, "Remaining walltime is %1.2f minutes. \n"
+ "Triggering termination ...", (max_walltime*60.0-time/60.0));
CCTK_INFO ("------------------------------------------------------");
CCTK_TerminateNext (cctkGH);
}