1. An apparatus comprising: at least one processor, a memory coupled to the at least one processor; a multi-threaded computer program residing in the memory, the multi-threaded computer program comprising a plurality of threads; and a debugger residing in the memory and executed by the at least one processor, the debugger executing the multi-threaded computer program and grouping at least two of the plurality of threads in a display according to at least one user-specified criterion.