diff --git a/swiftmpirdmastepsim3.c b/swiftmpirdmastepsim3.c
index 6e92e8e2e5be6cfff1ba3dfb0b56716387c04676..207be924be1f12d6fe7a0b1ed976ac41faf0d28b 100644
--- a/swiftmpirdmastepsim3.c
+++ b/swiftmpirdmastepsim3.c
@@ -469,6 +469,10 @@ static void usage(char *argv[]) {
  */
 int main(int argc, char *argv[]) {
 
+  /* Start time for logging. This will be reset to restart time. */
+  clocks_set_cpufreq(0);
+  cpufreq = clocks_get_cpufreq();
+
   /* Initiate MPI. */
   int prov = 0;
   int res = MPI_Init_thread(&argc, &argv, MPI_THREAD_MULTIPLE, &prov);
@@ -553,11 +557,7 @@ int main(int argc, char *argv[]) {
     }
   }
 
-  /* Time to start time. Try to make it synchronous across the ranks.
-   * Note we reset this once more when the startup costs have been
-   * done. */
-  clocks_set_cpufreq(0);
-  cpufreq = clocks_get_cpufreq();
+  /* Make synchronous across the ranks. */
   MPI_Barrier(MPI_COMM_WORLD);
   clocks_set_cpufreq(cpufreq);
   if (myrank == 0) {