research and development in advanced parallelizing compiler technology project · 2011-04-04 ·...

34
Research and Development in Advanced Parallelizing Compiler Technology Project APC Project Leader Prof. Hironori Kasahara Waseda University http://www.kasahara.elec.waseda.ac.jp [email protected] http://www.apc.waseda.ac.jp

Upload: others

Post on 24-Mar-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Research and Development in Advanced Parallelizing Compiler

Technology Project

APC Project LeaderProf. Hironori Kasahara

Waseda Universityhttp://www.kasahara.elec.waseda.ac.jp

[email protected]://www.apc.waseda.ac.jp

Page 2: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Needs for Advanced Parallelizing Compiler• Wide use of multiprocessor architectures

– From chip multiprocessor to high performance computer such as

» IBM Power4 chip multiprocessor» Sun Ultra80 4processor multiprocessor workstation» Sun V880 8 processor entry level server» IBM pSeries690 high end sever (RegattaH)» Earth Simulator world fastest supercomputer

– Increasing gap between peak and effective performance with increase of the number of processors

– Increasing speed gap between processor and memory– Difficulty in parallel programming and tuning

• Compilers to improve Effective Performance, Cost Performance and Ease of Use (Software Productivity) are required.

http://www.sun.com/desktop/products/ultra80/

Page 3: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

IBM Power4 Chip Multiprocessor

J. M. Tendler, J. S. Dodson, J. S. Fields, Jr., H. Le, and B. Sinharoy," POWER4 system microarchitecture",IBM Journal of Research and Development, Vol46, No. 1, 2002

http://www-1.ibm.com/servers/eserver/pseries/hardware/whitepapers/power4.html

Page 4: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

IBM pSeries690 RegattaH• Up to 16 Power4: 32 way SMP Server

– L1(D) : 64 KB (32KB/processor, 2 way assoc.), L1(I): 128 KB (64KB/processor, Direct map)– L2 : 1.5 MB (shared cache with 2 procs., 4~8 way assoc.)– L3 : 32 MB (external, 8 way assoc.) [x 8 = 256 MB]

GXGX

P

L2

PP

L2

P

P

L2

P P

L2

P

GXGX

P

L2

PP

L2

P

P

L2

P P

L2

P

GX

GX

P

L2

PP

L2

P

P

L2

P P

L2

P

GX

GX

GX

GX

GX

P

L2

PP

L2

P

P

L2

P P

L2

P

GX

GX

GX

GX

GX

MemSlot

GX Sl ot

L3 L3 L3 L3L3 L3L3 L3

L3 L3

L3 L3

L3 L3L3 L3 L3 L3

L3 L3

L3 L3

L3 L3

L3 L3

L3 L3

L3 L3

L3 L3

MCM 1

MCM 3MCM 2

MCM 0

GX Slot

MemSlot

MemSlot

MemSlot

MemSlot

MemSlot

MemSlot

MemSlo t

GX Slot

GX Sl ot

Four 8-way MCM Featur es Assembled into a 32-way pSer ies 690

IBM @server pSeries690 Configuring for Performance

http://www-1.ibm.com/servers/eserver/pseries/hardware/whitepapers/p690_config.html

Page 5: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Advanced Parallelizing Compiler Technology Project

Goal: Double the effective performance

1980 20001990

Contents of Research and Development ① R & D of advanced parallelizing compiler

Multigrain, Data localization, Overhead hiding② R & D of Performance evaluation technology

for parallelizing compilers

Slow down

IT, Bio-tech., Device, Earth environment, Next-generation VLSI design, Financial engineering, Weather forecast, New clean energy, Space development, Automobile, Electric Commerce, etc

Ripple Effect① Development of competitive next

generation PC and HPC② Putting the innovative automatic

parallelizing compiler technology to practical use

③ Development and market acquisitionof future single-chip multiprocessors

④ Boosting R&D in the following many fields:  

Background and Problems①Adoption of parallel processing as a core

technology on PC to HPC ② Increase of importance of software on IT③ Need for improvement of cost-performance

and usability

Performance

Hardware Peak performance

Effective Performance

<Purpose>

Theoretical maximum performance vs.Effective performance of HPC

year

Expa

nd G

ap

APC

Pro

ject

Improvement of   ① Effective performance    ②Cost-performance   ③ Ease of use   

1T

1G

2000.9.8 –2003.3.312000:¥420 Million, 2001:¥380M, 2002:¥290M

Page 6: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

JIPDEC (Japan Information Processing Development Corporation)JIPDEC (Japan Information Processing Development Corporation)

Project Leader : Prof. Hironori KASAHARA (Waseda Univ.)Sub-Leaders : Assoc. Prof. Hayato YAMANA (Waseda Univ.)

Dr. Hanpei KOIKE (AIST)

Central Laboratory (APC Lab.) – Waseda Univ.Central Laboratory (APC Lab.) – Waseda Univ.

Group of Advanced Parallelizing Compiler Technology

Group of Advanced Parallelizing Compiler Technology

Group of Performance Evaluatiojn for Parallelizing Compiler

Group of Performance Evaluatiojn for Parallelizing Compiler

(administrative corporation: Contractor of APC Project)

APC Propulsive SectionAPC Propulsive Section

Group Leader: Tokuro ANZAKI (Hitachi)Group Leader: Koh HOTTA (Fujitsu)

Fujitsu Ltd.(*)Hitachi Ltd.(*)AIST(**) (National Institute of Advanced Industrial Science and Technology)

Waseda Univ.(**)Toho Univ.(***)

Fujitsu Ltd.(*)Hitachi Ltd.(*)Tokyo Institute of Technology (***)Univ. of Electro-Communications(***)Waseda Univ.(**)

(*) Researchers of Fujitsu and Hitachi are on loan to JIPDEC(**) Joint Research contractors (**) Subcontractors

Int’l Advisory Board•Prof. David A. Padua•Prof. Monica S. Lam •Prof. Rudolf Eigenmann •Prof. Francois Irigoin

Page 7: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Research Parallelizing Compilers• Automatic loop parallelization

<Data Dependence Analysis & Restructuring>Runtime dependence analysis, Symbolic analysis, Interprocedure analysis, Unimodulertransformation, Array prizatization, Fusion, Unrolling etc.

è Polaris, SUIF , Promis (Parafrase2) …Limitation of loop parallelismØ Sequential loops and parts of program except loopsØ Fewer loop iterations than the number of processors

Page 8: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Multigrain Parallel Processing in OSCAR parallelizing compiler

• Coarse grain task parallelism– Among subroutines, loops & basic blocks– Statically or dynamically schedule to processors or

PCs (Processor Clusters) at compile or run time• Loop parallelism

– Among loop iterations– Schedule to processors or PCs

• (Near) Fine grain parallelism– Among statements in a basic block – Statically schedule to processors in a PC

• Their hierarchical combination

Page 9: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Research Topics in Advanced Parallelizing Compiler Project

• Multigrain parallelization technology– Data dependence analysis (Inter-procedural, Runtime) – Automatic selection of suitable grain – Automatic data distribution (DSM, Cache, Local Mem.)– Scheduling (Load balancing, Data transfer overhead

minimization)– Speculative execution– Tuning tools– Use of OpenMP+ as an intermediate language

• Performance evaluation of compiler– Evaluation of individual parallelization technology– Evaluation of total compiler performance

• Selection of benchmark programs which can clearly show performance of compiler

Page 10: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

APC Compiler Organization

Parallelizing Tuning System

Program Visualization Technique

Techniques for Profiling & Utilizing Runtime Info

Feedback-directed Selection Technique of

Compiler Directives

- Hierarchical Parallel- Affine Partitioning

MultigrainParallelizationSource

Program

FORTRAN

OpenMPCode

Generation

APC Multigrain Parallelizing Compiler

Feedback

- Cache optimization- DSM optimization

Automatic DataDistribution

- Static Scheduling- Dynamic Scheduling

Scheduling

- Inter-procedural- Conditional

Data DependenceAnalysis

- Coarse Grain- Medium Grain- Architecture Support

SpeculativeExecution

RuntimeInfo

Variety of Shared Memory Parallel machines

SUNUltra 80

IBMpSeries690

IBMRS6000

IBM XL FortranVer.8.1

Sun Forte 6Update 2

IBM XL FortranVer.7.1

Page 11: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Generation of Coarse Grain Tasks

nMacro-tasks (MTs)ä Block of Pseudo Assignments (BPA): Basic Block (BB)ä Repetition Block (RB) : outermost natural loop ä Subroutine Block (SB): subroutine

Program

BPA

RB

SB

Near fine grain parallelization

Loop level parallelizationNear fine grain of loop bodyCoarse grainparallelization

Coarse grainparallelization

BPA

RBSB

BPARBSB

BPARBSBBPARBSB

BPARBSBBPARBSB

1st. Layer 2nd. Layer 3rd. LayerTotalSystem

Page 12: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Earliest Executable Condition Analysis for Coarse Grain Tasks (Macro-tasks)

A Macro Flow Graph

A Macro Task Graph

Page 13: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Automatic processor assignment in 103.su2cor

• Using 14 processors– Coarse grain parallelization within DO400 of subroutine LOOPS

Page 14: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

MTG of Su2cor-LOOPS-DO400

DOALL Sequential LOOP BBSB

n Coarse grain parallelism PARA_ALD = 4.3

Page 15: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Code Generation Using OpenMP• Compiler generates a parallelized program using

OpenMP API• One time single level thread generation

– Threads are forked only once at the beginning of a program by OpenMP “PARALLEL SECTIONS”directive

– Forked threads join only once at the end of program

• Compiler generates codes for each threads usingstatic or dynamic scheduling schemes

• Extension of OpenMP for hierarchical processing is not required

Page 16: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Image of Generated OpenMP Code for Hierarchical Multigrain Parallel Processing

Centralized scheduling code

Distributed scheduling code

T0 T1 T2 T3

Thread group0

MT1_1

SYNC SEND

MT1_2

SYNC RECV

T4 T5 T6 T7

1_4_2

1_4_4

1_4_3

1_4_1

1_4_2

1_4_4

1_4_3

1_4_11_3_2

1_3_4

1_3_3

1_3_1

1_3_6

1_3_5

1_3_2

1_3_4

1_3_3

1_3_1

1_3_6

1_3_5

1_3_2

1_3_4

1_3_3

1_3_1

1_3_6

1_3_5

SECTIONSSECTION SECTION

END SECTIONS

Thread group1

MT1_1

MT1_3SB

MT1_2DOALL

MT1_4RB

1st layer

2nd layer

1_3_1

1_3_2 1_3_3

1_3_5

1_3_4

1_3_61_4_21_4_31_4_4

1_4_1

MT1-4

MT1-3

2nd layer

Page 17: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

0.0

2.0

4.0

6.0

8.0

10.0

12.0

tomca

tvsw

imsu

2cor

hydro

2d mgrid

applu

turb3

d apsi

fpppp

wave5

wupwise

swim

2k

mgrid2

k

applu

2k

sixtra

ckap

si2k

Spe

edup

ratio

XL Fortran(max)

OSCAR(max)

Performance of Multigrain Parallelization on 16 processor High-end Server IBM pSeries690

23.1s

19.2s

3.8s

16.7s

38.3s

3.4s

21.5s

7.1s

21.0s

3.0s

16.4s

3.1s

23.2s

14.1s

37.4s 39.5s

39.5s27.8s35.1s30.3s21.5s 126.5s 307.6s 291.2s 279.1s

126.5s

115.2s

38.5s

107.4s

28.8s

184.8s279.1s

• IBM XL Fortran for AIX Version 8.1– Sequential execution : -O5 -qarch=pwr4– Automatic loop parallelization : -O5 -qsmp=auto -qarch=pwr4– OSCAR compiler : -O5 -qsmp=noauto -qarch=pwr4

(su2cor: -O4 -qstrict)

22.5s 85.8s 18.8s

22.5s 85.8s 18.8s

282.4s 321.4s

282.4s 321.4s

Page 18: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Performance of Multigrain Parallel Processing for 102.swim on IBM pSeries690

0.00

2.00

4.00

6.00

8.00

10.00

12.00

14.00

16.00

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Processors

Spee

d up

rat

ioXLF(AUTO)

OSCAR

Page 19: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

It makes clone procedures, propagates constants beyond procedure boundaries,and evaluates expressions at compile time.

subroutine f(x,m)if (m=1) then

call g(x)else if (m=2) then

call h(x)endif

call f (x,1)

call f (x,2)

Aggressive Constant Propagation

call clone_f (x,1)

call f (x,2)

subroutine clone_f(x,m)call g(x)subroutine f(x,m)call h(x)

Page 20: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

do i=1, n...

call f(x,y)...

end dodo j =1,n...

end do

!$OMP PARALLEL!$OMP DOdo i=1, ncall f(x, y)

enddo!$OMP END DO NOWAIT!$OMP DOdo j=1, n

...enddo

!$OMP END DO!$OMP END PARALLEL

Interprocedural ParallelizationIt can parallelize the loops including procedure calls and enclose contiguous parallel loops in one parallel region.

Page 21: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

SPEC CFP95 turb3d on Origin 2000

Performance of InterproceduralAnalysis

Interprocedural Analysis in APC compilerMIPSPro Fortran V.7.30

0

5

10

15

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31

MIPS PRO

APC IPA

100%pararell

50%pararell

Page 22: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Affine Partitioning [Lim & Lam97]

- A lot of transformations can be done automatically

- The followings are considered at the same time

l improve data localityl reduce synchronization overhead

l parallelization

- Extract pipeline parallelism

Page 23: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Generated pipelined code in OpenMP

Consider parallelexecution order

j

k

P0

P1

P2

myklb

mykub

do j = 1, ny-2waitPrev()

do k = myklb, mykub......

enddosignalToNext()

enddo

Page 24: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Speedup of applu on HP Alpha Server (8 Processors) by Affine Partitioning

0

1

2

3

4

5

1 2 3 4 5 6 7 8The number of CPUs

Spe

edup

apcpara

Page 25: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Data-Localization Loop Aligned Decomposition

• Decompose multiple loop (Doall and Seq) into CARs and LRsconsidering inter-loop data dependence.– Most data in LR can be passed through LM.– LR: Localizable Region, CAR: Commonly Accessed Region

DO I=69,101DO I=67,68DO I=36,66DO I=34,35DO I=1,33

DO I=1,33

DO I=2,34

DO I=68,100

DO I=67,67

DO I=35,66

DO I=34,34

DO I=68,100DO I=35,67

LR CAR CARLR LR

C RB2(Doseq)DO I=1,100

B(I)=B(I-1)+A(I)+A(I+1)

ENDDO

C RB1(Doall)DO I=1,101

A(I)=2*IENDDO

RB3(Doall)DO I=2,100

C(I)=B(I)+B(I-1)ENDDO

C

Page 26: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Partial Static Assignment

Original execution orderon single processor

Dynamic scheduling resulton single processor

dlg0dlg1 dlg2 dlg3

Effective cache usage

time

timeDynamic scheduler assigns macro-tasks in a DLG to the same processors as consecutively as possible

Page 27: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

PARAMETER (N1=513, N2=513)

COMMON U(N1,N2), V(N1,N2), P(N1,N2),* UNEW(N1,N2), VNEW(N1,N2),1 PNEW(N1,N2), UOLD(N1,N2),* VOLD(N1,N2), POLD(N1,N2),2 CU(N1,N2), CV(N1,N2),* Z(N1,N2), H(N1,N2)

Data Layout for Removing Line Conflict Misses by Array Dimension Padding

Declaration part of arrays in spec95 swim

PARAMETER (N1=513, N2=544)

COMMON U(N1,N2), V(N1,N2), P(N1,N2),* UNEW(N1,N2), VNEW(N1,N2),1 PNEW(N1,N2), UOLD(N1,N2),* VOLD(N1,N2), POLD(N1,N2),2 CU(N1,N2), CV(N1,N2),* Z(N1,N2), H(N1,N2)

before padding after padding

Box: Access range of DLG0

4MB 4MB

padding

Page 28: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Performance of Cache Optimization with Padding on Sun Desktop WS Ultra80 (4 processors)

96.7

115.4 76.9

65.9

19.0

21.3

30.7

55.6

120.7 198.3 141.3 190.9

0.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

10.0

tomcatv swim hydro2d turb3d

Programs

Spee

dup

ratio

forteoscar w/ padding

Page 29: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

First Touch Control Method for Distributed Shared Memory Systems

11: c FTC loop12: !$omp parallel do13: do i=41, 10041, 10014: A(i)=015: enddo

1: real A(100)

21: c Initialization loop22: !$omp parallel do23: do i=1, 1001, 10024: A(i)= 025: enddo

・・・31: c Kernel loop32: do itr=1, 1000033: !$omp parallel do34: do i=41, 10041, 10035: A(i)= ...36: enddo37: enddo

(a) Example program 1

(c) First touch control method

Inserted at the head of execution part

Generate the dummy loop to imitate reference patterns

11: c Data distribution directive

12: c$distribute A(block)

(b) Conventional methodInserted in the declaration part

Page 30: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

!$omp parallel dodo j = 1, ndo k = rowstr(j), rowstr(j+1)-1sum = sum + a(k) * p(colidx(k))

enddoq(j) = sum

enddo

(b) a (c) colidx (d) rowstr

1 2 3 4 5 6 7 8 1 1,1 1,1 1 1 (1)2 2,2 2,2 2 2 (1)3 3,3 3,6 3,8 3,3 3,6 3,8 3 6 8 5 (3)4 4,1 4,4 4,6 4,1 4,4 4,6 1 4 6 8 (3)5 5,2 5,5 5,2 5,5 2 5 10 (2)6 6,6 6,6 6 11 (1)7 7,5 7,7 7,5 7,7 5 7 13 (2)8 8,4 8,7 8,8 8,4 8,7 8,8 4 7 8 16 (3)

1,1 2,2 3,3 3,6 3,8 4,1 4,4 4,6 5,2 5,5 6,6 7,5 7,7 8,4 8,7 8,8

(a) original sparse matrix(a)original sparse matrix (b)a (c)colidx (d)rowstr

(e) on memory

(f) In the case of a block distribution

Algorithm and Data of CG

Page 31: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

Speedup for CG (class B)by First Touch Control on Origin 2000 (32 processors)

0

5

10

15

20

25

30

35

1 6 11 16 21 26 31Number of processors

Speedup

os-FTco-DIRco-FTCMPIlinear

6.6 times

1.3 times1.2 times

os-FT: original, co-DIR: add data distrib. directive,co-FTC: proposed FTC method

Page 32: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

0.0

2.0

4.0

6.0

8.0

10.0

12.0

tomca

tvsw

imsu

2cor

hydro

2d mgrid applu

turb3

d apsi

fpppp

wave5

wupwise

swim

2k

mgrid2

k

applu

2k

sixtra

ckap

si2k

Spe

edup

rat

io

XL Fortran(max)

APC(max)

23.1s

19.2s

3.8s

16.7s

38.3s

3.4s

21.5s

7.1s

21.0s

3.0s

16.4s

3.1s

23.2s

13.0s

37.4s

3.5s

39.5s27.8s35.1s30.3s21.5s 126.5s 307.6s 291.2s 279.1s

126.5s

115.2s

38.5s

107.4s

28.8s

184.8s

105.0s

• IBM XL Fortran for AIX Version 8.1– Sequential execution : -O5 -qarch=pwr4– Automatic loop parallelization : -O5 -qsmp=auto -qarch=pwr4– OSCAR compiler : -O5 -qsmp=noauto -qarch=pwr4

(su2cor: -O4 -qstrict)

22.5s 85.8s 18.8s

22.5s 85.8s 18.8s

282.4s 321.4s

282.4s 321.4s

28.9s

Performance of APC Compiler on IBM pSeries690 16 Processors High-end Server

Page 33: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

0.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

10.0

tomca

tvsw

imsu

2cor

hydro

2d mgrid applu

turb3

dap

sifpp

pp

wave5

wupwise

swim

2k

mgrid2

k

applu

2k

sixtra

ckap

si2k

Spe

edup

ratio

Forte6(max)

APC(max)

• Sun Forte Developer 6 Update 2– Sequential execution : -fast– Automatic loop parallelization : -fast -autopar -reduction -stackvar– OSCAR compiler : -fast -explicitpar -mp=openmp -stackvar

121s 198s 70s 141s 97s 172s 201s

97s

19s

115s

21s

31s 30s77s

31s

22s21s

133s92s

194s

56s

881s 1139s 846s 1453s

870s

216s

1035s

962s579s 569s

1094s878s

58s 387s 98s

58s 387s 98s

763s 1313s

763s 1313s

Performance of APC Compileron Sun Ultra80 4 Processor Workstation

Page 34: Research and Development in Advanced Parallelizing Compiler Technology Project · 2011-04-04 · Advanced Parallelizing Compiler Technology Project Goal: Double the effective performance

APC Accomplishments<Target>Double the performance compared with product compilers for SMPs at the September 2000.

<Results & Future>l 3.5 times speedup in average and 10.7 times at the

maximum for 16 FORTRAN programs in SPEC CFP95 and CFP2000 compared with the latest compiler on the latest 16 processor high-end SMP server.

l 45 reviewed papers, 43 technical reports,15 short papers,8 patents, 11 invited talks, 1 invited survey paper, 10 newspaper articles, 18 Web news and 5 PhDs .

l Automatic multigrain parallelizing compiler will realize high productivity computing in various R&D field like Environments, Bio-informatics, Automobile, Aerospace, Financial Engineering etc.

l Some of the technologies will be incorporate into products. l Multigrain parallelizing compiler will improve the cost

performance, software and hardware productivity of chip multiprocessors to be introduced in SoC (System on Chip) like mobile phones, games, PDA, Digital TV and so on.