What does PGDBG do differently when the MPIRUN -nolocal option is used?
When PGDBG is invoked using MPIRUN without ‘-nolocal’, the target application processes are spawned on the local host as well as on remote hosts. The debugger is launched on the local host, and a lightweight debug server (named ‘pgserv’) is launched on every host where a target process is running (both local and remote). When PGDBG is invoked using MPIRUN with ‘-nolocal’, the target application processes are spawned only on remote hosts, as determined by the ‘machines.LINUX’ file. The debugger is launched on the local host, and pgserv is launched only on the hosts where target processes are running (i.e. only on remote hosts). This allows the debugger to be isolated from the application under debug, in order to (for example) prevent resource contention between the debugger and the application.