CSC/ECE 506 Spring 2010/ch 3 yl: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 11: | Line 11: | ||
'''do''' A(i):=[A(i-1) + A(i) + A(i+1)]/3; '''next''' i; | '''do''' A(i):=[A(i-1) + A(i) + A(i+1)]/3; '''next''' i; | ||
'''forall''' | '''forall''' | ||
i:=2:N-1 '''do''' A(i):=[A(i-1) + A(i) + A(i+1)]/3; | 'i:=2:N-1' '''do''' A(i):=[A(i-1) + A(i) + A(i+1)]/3; | ||
===DOPIPE=== | ===DOPIPE=== | ||
Revision as of 19:32, 20 February 2010
Supplement to Chapter 3: Support for parallel-programming models. Discuss how DOACROSS, DOPIPE, DOALL, etc. are implemented in packages such as Posix threads, Intel Thread Building Blocks, OpenMP 2.0 and 3.0.
Parallel-programming models
DOALL
for i:=2:N-1 do A(i):=[A(i-1) + A(i) + A(i+1)]/3; next i; forall i:=2:N-1 do A(i):=[A(i-1) + A(i) + A(i+1)]/3;
DOACROSS
for 'i:=2:N-1'
do A(i):=[A(i-1) + A(i) + A(i+1)]/3; next i; forall
'i:=2:N-1' do A(i):=[A(i-1) + A(i) + A(i+1)]/3;