gatk-3.8/public
David Roazen d3437e62da Added a simple utility method Utils.optimumHashSize() to calculate the optimum
initial size for a Java hash table (HashMap, HashSet, etc.) given an expected
maximum number of elements. The optimum size is the smallest size that's
guaranteed not to result in any rehash / table-resize operations.

Example Usage:
Map<String, Object> hash = new HashMap<String, Object>(Utils.optimumHashSize(expectedMaxElements));

I think we're paying way too heavy a price in unnecessary rehash operations across
the GATK. If you don't specify an initial size, you get a table of size 16 that gets
completely rehashed and doubles in size every time it becomes 75% full. This means you
do at least twice as much work as you need to in order to populate your table:

(n + n/2 + n/4 + ... 16 ~= (1 + 1/2 + 1/4...) * n ~= 2 * n
2011-08-02 21:59:06 -04:00
..
R Moved gsalib sources from private/ to public/ 2011-07-27 12:29:43 -04:00
c Reinitialize random seed in the bwa bindings from the fixed seed stored in the 2011-07-22 13:41:53 -04:00
chainFiles Reorganized the codebase beneath top-level public and private directories, 2011-06-28 06:55:19 -04:00
doc Reorganized the codebase beneath top-level public and private directories, 2011-06-28 06:55:19 -04:00
java Added a simple utility method Utils.optimumHashSize() to calculate the optimum 2011-08-02 21:59:06 -04:00
packages Added edu.mit.broad.picard to Queue packaged jar. 2011-07-23 14:40:29 -04:00
perl Moving these supported perl scripts to public 2011-07-01 17:26:25 -04:00
scala Remove temporary index files (*.bai) 2011-07-30 02:05:22 -04:00
testdata Testdata for diffObjects. 2011-07-18 10:47:03 -04:00