debug flag to measure memory
This commit is contained in:
parent
94ff6b297a
commit
d422bdbed9
1
bwa.c
1
bwa.c
|
|
@ -40,6 +40,7 @@
|
|||
#endif
|
||||
|
||||
int bwa_verbose = 3;
|
||||
int bwa_dbg = 0;
|
||||
char bwa_rg_id[256];
|
||||
char *bwa_pg;
|
||||
|
||||
|
|
|
|||
4
bwa.h
4
bwa.h
|
|
@ -43,6 +43,8 @@
|
|||
#define BWTALGO_BWTSW 2
|
||||
#define BWTALGO_IS 3
|
||||
|
||||
#define BWA_DBG_QNAME 0x1
|
||||
|
||||
typedef struct {
|
||||
bwt_t *bwt; // FM-index
|
||||
bntseq_t *bns; // information on the reference sequences
|
||||
|
|
@ -58,7 +60,7 @@ typedef struct {
|
|||
char *name, *comment, *seq, *qual, *sam;
|
||||
} bseq1_t;
|
||||
|
||||
extern int bwa_verbose;
|
||||
extern int bwa_verbose, bwa_dbg;
|
||||
extern char bwa_rg_id[256];
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
2
bwamem.c
2
bwamem.c
|
|
@ -1223,10 +1223,12 @@ static void worker2(void *data, int i, int tid)
|
|||
mem_mark_primary_se(w->opt, w->regs[i].n, w->regs[i].a, w->n_processed + i);
|
||||
if (w->opt->flag & MEM_F_PRIMARY5) mem_reorder_primary5(w->opt->T, &w->regs[i]);
|
||||
mem_reg2sam(w->opt, w->bns, w->pac, &w->seqs[i], &w->regs[i], 0, 0);
|
||||
fprintf(stderr, "Q\t%s\t%.3f\n", w->seqs[i].name, peakrss() / 1073741824.0);
|
||||
free(w->regs[i].a);
|
||||
} else {
|
||||
if (bwa_verbose >= 4) printf("=====> Finalizing read pair '%s' <=====\n", w->seqs[i<<1|0].name);
|
||||
mem_sam_pe(w->opt, w->bns, w->pac, w->pes, (w->n_processed>>1) + i, &w->seqs[i<<1], &w->regs[i<<1]);
|
||||
fprintf(stderr, "Q\t%s\t%.3f\n", w->seqs[i<<1|0].name, peakrss() / 1073741824.0);
|
||||
free(w->regs[i<<1|0].a); free(w->regs[i<<1|1].a);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ int main_mem(int argc, char *argv[])
|
|||
|
||||
aux.opt = opt = mem_opt_init();
|
||||
memset(&opt0, 0, sizeof(mem_opt_t));
|
||||
while ((c = getopt(argc, argv, "51qpaMCSPVYjuk:c:v:s:r:t:R:A:B:O:E:U:w:L:d:T:Q:D:m:I:N:o:f:W:x:G:h:y:K:X:H:")) >= 0) {
|
||||
while ((c = getopt(argc, argv, "51qpaMCSPVYjuk:c:v:s:r:t:R:A:B:O:E:U:w:L:d:T:Q:D:m:I:N:o:f:W:x:G:h:y:K:X:H:F:")) >= 0) {
|
||||
if (c == 'k') opt->min_seed_len = atoi(optarg), opt0.min_seed_len = 1;
|
||||
else if (c == '1') no_mt_io = 1;
|
||||
else if (c == 'x') mode = optarg;
|
||||
|
|
@ -192,6 +192,7 @@ int main_mem(int argc, char *argv[])
|
|||
else if (c == 'C') aux.copy_comment = 1;
|
||||
else if (c == 'K') fixed_chunk_size = atoi(optarg);
|
||||
else if (c == 'X') opt->mask_level = atof(optarg);
|
||||
else if (c == 'F') bwa_dbg = atoi(optarg);
|
||||
else if (c == 'h') {
|
||||
opt0.max_XA_hits = opt0.max_XA_hits_alt = 1;
|
||||
opt->max_XA_hits = opt->max_XA_hits_alt = strtol(optarg, &p, 10);
|
||||
|
|
|
|||
15
utils.c
15
utils.c
|
|
@ -279,17 +279,28 @@ int err_gzclose(gzFile file)
|
|||
* Timer *
|
||||
*********/
|
||||
|
||||
double cputime()
|
||||
double cputime(void)
|
||||
{
|
||||
struct rusage r;
|
||||
getrusage(RUSAGE_SELF, &r);
|
||||
return r.ru_utime.tv_sec + r.ru_stime.tv_sec + 1e-6 * (r.ru_utime.tv_usec + r.ru_stime.tv_usec);
|
||||
}
|
||||
|
||||
double realtime()
|
||||
double realtime(void)
|
||||
{
|
||||
struct timeval tp;
|
||||
struct timezone tzp;
|
||||
gettimeofday(&tp, &tzp);
|
||||
return tp.tv_sec + tp.tv_usec * 1e-6;
|
||||
}
|
||||
|
||||
long peakrss(void)
|
||||
{
|
||||
struct rusage r;
|
||||
getrusage(RUSAGE_SELF, &r);
|
||||
#ifdef __linux__
|
||||
return r.ru_maxrss * 1024;
|
||||
#else
|
||||
return r.ru_maxrss;
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
5
utils.h
5
utils.h
|
|
@ -84,8 +84,9 @@ extern "C" {
|
|||
int err_fclose(FILE *stream);
|
||||
int err_gzclose(gzFile file);
|
||||
|
||||
double cputime();
|
||||
double realtime();
|
||||
double cputime(void);
|
||||
double realtime(void);
|
||||
long peakrss(void);
|
||||
|
||||
void ks_introsort_64 (size_t n, uint64_t *a);
|
||||
void ks_introsort_128(size_t n, pair64_t *a);
|
||||
|
|
|
|||
Loading…
Reference in New Issue