The current GATK version is 3.7-0
Examples: Monday, today, last week, Mar 26, 3/26/04

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Get notifications!


You can opt in to receive email notifications, for example when your questions get answered or when there are new announcements, by following the instructions given here.

Did you remember to?


1. Search using the upper-right search box, e.g. using the error message.
2. Try the latest version of tools.
3. Include tool and Java versions.
4. Tell us whether you are following GATK Best Practices.
5. Include relevant details, e.g. platform, DNA- or RNA-Seq, WES (+capture kit) or WGS (PCR-free or PCR+), paired- or single-end, read length, expected average coverage, somatic data, etc.
6. For tool errors, include the error stacktrace as well as the exact command.
7. For format issues, include the result of running ValidateSamFile for BAMs or ValidateVariants for VCFs.
8. For weird results, include an illustrative example, e.g. attach IGV screenshots according to Article#5484.
9. For a seeming variant that is uncalled, include results of following Article#1235.

Did we ask for a bug report?


Then follow instructions in Article#1894.

Formatting tip!


Wrap blocks of code, error messages and BAM/VCF snippets--especially content with hashes (#)--with lines with three backticks ( ``` ) each to make a code block as demonstrated here.

Jump to another community
Picard 2.9.4 is now available. Download and read release notes here.
GATK 3.7 is here! Be sure to read the Version Highlights and optionally the full Release Notes.

FilterSamReads: java.lang.OutOfMemoryError: Java heap space

How to estimate the memory use (-Xmx?G) when using FilterSamReads? I always get the errors:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.regex.Pattern$Start.(Pattern.java:3450)
at java.util.regex.Pattern.compile(Pattern.java:1716)
at java.util.regex.Pattern.(Pattern.java:1351)
at java.util.regex.Pattern.compile(Pattern.java:1028)
at java.lang.String.split(String.java:2380)
at java.lang.String.split(String.java:2422)
at htsjdk.samtools.filter.ReadNameFilter.(ReadNameFilter.java:58)
at picard.sam.FilterSamReads.doWork(FilterSamReads.java:233)
at picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:208)
at picard.cmdline.PicardCommandLine.instanceMain(PicardCommandLine.java:95)
at picard.cmdline.PicardCommandLine.main(PicardCommandLine.java:105)

Answers

  • shleeshlee CambridgeMember, Broadie, Moderator

    Hi @Yingya,

    The combination of these two documents should help you determine the memory available on your system and the memory use of processes from the GATK Best Practices. I know these don't talk about FilterSamReads specifically but they can serve as general guidelines in memory similar processes would require. For example, I imagine FilterSamReads would be similar in memory requirement to GATK's PrintReads.

    • To determine memory available on your system, take a look at instructions in section 2 of this document.
    • For memory use of GATK tools, see Blog#7249's CPU utilization chart. There is a link to an updated Intel white paper in Blog#8605 with a similar utilization chart.

    I hope these are helpful.

Sign In or Register to comment.