The Mantis parallel debugger

Parallel tools often fad to integrate effectively with other parallel systems, exacerbating the inherent difficulty of programming a massively parallel machine. Successful parallel debugging requires the rethinking of traditional debugging goals in the context of parallelism. The following four objectives: rapid focus, scalability, economy of presentation, and portability, represent the more dificult aspects of parallel debugging. In light of these specific goals, this paper presents Mantis, a graphical debugger for paraliei programs. Mantis targets the lwoad class of paralle[ programs known as bulk synchronous SPMD programs and provides support for Split-C, a paraliel extension of C. Although designed for parallel debugging, the Mantis interface also supports sequential debugging, aIlowing a single environment for both sequential and parallel debugging. Mantis currently runs on the Thinking Machines Corp. CM-5 and on networks of workstations and is built using a Tcl/Tk graphica! user interface tinked to a modified version of the Free Software Foundation’s gdb debugger. Through the application of a clear set of general principles, Mantis haa become a practical parallel tool. Mantis made its debut at U. C. Berkeley during the Spring 199J semester and has been used heavily by the parallel computation course for two years.