Active Testing: Predicting And Confirming Concurrency Bugs For Concurrent And Distributed Memory Parallel Systems