Issue No. 03 - March (2014 vol. 25)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TPDS.2013.86
Minh Ngoc Dinh , Fac. of Inf. Technol., Monash Univ., Mulgrave, VIC, Australia
David Abramson , Fac. of Inf. Technol., Monash Univ., Mulgrave, VIC, Australia
Chao Jin , Fac. of Inf. Technol., Monash Univ., Mulgrave, VIC, Australia
Detecting and isolating bugs that arise only at high processor counts is a challenging task. Over a number of years, we have implemented a special debugging method, called "relative debugging," that supports debugging applications as they evolve or are ported to larger machines. It allows a user to compare the state of a suspect program against another reference version even as the number of processors is increased. The innovative idea is the comparison of runtime data to reason about the state of the suspect program. While powerful, a naïve implementation of the comparison phase does not scale to large problems running on large machines. In this paper, we propose two different solutions including a hash-based scheme and a direct point-to-point scheme. We demonstrate the implementation, a case study, as well as the performance, of our techniques on 20K cores of a Cray XE6 system.
Debugging, Arrays, Servers, Computer bugs, Runtime, Magnetic heads
Minh Ngoc Dinh, D. Abramson and Chao Jin, "Scalable Relative Debugging," in IEEE Transactions on Parallel & Distributed Systems, vol. 25, no. 3, pp. 740-749, 2014.