Repository navigation
This patch release fixes stochastic hangs in parallel commands on very large inputs and makes very high-resolution coolers faster and much cheaper to create.
Fixes
- Parallel commands no longer hang when a worker process dies. This affects
cooler zoomify,coarsen,balance,cload tabixandcload pairixwith-p. Workers killed for running out of memory left these commands waiting forever (#232). They now stop with an error that suggests fewer processes or smaller chunks, and remove any partly written output. cooler.binnifywith a float bin size such as1e6returns integer coordinates; it returned floats. A bin size that isn't a positive integer raises an error.
Performance
- Creating and merging coolers with many bins takes much less memory and time. On 1M pairs at 10 bp on a 500 Mb chromosome (50M bins),
cooler cload pairspeaked at 1.9 GB instead of 12.1 GB, and took 112 s instead of 208 s, with identical output. This also helpscooler merge,zoomifyandcreate_coolerat high resolution.
Full Changelog: v0.12.0...v0.12.1