. , , ,

,,,

,

: 53 c., 28 ., 5

.

, .

, , .

, , , .

, IBM, AMD, Sun Microsystems, CRAY .


1

1.1

1.2 ࠠ

1.3

1.4

1.5

1.6

1.7

1.8

1.9

1.10

1.11

1.12

1.13

2

2.1

2.2 ࠠ

2.3

2.4 RISC CISC

2.5

2.6 䠠

2.7

3

3.1

3.2

3.3

3.4

3.5

3.6


, , . , 100 , . - , , , - , .

. , . , : -, -, , , , , , dataflow, . , , , , , , .

. 60- . , , .

, 1869 .. . , , , . , - , , . , , , " " (!) (!!) . 1875 , , . , , , .

, , . , , - /// .

. - , -, , . , , , --, , - -, , , . , , , .. , . , , , , , , : , "" , .

, , , , . . " ", , , .

- . - . , , - .


1

 

1.1

-, , 1966 .. , , , . : SISD,MISD,SIMD,MIMD.

SISD (single instruction stream / single data stream) (. 1.1) - . , , , , - . , . , .

1.1 SISD

SIMD (single instruction stream / multiple data stream) (. 1.2) - . , , , . - . , , ILLIAC IV, , , , CRAY-1.

1.2 SIMD

MISD (multiple instruction stream / single data stream) (. 1.3) - . , . , , . , .

1.3 MISD

MIMD (multiple instruction stream / multiple data stream) (. 1.4) - . , , .

1.4 MIMD

, ? SISD, , VAX 11/780. , , - , . , CRAY-1, CYBER 205, FACOM VP .

SIMD : ILLIAC IV, ICL DAP, Goodyear Aerospace MPP, Connection Machine 1 .. . . , - , , CRAY-1. .

MIMD , : Cm*, C.mmp, CRAY Y-MP, Denelcor HEP, BBN Butterfly, Intel Paragon, CRAY T3D . , ( ) , , - .

. , SIMD MIMD, , . . , , dataflow - , . - MIMD. , , , , , , , .

(MISD) . , , .

1.2

. . . (SISD, SIMD, MISD, MIMD), .

SISD :

-            , , PDP-11;

-            , - CDC 6600, CRAY-1, FPS AP-120B, CDC Cyber 205, FACOM VP-200.

SIMD :

-            - - ILLIAC IV, PEPE, BSP;

-            - - STARAN, ICL DAP.

MIMD

-            , , , Cosmic Cube,

-            ( ), , C.mmp, BBN Butterfly, CRAY Y-MP, Denelcor HEP.

1.3

1972 . . - n , . . m, . , n , m . , .

, C (n,m) - . n m P : P(C)=mn. , , , . , 70- , . , , , , , .

, , :

-            - - (n=m=1). . MINIMA (1,1);

-            - - (n>1, m=1). , , , : IBM 701 (36,1), PDP-11 (16,1), IBM 360/50 VAX 11/780 - (32,1);

-            - - (n=1, m>1). , . STARAN (1, 256) MPP (1,16384) Goodyear Aerospace, ILLIAC IV SOLOMON (1, 1024) ICL DAP (1, 4096);

-            - - (n>1, m>1). , mn , : ILLIAC IV (64, 64), TI ASC (64, 32), C.mmp (16, 16), CDC 6600 (60, 10), BBN Butterfly GP1000 (32, 256).

m. , - . , : , - . N F L, .

, , ( ) . , .


1.4

., 70- , , : , - , . , , , / - ( ). , , . , , : I, II ..

I (. 1.5) - , , - , . - . , , . (IBM 701, PDP-11, VAX 11/780), (CDC 7600) - (CRAY-1).


1.5 I

I , , II (. 1.6) . , . I , II - .

1.6 II

II (, STARAN), - , . ICL DAP, 4096 .

I II, III (. 1.7). - - , , , . 1960 . , ( , , "" - (), ()). , STARAN, ICL DAP III, , . III OMEN-60 Sanders Associates, .

1.7 III

I - <=> ( ) IV (. 1.8). . , , , . PEPE, 288 .

1.8 IV

IV, , V (. 1.9). , . , , ILLIAC IV.

1.9 V

, I- V- - , - . VI (. 1.10), ( ), , . , .

1.10 VI

1.5

. . , .

:

-            - , () ;

-            - - () , ;

-            - () , .

1.11

, , - . - , . , , ( , ). - , k , - d w C:

t(C) = (k, d, w)

, . , (.. ) . w- w' , w×w'. × , , . TI ASC 64- , , :

t( TI ASC ) = (1,4,64×8)

- . , , ( - ). Cray Research. , , CDC 6600, , , :

t(CDC 6600) = (1,1×10,~64)

, , -. , , , . n , n . PEPE, 288- , :

t( PEPE ) = (1×3,288,32)

t( PEPE ) = (k×k',d×d',w×w') :

-            k - ( ),

-            k' -

-            d - ,

-            d' -

-            w - ,

-            w' -

1.6

. - , , , MIMD .

(. ), MIMD , . , , , . 1.12:

1. 12 MIMD

. : , , . MIMD , (, Denelcor HEP). , , :

-            MIMD , , ;

-            MIMD , , -.

, MIMD , (, PASM, PRINGLE). , . MIMD . , , MIMD (CRAY X-MP, BBN Butterfly). : , , .

, . MIMD c .

MIMD , , : (lCAP), (Intel Paragon, CRAY T3D), (NCube, Intel iPCS), , , , , (Cm* , CEDAR) , , , .

, , , , MIMD , MIMD, - MIMD. , , Connection Machine 2, , .

1.7

1988 . , SIMD . . "" , , .

. ( reference stream ) S :

S = { (a1t1) (a2t2)..., (b1u1) (b2u2)..., (c1v1)(c2v2)...},

- , , - n , , n . , (b2u2) b2 u2. , I; , - D.

. , ( ) . - . , , . , , , .

S . S, Sa, - , i- - , i- S:

Sa = a1 b1 ...c1 ,a2 b2 ...c2 ,...

S, Sv, - , i- - , i- S:

Sv = t1 u1 ...v1,t2 u2 ...v2 ,...

Sx - , - n , "" : w(Sx) = n.

Sa, Sv w : S - n ,

w(Sa) = S w(Sv) = nS,

S S.

(I, D) I D , , . , (I, D), :

-            w(Ia) ;

-            w(Iv) ;

-            w(Da)

-            w(Dv) .

, :

Iw(Ia)w(Iv)Dw(Da)w(Dv)

:

-            IssDss - - ;

-            IssDsc - - , , , . , , , .

-            IssDsm - SIMD , MPP, Connection Machine 1 , .

-            IssDcc - SIMD - - , ;

-            IssDmm - SIMD , , , ILLIAC IV Connection Machine 2.

-            IscDcc - , , . (VLIW).

-            IccDcc - MIMD . - , / .

-            ImmDmm - MIMD.

, 's', 'c' 'm', . , w(Sa) w(Sv), . : w(Ia)<=w(Iv) w(Da)<=w(Dv). , : w(Iv) <= w(Dv).

, : SIMD . MIMD ImmDmm. , , , .

1.8

. MIMD .

: , , , . , : . , MIMD , :

-           - (GMSV);

-           - (DMSV);

-           - (DMMP);

-           - (GMMP).

, . , , , , CRAY Y-MP ( 1). , , , NCube, ( 3). , BBN Butterfly, ( 2).

: , , ..

1.9

., , , . , - (. 1.13), , , , , , .

1.13

, . , ( D ). ( O ). , , ( T).

. () , . , , LU- , '. ( C ) , ( P).

, : (Pi) () (Pa). , . , , , , .., - .

, : (S) (A). , , . , , , , . data-driven demand-driven

, , .

, , , , , DCPaS DCPaA , : . , OCPaS OCPaA . , , IBM 360/91, Amdahl 470/6 RISC , , OPPiS. , , . DPPiS. , , DPPaS. CDC 6600 , , : OPPaS. Data-flow , , OPPiA, OPPaA.

, , . , T. , '*' , , . , T*D , , .

, . '+'. , , OPPiS+DPPiS ( - TI ASC CDC STAR-100). ( CRAY-1) O*DPPiS, : O*DPPiS+OPPiS. , CRAY X-MP CRAY Y-MP. , , CRAY-1 , : T*(O*DPPiS+OPPiS).

1.10

. , .:

-           ;

-           ;

-           ;

-           .

. . . (p. 1.14), , , . .

1.14

.. , , . , (, , , , ..) (, ), . , , : , dataflow ( ).

, , - , : , dataflow .

.

- :

-            - ;

-            - ;

-            - ;

-            - .

:

-            -

-            - ;

-            - ;

-            - .

:

-            - ;

-            - ;

-            - ;

-            - .

:

-            - ;

-            - ;

-            - ;

-            - .

wavefront:

-            - ;

-            - ;

-            - ;

-            - dataflow.

dataflow:

-            - ;

-            - ;

-            - dataflow;

-            - -dataflow.

, . , "" , , dataflow wavefront. : , , . , , , , , . , , .

1.11

1989 , , . . , , dataflow reduction machine.

, , :

-            (IP - Instruction Processor) - , , ; , , ;

-            (DP - Data Processor) - , , ;

-            (IM - Instruction Memory, DM - Data Memory) - , , ;

-            - , .

, ., :

-            DP IP , ;

-            IM ;

-            ;

-            DP , ;

-            DP;

-            DP .

, , :

-            DP IP , ;

-            IP ;

-            DM;

-            ;

-            DM;

-            IP .

- :

1.15 -

, . , - , :

-            1-1 - ;

-            n-n - i- i- , .. ;

-            1-n - ;

-            nxn - , .

. , 1-n . Connection Machine , , n-n. , , nxn.

. . :

-           (IP);

-           ( ) (IM);

-           IP IM;

-           (DP);

-           ( ) (DM);

-           DP DM;

-           IP DP;

-           DP DP.

Connection Machine 2. : (1, 1, 1-1, n, n, n-n, 1-n, nxn),

(BBN Butterfly, C.mmp) . , . . () . : (n, n, n-n, n, n, nxn, n-n, ),

, : 0, 1 n (.. ), 28 .

1-5 dataflow reduction, . 6 - . 7-10. 11 12 MISD , , . 13- 28- , 13-20 , , 21-28 .

. , , .

, :

-            , , ;

-            - , ;

-            , ; , .


1.12

, -, . , 1990 . , . , . .

- .

:

-            iM - - , ;

-            sM - - , ;

-            C - -. , CRAY-1, , -;

-            sI - () ;

-            pI - ;

-            sX - ;

-            pX - .

, (I) , (IP) , -. , (X) (DP) , -.

N A, ( AN), AN A. , . :

sM3 - , ;

sI4 - , .

- CP C- I, X CP.

, C.sI, C.(C2.pI)2

Ä1.A2" A1 A2.

, -: C.sI C - sI

- MCP M- I, X, CP MCP.

, iM.(C.sI2)k, sM.iM.C.pIn

I" MCP, .

X" MCP, .

, , .

, I" X" .

, , , , .

. , :

1)         R - . Rep(R) :

, R = AN, Rep(R);

2)         R = R1.R2. ... .Rn - , Ri , . head(R) = R1 - ; tail(R) = Rn - .

Link. R1 R2 - . Link(R1, R2):

) tail(R1) head(R2) - ,

) tail(R1) , head(R2) - Zn,

) tail(R1) - Wn, head(R2) - ,

) tail(R1) - Wn, head(R2) - Zm,

, Link . (. . ).

, , .

, . .

, - , (TC - taxonomic characters). .

, . .

. () . , . , , , .

, . , .

, :

1)         - - MCP (memory-cache processor).

. .

2)         - - (P). CP , .

3)         - (P). - CP.

, , .

, .

CP , -. , .

, , , . ( , ).


1.13

. , , , , :

1)         , , :

-            (instruction pipelining), .. , , , , ;

-            , , , ;

-            /, .

. , , , , -, "" ( ), , -, , .

2)         , .

3)         , , , , (, -).

, , , . , - , , ( ) , . , , . 1.16:

1.16

: , , MIMD. . , .

( ) , (, WARP). . . . .

MIMD/SIMD , dataflow, reduction wavefront , MIMD . , , , MIMD.

MIMD/SIMD - . , MIMD , , SIMD (PASM, Non-Von). , .

. Dataflow , , . , , , , .

, reduction : , , , .

Wavefront array , dataflow. , . , , (handshaking), - " " .


2

 

2.1

, -.

. 2.1 . . , . , , . , , , . ( -) .

2.1 . -

. . - (, ) (, ).

. , . . , . , .

, , . , , . , , . , , - .

2.2

- . 2.2. ( 1 32), (- ) . , . 2.2 . , . .

2.2 - -

, . . , . . 2.2 . .

: - -. , , . ( , .) . .

, , - . . - , . , .


2.3

:

1) ;

2) , ;

3) ;

4) , , ;

5) , , ;

6) ;

7) 1, .

() .

, . , , . , , . , . . , , , .

, . - , . . , , . , , , .

50- IBM, , , , , , . , IBM . , , . , , ?

. , 1951 , , , , . IBM System/360, , . .

. :

1) ;

2) , ;

3) , , .

70- , . . . , , . , 70- , .

70- , (, -1 Control Data Cyber). , , .

VAX ( Digital Equipment Corporation), 200 . , VAX , . , . VAX, ( DEC). Compaq DEC 1998 .

8- , 70- . . , , . , .

Motorola 68000 Zilog Z8000, , , . Motorola 68000 , , Z80 ( Zilog Z8000) , Motorola 6800 ( Motorola 68000). , , , Motorola , a Exxon ( Zilog) .

( ) . , Motorola 68000 10 , , 100 , 2 500 . , 2000 , , . , 6000 . , .

2.4 RISC CISC

70- , . , , . - , , , . . ( ).

IBM ; , - 801. IBM , , , .

1980 VLSI . RISC RISC I, RISC II. , 1981 , , MIPS. SPARC MIPS .

. , , . , , , , . , , , .

, ( 50). : DEC VAX IBM 200 300. RISC Reduced Instruction Set Computer . RISC CISC (Complex Instruction Set Computer ). CISC VAX, . , RISC CISC , .

RISC VAX, Intel IBM. , , , , - (, ) . , RISC 4 5 , CISC, RISC 10 ( ), . , , , RISC.

RISC, , , Alpha DEC, CISC (Pentium . .) . . : ?

-, RISC , Intel. -, , Intel CISC. Intel, 486-, RISC, ( ) , CISC . , . , RISC, , .

2.5

, RISC, , . (, 10 , ), . , .

, RISC, . - , , , , .

. . . . CISC , . , .

. , . 500-MIPS 500 , , (MIPS Millions of Instructions Per Second .) , , , .

, ( ) , , , . , 1 , 2 , , 2 , . , , .

. . , , . , . , . , .

. , . . , , , , . , (LOAD STORE).

. , ( 32). , , . . .

2.6

, , . , , . ( ).

: . . . .

2.6.1

, . , , . , . , , , , . IBM Stretch, 1959 .

: . . , , , .

. 2.3 5 , . 1 , , . 2 , , . , . 4 , . , 5 .

2.3 - 5 (); (). 9


. 2.3, , . 1 1 1, . 2 2 1, 1 2. 3 1, 2 2, 1 . 4 4 1, 2, 2 3, 1 4. , 5 1 , .

( ) ( ). , n , n , 1000/ .

2.6.2

, . . 2.4. , . 2.3. . . , (, ), . , , (, , ), .

( , ) RISC. 386- . Intel 486- 1.486- , a Pentium . . 2.4, ( 1 2) . (u-) . (v-) , (FXCH).

2.4 -

, , . , , , ( -). . . , Pentium , , , . , , , Pentium , 486-, . , .

2.5 -

, . . , . 2.5. Pentium II, , . 1987 . 30 CDC 6600. CDC 6600 100 10 . , .

3 , 4 . 3 10 , 10 , , . , ( ). . 2 5, .

2.7

, , . , , , 3D . , , - - 20 /, , Intel. , , , .

- , 5-10 . 50, 100 , .

2.7.1

, . . . , . , , .

- (array processor) , . ILLIAC IV ( ). . 2.6. , , 8x8 /. . , , ( ). - , 50 . 1 , .

2.6 - - ILLIAC IV

(vector processor) - (array processor). - , . , (array processor), , . Cray Research, , , Cray-1 (1974) . Cray Research SGI.

. , , , . - (array processor) , , (vector processor) , . . , . , , .

- (array processor) , , , . - (array processor) , (vector computer), , . (vector processor), , . , , , .

2.7.2

- , . , , . , , - .

. , . . 2.7. .

, , , . , . . 2.7. , . , . , , , . (, -).

. 2.7. (); , ()

, . , , . , - . , , , .

2.7.3

(< 64) , . , . , , , , . .

( , ). , 2D, 3D, . , . . , 10 000 .

, , , . , .


3

3.1

, , , . Alpha 21364 Power4. , , .

. ENIAC, 19 . , . , . , . , . , . , . , , , .

:

1)         ;

2)         - ;

3)         , , , ;

4)         , ();

5)         , .

3.2

 

3.2.1

. , . - , .

, DRAM, . , , EDRAM (embedded DRAM)

3.2.2 -

- , - - . - , -. - . . , Pentium III , : , ; , ; ; - .

, - , , . - - , , . - . -, .

3.2.3

, -, , . . (). n , , , n-1 , , . n . , , , . .

Tera , . Level One, Intel, IXP1200, 6 . IBM Blue Gene, 32 . EDRAM, 32 . 32 256 . EDRAM , -, .

3.3

 

3.3.1

, . , , . , . , .

, . , . .

, , , -, , . , , . , , , , , , . :

-            ;

-            ;

-            , , .

, . , , , , , , . , . , , . , . . , .

. 3.1:

3.1 -

3.3.2

. Intel 80860, . Intel (- Pentium 70 SIMD- Pentium III), AMD (3D Now!), Sun (VIS SPARC), Compaq (Alpha MVI), HP (PA-RISC MAX2), SGI/Mips (MDMX), Motorola (PowerPC AltiVec).

: , (Pentium MMX) , (decoupled) . Pentium III PowerPC AltiVec.

SIMD- , , , (8, 16, 32) . , , Pentium III SIMD- 32- .

3.4

 

3.4.1

, () (SOC system on chip). , , . , , , . , , . , , .

, , . . , . Motorola MPC8260 , , , 10/100 M/ Ethernet, 155 M/ ATM, 256 64 / HDLC. Motorola , PowerPC 603e AltiVec PowerQUICC.

3.4.2

, . Alpha 21364, Power4, Blue Gene. Alpha 21364 Alpha 21264, : 1,5 ; , Direct Rambus; .

3.2 - Alpha 21364

Alpha 21364 (.3.2) 80 , . . , , : , , , , ( ). , . , . , . 41 80 41 72 .

, ( 16 ).

, . . 4 - 10 / 15 . . Alpha 21364 . 3.3:

3.3 -

-, 3 /.

Alpha 21364 Power4 : , , - , , NUMA (distributed shared memory DSM).

Power4 (. 3.4) Power3 64- 1 , 5 2 . . , 170 . . 1,1 8-10 .

- 64 . , () - - . 3 45 /.

3.4 - Power4

(ILP), (TLP). , , -. Power4 0,18- SOI ( ) 5 400 2.

Power4 - , , 16 , 500 , 8 /. 4 35 /. 4 , . 3.5, , , .


3.5 - Power4

- 1,5 , 100 /. , , -, .

Power4, - 32 16 . 1/3 , 10 /. - , . - . 20 .

Power4 IBM ISA, RS/6000 AS/400 Power PC. , , , ISA.

3.5

, , Alpha 21264 Pentium III, , , (), ( ), . . , . , . .

3.5.1

, , . , , . , , , , , , .

. , . , . , , , , , . , , . , .

, , , , . . . .

, , . , , . , . , , .

, Alpha 21464 , Alpha 21264.

3.5.2

, , :

1) , , , , . , , . ;

2) , , . , , . , , , , , . , ;

3) , , . , , . , . , / , . . - , , . Pentium Pro. , , , Power4;

4) , , 108 109 , 104 105 . , , . , - : . . , . , , . SIMD-, , Fuzion 150, MIMD-, , Blue Gene.

3.6

, . , . . Alpha 21364 Alpha 21464.


, , .

, .

, - .


1. . , 4- . .: , 2003. 700 .;

2. . , , 1999, 5-6, . 8;

3. . , , 1999, 9-10, . 8;

4. .. . .: . 1980. 520 .;

5. 7.080403 " " 7.080404 " " / . .. . : , 2001. 52 .

: 53 c., 28 ., 5 . ,

 

 

 

! , , , .
. , :