slide1
Download
Skip this Video
Download Presentation
2004. 8. 4 ㈜ 클루닉스 기술부

Loading in 2 Seconds...

play fullscreen
1 / 22

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


  • 80 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 2004. 8. 4 ㈜ 클루닉스 기술부 ' - sonia-moody


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
slide1

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

2004. 8. 4

㈜ 클루닉스 기술부

slide2
목 차
  • 테스트 요구 사항
  • 테스트 시스템 환경
  • 테스트 적용 환경
  • 테스트 결과
  • 테스트 진행자 결론

- 첨부 :

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

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

slide3
테스트 요구 사항
  • 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 )
slide4
테스트 시스템 환경
  • 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
slide5
테스트 적용 환경
  • MPI 프로그램 환경
    • MPI 병렬 프로그램 환경은 LAM-MPI 와 MPICH 두가지 방식으로 테스트를 하였고, 동작 작업 진행 시 LAM-MPI 방식이 10% 정도의 성능향상이 있었음. 추후 테스트 진행은 LAM-MPI 방식으로 진행
  • 네트워크 환경
    • Gigabit 환경과 100M 환경에서 테스트를 진행함.
  • 테스트 DATA
    • MM5 테스트 DATA 는 기본 input2mm5.tar.gz으로 진행함.
slide6
테스트 결과
  • 수행 프로세스 개수 별 수행 속도 ( 단위 : 분/ 초)
slide7
테스트 진행자 결론 -1
  • Process 개수를 1개로 하여 mm5.mpp 를 실행했을 경우 opteron 이 가장 우수한 성능을 가지고 있음을 확인함. Process 개수를 늘려 나갈 경우에도 역시 opteron 이 가장 우수한 성능을 나타냄( 앞장의 측정 결과 참조 )
  • 프로세스 통신 방식을 Ethernet 방식으로 했을 경우 실제 할당되는 네트워크 대역폭이 20M/b ~30M/b 임. 그러므로 100M Switch 환경이나 1000M Switch 환경의 차이는 크게 없어 보임. Myrinet 의 경우에는 Ethernet 방식과 다른 통신 방식임으로 노드 수가 늘어 날수록 성능 향상 요인이 있음.
  • 실제 프로세스의 수가 늘어남에 따라 CPU 사용률이 저하 되는것을 확인할 수 있음. 두 가지 요인으로 추측되는데, Cpu 이외의 다른 resource 의 병목으로 인한 경우와 실제 테스트에 사용된 테스트 Domain 의 size 가 작은 것임으로 작업량이 작은 경우일수 있는 가능성이 있다.
slide8
테스트 진행자 결론 -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 기능을 사용하지 않는 것을 권장
slide9
테스트 진행 과정 -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

slide10
테스트 진행 과정 -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

slide11
테스트 진행 과정 -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

slide18
테스트 진행 시 시스템 모니터링 자료
  • 네트워크 모니터링 ( NFS 사용 시 20Mb~30Mb 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )

slide19
테스트 진행 시 시스템 모니터링 자료
  • Disk I/0 모니터링 ( 노드 당 1MB 정도 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )

slide20
테스트 진행 시 시스템 모니터링 자료
  • Memory 모니터링 ( 시스템 별 80% 정도 사용 )

Opteron System ( 3node )

Itenium System ( 1node )

Xeon System ( 3node )

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

ad