aboutsummaryrefslogtreecommitdiff
path: root/src/ManualTermination.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ManualTermination.c')
-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);
}