Design Space Exploration for Implementing a Software-Based Speculative Memory System

To enlarge the opportunities for parallelizing a sequentially coded program, the authors have previously proposed speculative memory (SM). With SM, they can start the parallel execution of a program by assuming that it does not violate the data dependencies in the program. When the SM system detects...

Full description

Saved in:
Bibliographic Details
Published in:International journal of software innovation Vol. 6; no. 2; pp. 37 - 49
Main Authors: Fujisawa, Kohei, Nunome, Atsushi, Shibayama, Kiyoshi, Hirata, Hiroaki
Format: Journal Article
Language:English
Published: Mount Pleasant IGI Global 01.04.2018
Subjects:
ISSN:2166-7160, 2166-7179
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:To enlarge the opportunities for parallelizing a sequentially coded program, the authors have previously proposed speculative memory (SM). With SM, they can start the parallel execution of a program by assuming that it does not violate the data dependencies in the program. When the SM system detects a violation, it recovers the computational state of the program and restarts the execution. In this article, the authors explore the design space for implementing a software-based SM system. They compared the possible choices in the following three viewpoints: (1) which waiting system of suspending or busy-waiting should be used, (2) when a speculative thread should be committed, and (3) which version of data a speculative thread should read. Consequently, the performance of the busy-waiting system which makes speculative threads commit early and read non-speculative values is better than that of others.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:2166-7160
2166-7179
DOI:10.4018/IJSI.2018040104