Trace Based Analyses of Parallel Software