Abstract:This paper extends the famous data reuse theory to a parallel domain and proposes parallel data reuse theories for OpenMP and OpenTM applications, respectively. Through studying the relationships between threads and transactions, the parallel data reuse theories systemically discuss how to classify, judge, and compute reuses in parallel programs. Meanwhile, the optimization framework for reducing OpenTM transactions rolled back is studied. Finally, the data reuses in SPEComp2001 benchmarks are analyzed. The parallel data reuse theories can be used to direct the analysis of parallel applications and the research of compiler optimization techniques on multi-core shared memory architecture.