Abstract

Speculative Multithreading (SpMT) is a thread level automatic parallelization technique to accelerate sequential programs. Machine learning has been successfully introduced into SpMT to improve its performance. An appropriate sample set is important for machine learning-based (ML-based) thread partition. Conventionally, heuristic rules-based (HR-based) sample generation approach can not generate adaptive samples, which conform to ML-based thread partition platform and characteristics of source applications. A hybrid sample generation approach is proposed. With this method, we firstly automatically generate samples which are mips codes consisting spawning points (SP) and control quasi-independent points (CQIP) by heuristic rules, then manually adjust the positions of SP and CQIP and rebuild pre-computation slice (p-slice) to obtain better performance for every application. During the implementation of this approach, three measures: bias weighting, reservation of optimal solutions, summary of greedy rules are carried out. In this way, we enhance the adjustment frequency for the subroutine with high called number, achieving a stable improvement of speedups. On Prophet, which is a generic SpMT processor to evaluate the performance of multithreaded programs, Olden benchmarks are used to realize the approach. Experiments show that the approach can obtain better sample sets, which deliver a better performance improvement of about 10% on a 32 core than conventional heuristic-based approach. Experiments also prove that this approach is effective to get sample sets for ML-based thread partition methods.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call