Partially redundant fence elimination for x86, ARM, and power processors

Robin Morisset, Francesco Zappa Nardelli · 2017

We show how partial redundancy elimination (PRE) can be instantiated to perform provably correct fence elimination for multi-threaded programs running on top of the x86, ARM and IBM Power relaxed memory models. We have implemented our algorithm in the backends of the LLVM compiler infrastructure. The optimisation does not induce an observable overhead at compile-time and can result in up-to 10% speedup on some benchmarks.

Read the paper · More papers on PaperTik