Taming Deadlocks in Multithreaded Programs
Pin: building customized program analysis tools with dynamic instrumentation