Analysis of the overheads incurred due to speculation in a task based programming model
Document typeConference report
Rights accessOpen Access
In order to efficiently utilize the ever increasing processing power of multi-cores, a programmer must extract as much parallelism as possible from a given application. However with every such attempt there is an associated overhead of its implementation. A parallelization technique is beneficial only if its respective overhead is less than the performance gains realized. In this paper we analyze the overhead of one such endeavor where, in SMPSs, speculation is used to execute tasks ahead in time. Speculation is used to overcome the synchronization pragmas in SMPSs which block the generation of work and lead to the underutilization of the available resources. TinySTM, a Software Transactional Memory library is used to maintain correctness in case of mis-speculation. In this paper, we analyze the affect of TinySTM on a set of SMPSs applications which employ speculation to improve the performance. We show that for the chosen set of benchmarks, no performance gains are achieved if the application spends more than 1% of its execution time in TinySTM.
CitationGayatri, R., Badia, R.M., Ayguadé, E. Analysis of the overheads incurred due to speculation in a task based programming model. A: Workshop on Programmability Issues for Heterogeneous Multicores. "MULTIPROG-2015: Proceedings of the Eighth Workshop on Programmability Issues for Heterogeneous Multicores". Amsterdam: 2015, p. 1-12.