public static BigLong2ShortHashMap loadReads(File[] files, int k, int minSeqLen,
int availableProcessors, Logger logger)
throws ExecutionFailedException {
BigLong2ShortHashMap hm = new BigLong2ShortHashMap(
(int) (Math.log(availableProcessors) / Math.log(2)) + 4, 12, true);
ReadsLoadWorker[] workers = new ReadsLoadWorker[availableProcessors];
for (int i = 0; i < workers.length; ++i) {
workers[i] = new ReadsLoadWorker(hm, k, minSeqLen);
}
run(files, workers, hm, logger);
// calculating statistics...
int totalSeq = 0, goodSeq = 0;
long totalLen = 0, goodLen = 0;
for (ReadsLoadWorker worker : workers) {
totalSeq += worker.totalSeq;
goodSeq += worker.goodSeq;
totalLen += worker.totalLen;
goodLen += worker.goodLen;
}
Tool.debug(logger,
"Good/Total sequences count = " + NumUtils.groupDigits(goodSeq) + "/" + NumUtils.groupDigits(totalSeq)
+ " (" + String.format("%.1f", goodSeq * 100.0 / totalSeq) + "%)");
Tool.debug(logger,
"Good/Total sequences length = " + NumUtils.groupDigits(goodLen) + "/" + NumUtils.groupDigits(totalLen)
+ " (" + String.format("%.1f", goodLen * 100.0 / totalLen) + "%)");
logger.debug("k-mers HM size = " + NumUtils.groupDigits(hm.size()));
return hm;
}
IOUtils.java 文件源码
java
阅读 28
收藏 0
点赞 0
评论 0
项目:metacherchant
作者:
评论列表
文章目录