Software Development

Home | Software Development | Threads/Concurrency

Reduce the risk associated with developing multi-threaded applications

Designing software for multi-core architectures creates new challenges

The era of increasing clock rates has ended.  Today's processor architectures are characterized by multi-core and many-core designs.  Building a multi-threaded application or transitioning from a serial application to a parallel application presents significant challenges.  TotalView and ReplayEngine are natively built to help you manage the challenges presented by concurrency, parallelism and threads.

Minimize the risk of race conditions and deadlocks

Multi-threaded applications are subject to a number of risks not present in serial applications. Race conditions are a common problem, even in a well tested multi-threaded application.  You can use locks, semaphores and atomic operations to avoid race conditions, but they can introduce subtle problems of their own. Our tools provide visibility into the behavior of your code, increasing your understanding of the impact of these problems. 

"The ability to port the code, and to watch and test on two different platforms side-by-side in real-time using TotalView’s debugger cut development time by 60 to 70 percent."

-Jim Knoblach, Simulation Manager
CAS, Inc.