The Parallel Evaluation of General Arithmetic Expressions
read more
Citations
Cilk: An Efficient Multithreaded Runtime System
An introduction to parallel algorithms
The implementation of the Cilk-5 multithreaded language
Scheduling multithreaded computations by work stealing
Cilk: an efficient multithreaded runtime system
References
A Parallel Algorithm for the Efficient Solution of a General Class of Recurrence Equations
An empirical study of FORTRAN programs
On the Number of Operations Simultaneously Executable in Fortran-Like Programs and Their Resulting Speedup
A Survey of Parallelism in Numerical Analysis
Related Papers (5)
Frequently Asked Questions (11)
Q2. What is the first step in the inductive hypothesis?
In the first k - 6 steps the authors compute F1, G,, F~, G2 and start computing A1, B1, C1, and Dt , using Pi(I L, [) + Pl([ R1 [) + P2(] E1 I) processors.
Q3. What is the proof of theorem 2?
I f p processors which can perform " ~ " and " , " in unit time are available, then E can be evaluated in time 4 log2n -b 2 (n -- 1)/p.A proof of Theorem 2 is given in [4], where the authors also show that , for real expressions and approximate arithmetic, the evaluation of E in the t ime given by Theorem 2 is numerically stable (in the sense that the computed result can be obtained by making small relative changes in the values assigned to She atoms and then performing exact ari thmet ic) .
Q4. what is the t- n of x?
LEMMA 2. ~ff a computation C can be performed in time t with q operations and sufficie.ntly many processors which perform arithmetic operations in unit time, then C can be" performed in time t -4- (q -- t ) /p with p such processors.
Q5. How can the authors evaluate arithmetic expressions in time?
By Theorem 1, E = F/G, where F and G can be evaluated in time [-4 log2 (n -- 1)7 -- 2 < 4 log2n -- 1 with less than I0 (n - 1) operations.
Q6. what is the inductive hypothesis for x2?
since The authorR21 <_ n - 1, part (1) of the inductive hypothesis shows that R~ = F4/G4, where F4 and G4 can be evaluated in time k -- 2 with P~ (I R2 [) processors and Q1 ([ R2 l) operations.
Q7. What is the title of the paper?
Proc. Symposium on Complexity of Sequential and Parallel Numerical Algorithms (Carnegie-Mellon U., Pittsburgh, Pa., May 1973), Academic Press, New York, 1973, pp. 83-102.
Q8. What is the number of processors required to compute F and G?
Since X, = F3/G3, it follows that E = F/G, where F = A1F3 + B1Ga and G = CxF3 + D1G3 can be evaluated in time k -- 2.Consider the number of processors required to compute F and G as above.
Q9. what is the simplest way to evaluate a molecule?
Now X1 = LiO,R, = (F,/G1)Oi(F2/G2) = F3/G3, where{F1G2-~-F2G, if 0 , = "+",~ ~GiG2 if 0 , = "'~-" o r " * " , } F~ = ~F,F2 if 0, "* '" The authorand Ga = (G1F~ if 0, " / "[F1G2 if 01 " / " ,Hence F3 and G3 can be evaluated in time k - 4.
Q10. how many times can p processors perform addition, multiplication, and division in time?
- 1 [-s,/p-1 _< (1 -- 1/p) t -4- ( l /p ) ~ = 1 s, = t -4- (q -- t ) /p .COROLLARY 1. Let E be as in Theorem The authorand suppose that p processors which can perform addition, multiplication, and division in unit time are available.
Q11. how many processors are required to compute a molecule?
The number of processors required to compute A, • • • , D simultaneously in time k is at :mostmax [P2(] E~ I) "4- P2([ L2 ]) + P~(I R2 I), 8 "4- P~([ R2 {)] = max [3(]