1c3a2e202cc9e3ddda38f4e4928177e7a6a09325
- IndexerThreadPool::ReleaseIndexers(): each worker drops the indexers it has built (once its current frame is done) and the allocation pool is trimmed, so their memory goes back to the card, not only to the pool. A later frame builds them again, as on first use. A rotation pass calls it once its first pass is done and again when the leftover-lattice census - the last of its indexing - ends. Measured on the RTX 5080: the 1.24 GB (pre-pass) / 0.62 GB (later passes) the pass's pool held through the image pass and the scaling is gone; 4nwv's pre-pass image pass peaks 5.97 instead of 7.18 GB of device memory. - GPUMerge: the main line holds one through ScaleMergeAndSymmetry. The speculative geometry probe (GPUWorkBeside(after_merges=true)) waits for it on a card below the take-turns size (12 GB), where the probe's FFT indexers and image workers beside the merge's arrays would overfill the card - on a Windows (WDDM) card that does not fail an allocation but pages it and crawls. The merge waits for nothing, so nothing the merge waits on (the rotation-scale walk's probes) can wait in a circle with it. No change on a 16 GB card. Output unchanged: p.hkl byte-identical on cytc_x10sa, myob_x10sa, 4nwv and 8qaw on this card; also identical with the card's total read as 8.55 GB (10 / 9 image workers instead of 16) and with 4 image workers, so the worker count does not change the result. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
battery.py timing: a three-set benchmark placed by molecular replacement, checked and timed per step
battery.py timing: a three-set benchmark placed by molecular replacement, checked and timed per step
battery.py timing: a three-set benchmark placed by molecular replacement, checked and timed per step
battery.py timing: a three-set benchmark placed by molecular replacement, checked and timed per step
Jungfraujoch
Application to receive and analyse data from the PSI JUNGFRAU and EIGER detectors, together with
rugnux, its program for processing stored diffraction data - rotation and serial, macromolecular
and small-molecule - from images to merged reflections.
All documentation is now placed in docs/ subdirectory and for the current version hosted on Jungfraujoch Read The Docs page.
Languages
C++
77.8%
HTML
5.5%
C
4.3%
Cuda
4%
TypeScript
3.2%
Other
5.1%