diff --git a/examples/test.c b/examples/test.c
index 8f9990f48a3ccc6f8133aa5af4b7439c4c0da8fe..f8817950a80caf5727964c2ea63e118c11e5b630 100644
--- a/examples/test.c
+++ b/examples/test.c
@@ -737,7 +737,6 @@ int main(int argc, char *argv[]) {
       parts[k].x[2] += shift[2];
     }
 
-
   /* Set default number of queues. */
   if (nr_queues < 0) nr_queues = nr_threads;
 
@@ -827,10 +826,10 @@ int main(int argc, char *argv[]) {
             e.nr_threads, e.sched.nr_queues);
   fflush(stdout);
 
-
   /* Legend. */
   /* if (myrank == 0) */
-/*     printf("# step time e_tot e_kin e_temp dt dt_step count dt_min dt_max\n"); */
+  /*     printf("# step time e_tot e_kin e_temp dt dt_step count dt_min
+   * dt_max\n"); */
 
   /* Let loose a runner on the space. */
   for (j = 0; j < runs && e.time < clock; j++) {
@@ -864,21 +863,22 @@ int main(int argc, char *argv[]) {
     }
 
     /* Dump a line of agregate output. */
-/*     if (myrank == 0) { */
-/*       printf("%i %e %.16e %.16e %.16e %.3e %.3e %i %.3e %.3e", j, e.time, */
-/*              e.ekin + e.epot, e.ekin, e.epot, e.dt, e.dt_step, e.count_step, */
-/*              e.dt_min, e.dt_max); */
-/*       for (k = 0; k < timer_count; k++) */
-/*         printf(" %.3f", ((double)timers[k]) / CPU_TPS * 1000); */
-/*       printf("\n"); */
-/*       fflush(stdout); */
-/*     } */
+    /*     if (myrank == 0) { */
+    /*       printf("%i %e %.16e %.16e %.16e %.3e %.3e %i %.3e %.3e", j, e.time,
+     */
+    /*              e.ekin + e.epot, e.ekin, e.epot, e.dt, e.dt_step,
+     * e.count_step, */
+    /*              e.dt_min, e.dt_max); */
+    /*       for (k = 0; k < timer_count; k++) */
+    /*         printf(" %.3f", ((double)timers[k]) / CPU_TPS * 1000); */
+    /*       printf("\n"); */
+    /*       fflush(stdout); */
+    /*     } */
     if (myrank == 0) {
-      if (j == 0)
-	printf("# Step  Time  time-step  CPU Wall-clock time [ms]\n"); 
+      if (j == 0) printf("# Step  Time  time-step  CPU Wall-clock time [ms]\n");
 
-      printf("%i %e %.3e", j, e.time, e.dt );
-      printf(" %.3f", ((double)timers[timer_count-1]) / CPU_TPS * 1000);
+      printf("%i %e %.3e", j, e.time, e.dt);
+      printf(" %.3f", ((double)timers[timer_count - 1]) / CPU_TPS * 1000);
       printf("\n");
       fflush(stdout);
     }
@@ -898,39 +898,37 @@ int main(int argc, char *argv[]) {
            (double)runner_hist_bins[k]);
 #endif
 
-
-/* Dump the task data. */
+  /* Dump the task data. */
+  FILE *file = fopen("thread_info.dat", "w");
 #ifdef WITH_MPI
-for ( j = 0 ; j < nr_nodes ; j++ ) {
-MPI_Barrier( MPI_COMM_WORLD );
-if ( j == myrank ) {
-printf( " %03i 0 0 0 0 %lli 0 0 0 0\n" , myrank , e.tic_step );
-for ( k = 0 ; k < e.sched.nr_tasks ; k++ )
-    if ( !e.sched.tasks[k].skip && !e.sched.tasks[k].implicit )
-        printf( " %03i %i %i %i %i %lli %lli %i %i %i\n" ,
-            myrank ,
-            e.sched.tasks[k].rid , e.sched.tasks[k].type ,
-e.sched.tasks[k].subtype ,
-            (e.sched.tasks[k].cj == NULL) , e.sched.tasks[k].tic ,
-e.sched.tasks[k].toc ,
-            e.sched.tasks[k].ci->count ,
-(e.sched.tasks[k].cj!=NULL)?e.sched.tasks[k].cj->count:0 ,
-e.sched.tasks[k].flags);
-fflush(stdout);
-sleep(1);
-}
-}
+  for (j = 0; j < nr_nodes; j++) {
+    MPI_Barrier(MPI_COMM_WORLD);
+    if (j == myrank) {
+      printf(" %03i 0 0 0 0 %lli 0 0 0 0\n", myrank, e.tic_step);
+      for (k = 0; k < e.sched.nr_tasks; k++)
+        if (!e.sched.tasks[k].skip && !e.sched.tasks[k].implicit)
+          fprintf(
+              file, " %03i %i %i %i %i %lli %lli %i %i %i\n", myrank,
+              e.sched.tasks[k].rid, e.sched.tasks[k].type,
+              e.sched.tasks[k].subtype, (e.sched.tasks[k].cj == NULL),
+              e.sched.tasks[k].tic, e.sched.tasks[k].toc,
+              e.sched.tasks[k].ci->count,
+              (e.sched.tasks[k].cj != NULL) ? e.sched.tasks[k].cj->count : 0,
+              e.sched.tasks[k].flags);
+      fflush(stdout);
+      sleep(1);
+    }
+  }
 #else
-for ( k = 0 ; k < e.sched.nr_tasks ; k++ )
-    if ( !e.sched.tasks[k].skip && !e.sched.tasks[k].implicit )
-      fprintf(stderr, " %i %i %i %i %lli %lli %i %i\n" ,
-            e.sched.tasks[k].rid , e.sched.tasks[k].type ,
-e.sched.tasks[k].subtype ,
-            (e.sched.tasks[k].cj == NULL) , e.sched.tasks[k].tic ,
-e.sched.tasks[k].toc ,
-            e.sched.tasks[k].ci->count ,
-            (e.sched.tasks[k].cj==NULL)?0:e.sched.tasks[k].cj->count );
+  for (k = 0; k < e.sched.nr_tasks; k++)
+    if (!e.sched.tasks[k].skip && !e.sched.tasks[k].implicit)
+      fprintf(file, " %i %i %i %i %lli %lli %i %i\n", e.sched.tasks[k].rid,
+              e.sched.tasks[k].type, e.sched.tasks[k].subtype,
+              (e.sched.tasks[k].cj == NULL), e.sched.tasks[k].tic,
+              e.sched.tasks[k].toc, e.sched.tasks[k].ci->count,
+              (e.sched.tasks[k].cj == NULL) ? 0 : e.sched.tasks[k].cj->count);
 #endif
+  fclose(file);
 
 /* Write final output. */
 #if defined(WITH_MPI)