기상연구소 응용 프로그램
This presentation is the property of its rightful owner.
Sponsored Links
1 / 22

2004. 8. 4 ㈜ 클루닉스 기술부 PowerPoint PPT Presentation


  • 62 Views
  • Uploaded on
  • Presentation posted in: General

기상연구소 응용 프로그램 (MM5/MPP) 시스템 별 성능 측정 결과 보고. 2004. 8. 4 ㈜ 클루닉스 기술부. 목 차. 테스트 요구 사항 테스트 시스템 환경 테스트 적용 환경 테스트 결과 테스트 진행자 결론 - 첨부 : 테스트 진행 과정 테스트 결과 측정 과정 테스트 진행 시 시스템 모니터링 자료. 테스트 요구 사항. MM5-MPP 성능 테스트

Download Presentation

2004. 8. 4 ㈜ 클루닉스 기술부

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


2004 8 4

기상연구소 응용 프로그램 (MM5/MPP) 시스템 별 성능 측정 결과 보고

2004. 8. 4

㈜ 클루닉스 기술부


2004 8 4

목 차

  • 테스트 요구 사항

  • 테스트 시스템 환경

  • 테스트 적용 환경

  • 테스트 결과

  • 테스트 진행자 결론

    - 첨부 :

    테스트 진행 과정테스트 결과 측정 과정

    테스트 진행 시 시스템 모니터링 자료


2004 8 4

테스트 요구 사항

  • MM5-MPP 성능 테스트

    • Linux 환경에서의 MM5/MPP 프로그램을 설치 하고 building하여 생성되는 mm5.mpp 를 실행 했을 경우 수행 시간 측정

    • 64bit 시스템 환경에서 MM5/MPP 의 정상 수행 여부

    • 테스트 진행 중 시스템 Resource (CPU/Disk/Mem/Net) 의 사용 현황 파악 및 병목 Resource 측정

  • Process Architecture별로 테스트 진행

    • Opteron AMD64 / Itenium2 / Xeon 시스템 별 테스트 성능 측정

    • 각 시스템 환경에 최적한 구성 요소로 테스트 진행 함 ( OS, Compiler )


2004 8 4

테스트 시스템 환경

  • Opteron AMD 64 시스템

    • Opteron AMD 64 Dual Processor

    • ECC registered Memory 2G

    • Ultra 320 SCSI 36G

    • PGI –AMD64 Compiler

  • Itenium2 IA 64 시스템

    • Itenium2 IA 64 Dual Processor

    • ECC registered Memory 1G

    • Ultra 320 SCSI 36G

    • Intel Fortran Compiler ( Itenium2 전용 )

  • P-IV (Xeon) IA 32 시스템

    • Xeon 2.4G(Hyper Threading) IA 32 Dual Processor

    • ECC registered Memory 1G

    • Ultra 320 SCSI 36G

    • PGI –X86 Compiler


2004 8 4

테스트 적용 환경

  • MPI 프로그램 환경

    • MPI 병렬 프로그램 환경은 LAM-MPI 와 MPICH 두가지 방식으로 테스트를 하였고, 동작 작업 진행 시 LAM-MPI 방식이 10% 정도의 성능향상이 있었음. 추후 테스트 진행은 LAM-MPI 방식으로 진행

  • 네트워크 환경

    • Gigabit 환경과 100M 환경에서 테스트를 진행함.

  • 테스트 DATA

    • MM5 테스트 DATA 는 기본 input2mm5.tar.gz으로 진행함.


2004 8 4

테스트 결과

  • 수행 프로세스 개수 별 수행 속도 ( 단위 : 분/ 초)


2004 8 4

테스트 진행자 결론 -1

  • Process 개수를 1개로 하여 mm5.mpp 를 실행했을 경우 opteron 이 가장 우수한 성능을 가지고 있음을 확인함. Process 개수를 늘려 나갈 경우에도 역시 opteron 이 가장 우수한 성능을 나타냄( 앞장의 측정 결과 참조 )

  • 프로세스 통신 방식을 Ethernet 방식으로 했을 경우 실제 할당되는 네트워크 대역폭이 20M/b ~30M/b 임. 그러므로 100M Switch 환경이나 1000M Switch 환경의 차이는 크게 없어 보임. Myrinet 의 경우에는 Ethernet 방식과 다른 통신 방식임으로 노드 수가 늘어 날수록 성능 향상 요인이 있음.

  • 실제 프로세스의 수가 늘어남에 따라 CPU 사용률이 저하 되는것을 확인할 수 있음. 두 가지 요인으로 추측되는데, Cpu 이외의 다른 resource 의 병목으로 인한 경우와 실제 테스트에 사용된 테스트 Domain 의 size 가 작은 것임으로 작업량이 작은 경우일수 있는 가능성이 있다.


2004 8 4

테스트 진행자 결론 -2

  • Xeon 의 Hyper Threading 기능을 사용 했을 경우 Process 의 수가 작을 경우에만 10%~20% 정도의 성능향상이 있음 process 수가 4개 이상 일 경우에는 오히려 성능이 더 떨어짐.

  • Xeon 의 4개 프로세스를 사용하여 수행 했을 때가 8개 Hyper Threading 기능을 사용 했을 때 보다 더 성능이 좋은 것을 확인함.

  • 추측되는 원인으로 Memory sharing 에 의한 메모리 병목 유발과 Process 간 system bus 의 병목 유발을 들 수 있음.

  • Hyper Threading 기능을 사용할 경우 CPU 사용량이 현저하게 떨어짐.

  • Multi node 구성 시에는 Xeon Hyper Threading 기능을 사용하지 않는 것을 권장


2004 8 4

테스트 진행 과정 -1

  • MM5/MPP 설치

    MM5/MPP download : http://www.mmm.ucar.edu/mm5/에서 MM5V3와 MPP 다운

    # wget ftp://ftp.ucar.edu/mesouser/MM5V3/MM5.TAR.gz

    # wget ftp://ftp.ucar.edu/mesouser/MM5V3/MPP.TAR.gz

    # cd /home/clunix

    # tar xzvf MM5.TAR.gz

    # cd MM5

    # tar xzvf MPP.TAR.gz

    Configure.user file 수정 , 시스템 환경과 Compile 환경에 맞게 Makefile Option 수정

    # cd MPP/RSL/RSL

    # make linux

    # cd ../../..

    # make mpp


2004 8 4

테스트 진행 과정 -2

# make mm5.deck

무사히 컴파일이 되면 /home/clunix/MM5 디렉토리 밑에 mm5.deck 가 생긴다.

이것을 실행한다.

# ./mm5.deck

그럼 /home/clunix/MM5/Run 밑에 mmlif 가 생성된다.

# cd /home/clunix/MM5/Run

MM5 사이트에서 테스트 INPUT DOMAIN DATA 를 다운 받아서 테스트 한다.

# wget ftp://ftp.ucar.edu/mesouser/MM5V3/TESTDATA/input2mm5.tar.gz

# tar xzvf input2mm5.tar.gz

-rw-r--r-- bruyerec/users 1825164 2003-07-01 02:47:46 BDYOUT_DOMAIN1

-rw-r--r-- bruyerec/users 170936 2003-07-01 02:47:46 LOWBDY_DOMAIN1

-rw-r--r-- bruyerec/users 2889044 2003-07-01 02:47:46 MMINPUT_DOMAIN1

-rw-r--r-- bruyerec/users 210980 2003-07-01 07:15:27 TERRAIN_DOMAIN2


2004 8 4

테스트 진행 과정 -3

  • Mm5.mpp 프로그램 수행

    이제 LAM-MPI 를 실행한다. LAM은 일반 계정에서 실행되어져야 한다.

    # lamboot -v /etc/lamhost

    -----------------------------------------------

    LAM 6.5.9/MPI 2 C++/ROMIO - Indiana University

    Executing hboot on n0 (otn1 - 2 CPUs)...

    Executing hboot on n1 (otn2 - 2 CPUs)...

    Executing hboot on n2 (otn3 - 2 CPUs)...

    topology done

    -----------------------------------------------

    # mpirun -np 1 mm5.mpp

    otn1 -- rsl_nproc_all 1, rsl_myproc 0

    수행이 완료되면..

    rsl.error.000x

    rsl.out.000x

    show_domain_000x 가 생성된다.


Opteron 1

테스트 결과 측정 과정 – opteron 1

Process number : 1

[[email protected] Run]$ time mpirun -np 1 mm5.mpp

otn1 -- rsl_nproc_all 1, rsl_myproc 0

real 3m30.214s

user 0m0.000s

sys 0m0.000s

Process number : 2

[[email protected] Run]$ time mpirun -np 2 mm5.mpp

otn1 -- rsl_nproc_all 2, rsl_myproc 0

otn1 -- rsl_nproc_all 2, rsl_myproc 1

real 2m0.184s

user 0m0.000s

sys 0m0.000s


Opteron 2

테스트 결과 측정 과정 – opteron 2

Process number : 4

[[email protected] Run]$ time mpirun -np 4 mm5.mpp

otn1 -- rsl_nproc_all 4, rsl_myproc 0

otn1 -- rsl_nproc_all 4, rsl_myproc 1

otn2 -- rsl_nproc_all 4, rsl_myproc 2

otn2 -- rsl_nproc_all 4, rsl_myproc 3

real 1m51.920s

user 0m0.000s

sys 0m0.000s

Process number : 6

[[email protected] Run]$ time mpirun -np 6 mm5.mpp

otn1 -- rsl_nproc_all 6, rsl_myproc 0

otn1 -- rsl_nproc_all 6, rsl_myproc 1

otn2 -- rsl_nproc_all 6, rsl_myproc 2

otn2 -- rsl_nproc_all 6, rsl_myproc 3

otn3 -- rsl_nproc_all 6, rsl_myproc 4

otn3 -- rsl_nproc_all 6, rsl_myproc 5

real 1m39.816s

user 0m0.000s

sys 0m0.000s


Itenium2

테스트 결과 측정 과정 – Itenium2

Process number : 1

[[email protected] Run]$ time mpirun -np 1 mm5.mpp

rx2600 -- rsl_nproc_all 1, rsl_myproc 0

real 4m0.434s

user 0m0.001s

sys 0m0.001s

Process number : 2

[[email protected] Run]$ time mpirun -np 2 mm5.mpp

rx2600 -- rsl_nproc_all 2, rsl_myproc 0 rx2600 -- rsl_nproc_all 2, rsl_myproc 1

real 2m31.815s

user 0m0.002s

sys 0m0.003s


Xeon 1

테스트 결과 측정 과정 – Xeon 1

Process number : 1

[[email protected] Run]$ time mpirun -np 1 mm5.mpp

www1 -- rsl_nproc_all 1, rsl_myproc 0

real 7m6.661s

user 0m0.000s

sys 0m0.000s

Process number : 2

[[email protected] Run]$ time mpirun -np 2 mm5.mpp

www3 -- rsl_nproc_all 2, rsl_myproc 0

www3 -- rsl_nproc_all 2, rsl_myproc 1

real 4m16.842s

user 0m0.000s

sys 0m0.000s


Xeon 2

테스트 결과 측정 과정 – xeon 2

Process number : 4

[[email protected] Run]$ time mpirun -np 4 mm5.mpp

www1 -- rsl_nproc_all 4, rsl_myproc 0

www2 -- rsl_nproc_all 4, rsl_myproc 1

www3 -- rsl_nproc_all 4, rsl_myproc 2

www3 -- rsl_nproc_all 4, rsl_myproc 3

real 3m31.522s

user 0m0.000s

sys 0m0.010s

Process number : 6

[[email protected] Run]$ time mpirun -np 6 mm5.mpp

www1 -- rsl_nproc_all 6, rsl_myproc 4

www1 -- rsl_nproc_all 6, rsl_myproc 0

www3 -- rsl_nproc_all 6, rsl_myproc 2

www3 -- rsl_nproc_all 6, rsl_myproc 3

www2 -- rsl_nproc_all 6, rsl_myproc 1

www2 -- rsl_nproc_all 6, rsl_myproc 5

real 3m28.397s

user 0m0.000s

sys 0m0.010s


2004 8 4

테스트 진행 시 시스템 모니터링 자료

  • 프로세스 모니터링


2004 8 4

테스트 진행 시 시스템 모니터링 자료

  • 네트워크 모니터링 ( NFS 사용 시 20Mb~30Mb 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )


2004 8 4

테스트 진행 시 시스템 모니터링 자료

  • Disk I/0 모니터링 ( 노드 당 1MB 정도 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )


2004 8 4

테스트 진행 시 시스템 모니터링 자료

  • Memory 모니터링 ( 시스템 별 80% 정도 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )


2004 8 4

테스트 진행 시 시스템 모니터링 자료

  • 리소스 모니터링


Supercomputing for everyone clunix inc

Supercomputing for EveryoneClunix, Inc.

㈜클루닉스

152-766

서울특별시 구로구 구로3동 197-22

에이스테크노타워 5차 1007호

Tel : + 82 2 3486 5896

Fax : + 82 2 3486 3959

www.clunix.com


  • Login