Now more easily R-parseable.
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@5737 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
5bade81c6d
commit
ad8c786b2d
|
|
@ -57,6 +57,7 @@ public class AnalyzeMemoryConsumption extends LocusWalker<LocusContext,Long> {
|
||||||
|
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
monitor = ManagementFactory.getMemoryMXBean();
|
monitor = ManagementFactory.getMemoryMXBean();
|
||||||
|
out.println("contig\tlocus\tref (bytes)\tref (% of max)\treads (count)\treads (bytes)\treads (% of max)\tRODs (bytes)\tRODs (% of max heap)\tHeap Used (bytes)\tHeap Used (% of max)\tMax Heap");
|
||||||
}
|
}
|
||||||
|
|
||||||
public LocusContext map(RefMetaDataTracker tracker, ReferenceContext ref, AlignmentContext reads) {
|
public LocusContext map(RefMetaDataTracker tracker, ReferenceContext ref, AlignmentContext reads) {
|
||||||
|
|
@ -77,20 +78,22 @@ public class AnalyzeMemoryConsumption extends LocusWalker<LocusContext,Long> {
|
||||||
sum++;
|
sum++;
|
||||||
|
|
||||||
if(sum % frequency == 0) {
|
if(sum % frequency == 0) {
|
||||||
long refSize = Sizeof.getObjectGraphSize(locusContext.reference);
|
long refSizeInBytes = Sizeof.getObjectGraphSize(locusContext.reference);
|
||||||
long readsSize = Sizeof.getObjectGraphSize(locusContext.alignedReads);
|
long numReads = locusContext.alignedReads.size();
|
||||||
long trackerSize = Sizeof.getObjectGraphSize(locusContext.referenceOrderedData);
|
long readsSizeInBytes = Sizeof.getObjectGraphSize(locusContext.alignedReads);
|
||||||
|
long trackerSizeInBytes = Sizeof.getObjectGraphSize(locusContext.referenceOrderedData);
|
||||||
|
|
||||||
MemoryUsage memoryUsage = monitor.getHeapMemoryUsage();
|
MemoryUsage memoryUsage = monitor.getHeapMemoryUsage();
|
||||||
long memoryUsed = memoryUsage.getUsed();
|
long memoryUsed = memoryUsage.getUsed();
|
||||||
long maxMemory = memoryUsage.getMax();
|
long maxMemory = memoryUsage.getMax();
|
||||||
|
|
||||||
out.printf("site: %s: reference: %d bytes (%f%% of max), reads: %d bytes (%f%% of max), reference-ordered data: %d bytes (%f%% of max); heap used = %d bytes (%f%% of max); max heap = %d bytes.%n",
|
out.printf("%s\t%s\t%d\t%.3f\t%d\t%d\t%.3f\t%d\t%.3f\t%d\t%.3f\t%d%n",
|
||||||
locusContext.reference.getLocus(),
|
locusContext.reference.getLocus().getContig(),
|
||||||
refSize,refSize*100.0/maxMemory,
|
locusContext.reference.getLocus().getStart(),
|
||||||
readsSize,readsSize*100.0/maxMemory,
|
refSizeInBytes,refSizeInBytes*100.0/maxMemory,
|
||||||
trackerSize,trackerSize*100.0/maxMemory,
|
numReads,readsSizeInBytes,readsSizeInBytes*100.0/maxMemory,
|
||||||
memoryUsed,((float)memoryUsed)/maxMemory,
|
trackerSizeInBytes,trackerSizeInBytes*100.0/maxMemory,
|
||||||
|
memoryUsed,memoryUsed*100.0/maxMemory,
|
||||||
maxMemory);
|
maxMemory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue