Major update of mloc in progress

As I’ve added more features to mloc over the years its memory requirements have grown to the point where we are now encountering problems on some systems when trying to run larger clusters. I won’t try to describe the details here but I’m happy to discuss it with you if you get in touch. In the old days it was referred to as “stack overflow” but modern chips and OSes have much more complex memory management systems and I don’t really know what is specifically failing. The original software structure, written in the 1980s is based mainly on Fortran 77 and relies heavily on include files and named common blocks that hit the stack very hard. The good news is that Fortran 90 (which is the standard used for mloc) has some features that should make it possible to substantially reduce the memory requirements for a given problem size, and thus make it feasible to run clusters with more events and/or arrival time data. I am now working on the next generation of the code that takes advantage of some of those features, in particular, modules and allocatable arrays. The reorganization should also make it easier to maintain and develop the code further. So for some period of time I will not be working on new calibrated clusters (much). I will post here when I have a version ready for testing.

Filed under: Uncategorized