You are on page 1of 21

CH2 – PROGRAM & NETWORK

PROPERTIES
• 3 KEY AREAS
• COMPTN MODELS FOR P COMPTG
• INTERPRR COMMN
• SYST INTEGRATION INTO GEN
COMPG ENV
• VARIOUS FORMS
• LEVELS OF PARELLELISM
• COMPTL GRANULARITY
• TIME & SPACE COMPLEXITIES
• COMMN LATENCIES
• SCHEDG POLICIES
• LOAD BALANCING
DATA & RESOURCE DEPENDENCES

• ABILITY TO EXEC SEVERAL PROGR


SEGMENS IN PAR REQ EACH SEG TO
BE INDEP OF THE OTHER SEGS
• DEPENDENCE GRAPH TO DESCRIBE
THE RELATIONS
DATA DEP (ex 2.1 fig 2.1a) *

• S1: LOAD R1, A


• S2: ADD R2, R1
• S3: MOVE R1, R3
• S4: STORE B, R1
• S2 IS FLOW –DEP ON S1 BEC THE VAR A
IS PASSED VIA REG R1
• S3 IS ANTIDEP ON S2 – S3 FOLLS S2 IN
PRG ORDER & O/P OF S3 OVERLAPS THE
I/P TO S2
• S3 IS O/P DEP ON S1 BEC THEY BOTH
MODIFY THE SAME REG R1
• S2 & S4 – TOTALLY INDEP
I/O (ex 2.1 b & fig 2.1) *

• S1: READ (4), A(I)


• S2: REWIND (4)
• S3: WRITE (4), B(I)
• S4: REWIND (4)

• S1 & S3 ARE I/O DEP


CONTROL DEP

• THIS REFERS TO THE SITUATION


WHERE THE ORDER OF EXECN OF
STS CANNOT BE DONE BEFORE RUN
TIME --EG CONDNL STS(IF) WILL
NOT BE RESOLVED UNTIL RUN TIME
• DO 10 I = 1,N
• A(I) = C(I)
• IF (A(I) .LT. 0) A(I) =1
• 10 CONTINUE
• SCUCCESSIVE ITERATIONS ARE
CONTROL DEP **
BERNSTEINS CONDITIONS

• P1 & P2 WITH I/P & O/P SETS I1 & I2


AND O1 & O2
• P1 & P2 CAN EXEC IN PAR denoted P1||P2
IF THEY ARE INDEP & DO NOT CREATE
CONFUSING RESULTS
• I1 O2 = 0

• I2 O1 = 0

• O1 O2 = 0
• SIMPLY MEANS -- TWO PRS CAN EXEC IN PAR
IF THEY ARE FLOW –INDEP, ANTI-INDEP, & O/P
INDEP
• PAR EXEC OF 2 PR PRODUCES THE SAME
RESULTS REGARDLESS OF WHETHER THEY ARE
EXECUTED SEQ IN ANY ORDER OR IN PAR.
THIS IS PROSSIBLE ONLY IF THE O/P OF ONE
PR WILL NOT BE USED AS I/P TO THE OTHER
PR – FURTHER THE 2 PRS WILL NOT MODIFY
THE SAME SET OF VARS(IN MEM OR REGS)
EX 2.2 DETN OF PARALLM IN A
PROG USING BERNS CONDNS *
• P1: C=D*E
• P2: M=G+C
• P3: A=B+C
• P4: C+L+M
• P5: F=G/E
• ASSUME-1 ST REQS 1 STEP FOR EXECN.
NO PIPELINING IS CONSIDERED
• DEPEND GRAPH OF Fig 2.2a(not
drawn) DEMOS FLOW DEP AS WELL
AS RES DEP
• IN SEQ EXECN, 5 STEPS ARE NEEDED
– Fig 2.2b
• IF 2 ADDERS ARE AVAIL SIMULT,
PAR EXECN REQS ONLY 3 STEPS –
Fig2.2c
• VIOLATIONS OF ANY ONE OR MORE
OF THE 3 CONDNS PROHIBITS
PARALLELISM BETW 2 PRS
• GOALS OF ANALYZING THE DATA
DEP, CONTR DEP, & RES DEP IN A
CODE ARE TO ID OPPORTS FOR
PARALLZN OR VECTORIZATION
H/W PARLLELISM

• ONE WAY TO CHARACTERIZE PARLLLSM


IS – NO. OF INSTRN ISSUES PER M/C
CYCLE –IF A PROC ISSUES K INSTRNS
PER M/C CYCLE, THEN IT IS CALLED A K-
ISSUE PROC
• CONVENTIONAL PROC TAKES ONE OR
MORE M/C CYCLES TO ISSUE A SINGLE
INSTRN – 1 ISSUE M/CS
• I960CA IS 3 ISSUE PROC WITH 1 ARITH,
1 MEM ACC,& 1 BR INSTRN ISSUED PER
CYCLE
• IBM RISC/SYSYT 6000 IS A 4 ISSUE PROC
-1 ARITH, 1 MEM ACC, 1 FLT PT, & 1 BR
INSTRN PER CYCLE
• MULTIPROC BUILT WITH N K-ISSUE
PROCS –N*K THREADS OF INSTRNS
SIMULT
S/W PARALLELISM

• THIS TYPE OF PARALLSM IS


DEFINED BY THE CONTROL & DATA
DEPENDENCE OF PROGRS
• DEGREE OF PARSM –SEEN IN PROG
PROFILE OR PROG FLOW GRAPH
• S/W PARSM IS A FN OF ALGOR,
PROG STYLE & COMPILER OPTIMZN

You might also like