1. Design Space Exploration for Implementing a Software-Based Speculative Memory System
- Author
-
Hiroaki Hirata, Kohei Fujisawa, Atsushi Nunome, and Kiyoshi Shibayama
- Subjects
Computer Networks and Communications ,business.industry ,Design space exploration ,Computer science ,020101 civil engineering ,02 engineering and technology ,Computer Graphics and Computer-Aided Design ,0201 civil engineering ,Computer Science Applications ,020303 mechanical engineering & transports ,Software ,0203 mechanical engineering ,Artificial Intelligence ,Software engineering ,business - Abstract
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.
- Published
- 2018