Download Latest Version picard-tools-1.119.zip (51.8 MB)
Email in envelope

Get an email when there's a new version of picard

Name Modified Size InfoDownloads / Week
Parent folder
picard-tools-1.59.zip 2012-01-04 32.9 MB
README.txt 2012-01-04 3.1 kB
Totals: 2 Items   32.9 MB 0
Picard release 1.59
4 January 2012

- A new feature has been added to SAMFileWriterFactory and FastqWriterFactory that creates a separate thread for writing a SAM, BAM or FASTQ file.  We have used this feature successfully for a couple of weeks, but because of its newness it should be used with caution until we get some more time to determine if there are problems.  This allows computationally-intensive programs to maximize CPU usage rather than blocking while doing I/O.  This feature is enabled by passing the option -Dsamjdk.use_async_io=true to the java command.  It may be controlled programmatically via net.sf.samtools.SAMFileWriterFactory.setUseAsyncIo and net.sf.picard.fastq.FastqWriterFactory.setUseAsyncIo.  There is a memory penalty for this in that a queue is needed to hold records to be written.  Queue size is 2000 elements by default, but may be controlled via net.sf.samtools.SAMFileWriterFactory.setAsyncOutputBufferSize.  Queue size cannot be changed for FastqWriterFactory.   

- Several system properties have been added to control the behavior of various Picard programs.  These can be set by passing -D<property-name>=<value> to the java command.
  - samjdk.create_index :      Sets the default value for the CREATE_INDEX option.  E.g. -Dsamjdk.create_index=true
  - samjdk.create_md5 :        Sets the default value for the CREATE_MD5_FILE option.  E.g. -Dsamjdk.create_md5=true
  - samjdk.compression_level : Sets the default value for the COMPRESSSION_LEVEL option.  E.g. -Dsamjdk.compression_level=0
  - samjdk.use_async_io :      Enables asynchronous writing of SAM, BAM or FASTQ as described above.

  The regular command-line options, i.e. CREATE_INDEX, CREATE_MD5_FILE or COMPRESSION_LEVEL, override the value passed via system property.  See http://picard.sourceforge.net/command-line-overview.shtml#Overview for details on these options.
  
- SAMFileWriterFactory.java: Allow change to temp directory used by sorting SAMFileWriters without having to change java.io.tmpdir 

- MergeBamAlignment.java: Added the ability to carry-through the MAX_RECORDS_IN_RAM common parameter into the AbstractAlignmentMerger from MergeBamAlignment.

- SnappyLoader.java: Avoid NoClassDefFoundError if snappy-java classes are not available.

- ReadEndsCodec.java: Removed an extraneous flush() call that was hurting performance.

- MarkDuplicates.java: Change so that MarkDuplicates provides the full list of tmp directories to SortingCollection.

- AbstractDuplicateFindingAlgorithm.java: Added specialized implementation of addLocationInformation() that doesn't rely on using a regular expression so long as the default regular expression is specified.

- BinaryTagCodec.java: Small change to make decoding attributes from a BAM file previously written through the SAM-JDK more efficient.

- Change to MarkDuplicates to allow it to accept and merge multiple input files and write out the merged and marked results to a single file.  Merging isn't as fully-featured as MergeSamFiles.

- Added ability to add CO headers while Marking Duplicates.
Source: README.txt, updated 2012-01-04