aboutsummaryrefslogtreecommitdiff
path: root/src/indexamajig.c
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2011-03-22 15:43:00 +0100
committerThomas White <taw@physics.org>2012-02-22 15:27:20 +0100
commit254d6459a53e12b39af6015e681925a70ff46393 (patch)
tree3c1bb1427d366a96a66ba15839c3e3b22a92c714 /src/indexamajig.c
parente397d27fbbfdc93449ed729fe48eda4f40f020e4 (diff)
indexamajig: Reduce verbosity a lot
Diffstat (limited to 'src/indexamajig.c')
-rw-r--r--src/indexamajig.c41
1 files changed, 36 insertions, 5 deletions
diff --git a/src/indexamajig.c b/src/indexamajig.c
index c0757edd..6094c552 100644
--- a/src/indexamajig.c
+++ b/src/indexamajig.c
@@ -23,7 +23,7 @@
#include <hdf5.h>
#include <gsl/gsl_errno.h>
#include <pthread.h>
-#include <sys/time.h>
+#include <time.h>
#include "utils.h"
#include "hdf5-file.h"
@@ -38,6 +38,10 @@
#include "reflist-utils.h"
+
+#define STATS_EVERY_N_SECONDS (5)
+
+
enum {
PEAK_ZAEF,
PEAK_HDF5,
@@ -92,9 +96,13 @@ struct queue_args
int config_basename;
struct static_index_args static_args;
- int n_indexable;
-
char *use_this_one_instead;
+
+ int n_indexable;
+ int n_processed;
+ int n_indexable_last_stats;
+ int n_processed_last_stats;
+ int t_last_stats;
};
@@ -210,8 +218,6 @@ static void process_image(void *pp, int cookie)
image.filename = filename;
image.det = copy_geom(pargs->static_args.det);
- STATUS("Processing '%s'\n", image.filename);
-
pargs->indexable = 0;
hdfile = hdfile_open(filename);
@@ -384,8 +390,26 @@ static void finalise_image(void *qp, void *pp)
{
struct queue_args *qargs = qp;
struct index_args *pargs = pp;
+ struct timespec tp;
qargs->n_indexable += pargs->indexable;
+ qargs->n_processed++;
+
+ clock_gettime(CLOCK_REALTIME, &tp);
+ if ( tp.tv_sec > qargs->t_last_stats+STATS_EVERY_N_SECONDS ) {
+
+ STATUS("%i out of %i indexed so far,"
+ " %i out of %i in the last %i seconds.\n",
+ qargs->n_indexable, qargs->n_processed,
+ qargs->n_indexable - qargs->n_indexable_last_stats,
+ qargs->n_processed - qargs->n_processed_last_stats,
+ STATS_EVERY_N_SECONDS);
+
+ qargs->n_processed_last_stats = qargs->n_processed;
+ qargs->n_indexable_last_stats = qargs->n_indexable;
+ qargs->t_last_stats = tp.tv_sec;
+
+ }
free(pargs->filename);
free(pargs);
@@ -439,6 +463,7 @@ int main(int argc, char *argv[])
char *element = NULL;
double nominal_photon_energy;
int stream_flags = STREAM_INTEGRATED;
+ struct timespec tp;
/* Long options */
const struct option longopts[] = {
@@ -759,6 +784,12 @@ int main(int argc, char *argv[])
qargs.prefix = prefix;
qargs.config_basename = config_basename;
qargs.n_indexable = 0;
+ qargs.n_processed = 0;
+ qargs.n_indexable_last_stats = 0;
+ qargs.n_processed_last_stats = 0;
+ clock_gettime(CLOCK_REALTIME, &tp);
+ qargs.t_last_stats = tp.tv_sec;
+
n_images = run_threads(nthreads, process_image, get_image,
finalise_image, &qargs, 0);