Title :
Speculative Computing of Recursive Functions Taking Values from Finite Sets
Author :
Brzuszek, Marcin ; Sasak, Anna ; Turek, Marcin
Author_Institution :
Inst. of Comput. Sci., Maria Curie Sklodowska Univ., Lublin, Poland
Abstract :
This paper concerns speculative parallelization as a method of improving computations efficiency and also as a method of reducing the problem solving time with reference to its sequential version. Speculative parallelization is proposed for a particular class of problems, described as recursive functions taking values from finite sets. It refers to speculative execution of consecutive iteration steps. Each of them, except the first one, depends on the preceding iteration step yet before it ends. Assuming that in the sequential version one iteration is performed in one linear execution time step (hereinafter referred to as computational step), then the aim of the speculative parallelization is the reduction of the total number of computational steps and thus execution of more than one iteration in one time step. The essence of the problem is that we assume some mapping schemes of arguments into the set of possible values of the function in speculative computing, i.e. there exists precise information about the possible values that the function can take for particular arguments. This paper presents simulation results for the chosen mapping schemes, illustrating how the number of steps, required to compute the value of the function for the given argument, depends on the structure of the mapping scheme and on the number of used parallel threads.
Keywords :
computational complexity; iterative methods; multi-threading; parallelising compilers; recursive functions; argument mapping scheme; finite set; iteration step; linear execution time step; parallel thread execution; problem solving; recursive function; speculative computing; speculative parallelization; Computational modeling; Computer science; Concurrent computing; Distributed computing; Hardware; Parallel processing; Physics computing; Problem-solving; Velocity measurement; Yarn; parallel programming; recursive functions; speculative parallelization; thread-level speculation;
Conference_Titel :
Parallel and Distributed Computing, 2008. ISPDC '08. International Symposium on
Conference_Location :
Krakow
Print_ISBN :
978-0-7695-3472-5
DOI :
10.1109/ISPDC.2008.23