Learn More
Existing debuggers and profilers are inadequate for debugging and profiling parallel programs. They are awkward in their handling of multiple threads of control and highly intrusive in their monitoring of program behavior. Parasight<supscrpt>TM</supscrpt> is an architecture that is geared towards non-intrusive high-level debugging and profiling. Parasight(More)
Debugging parallel programs with time critical dependencies is difficult due to subtle race conditions that may cause deadlock, starvation, and other errors. These errors can be detected by multiple instrumentation points triggered by logical assertions. Although some advanced debuggers provide a programmer with the ability to define complex logical(More)
Traditional UNIX processes are inadequate for representing multiple threads of control in parallel programs. They are inflexible in their resource allocation, unable to cleanly share system resources, and they carry a heavy overhead. Some new operating systems, such as MACH, split the process into multiple light-weight threads of execution and a task which(More)
The authors discuss the inherent bandwidth limitations of shared buses, which are assumed to set a ceiling on the performance and scalability of this architecture. They report on three years of experience with production multiprocessor systems. Advances in bus and cache technologies have greatly raised the ceiling which limits the throughput of bus-based(More)
  • 1