Using Off-the-Shelf Hardware Transactional Memory to Implement Speculative While in OpenMP - Salamanca, Juan [UNESP]; Baldassin, Alexandro [UNESP] (Springer Nature, 2022)
This paper presents Speculative While (SWh), a technique that enables Speculative Task Execution (STE) in OpenMP to accelerate while loops marked by the proposed while construct and the swh clause. With SWh, the speculative tasks are generated by the OpenMP task construct in while loops (from linear algebra or goal finding algorithms) where control dependencies between iterations can be speculated. This paper also presents a detailed analysis of the application of Hardware Transactional Memory (HTM) support to implement Speculative While and describes a preliminary evaluation of SWh implementation using HTM. As a result, it provides evidence to support the performance benefits of using STE over HTM to parallelize some well-known benchmarks. Experimental results reveal that by implementing SWh over HTM, speed-ups of up to 1.8 × can be obtained for the Gauss-Seidel benchmark.
Keywords: OpenMP; Speculative While; Transactional Memory