ESMF (지구 시스템 모델링 프레임 워크)는 고성능, 사용의 용이성을 높이기 위해 유연한 소프트웨어 인프라, 성능, 이식성, 상호 운용성을 구축하기위한 프로그램이며, 기후, 수치 예보, 자료 동화에 재사용, ESMF는 아키텍처를 정의 복잡한 결합 모델링 시스템을 구성하고 데이터 구조와 개별 모델을 개발하기위한 유틸리티가 포함되어 있습니다.
ESMF의 기본 개념은 복잡한 애플리케이션이 작은 조각 또는 요소로 분해되어야한다. 구성 요소는 코히 런트 소프트웨어 기능을 갖는 조성물, 및 표준 호출 인터페이스 및 동작의 단위이다. 구성 요소는 여러 응용 프로그램을 만들 조립 될 수 있으며, 구성 요소의 다른 구현을 사용할 수 있습니다. ESMF에서, 컴포넌트는이 결합기 또는 I / O 시스템으로 물리적 도메인 또는 함수일 수있다.
ESMF 또한 재그 리딩 소프트웨어, 일정 관리, 로깅 및 오류 처리 및 병렬 통신 등 구성 요소 및 응용 프로그램을 구축하기위한 툴킷을 포함한다.
아래 그림은 실제로 ESMF의 구성 요소를 보여줍니다. 그것은 ESMF를 사용하여 처음부터 내장 된 NASA GEOS-5 대기 일반 순환 모델의 구조를 나타내는 도면이다. 각 상자는 커플러를 포함 ESMF 성분이다. 구성 요소의 계층 적 트리 전체 물리 패키지를 교체 할 수 있도록 다른 레벨 "냈다", 또는 단일 파라미터 화 될 수있다. 각 구성 요소는 "스왑."잠재적 인
이 특징 :
이 전체 포트란 90 인터페이스 부분 C / C ++ 인터페이스
포트란 90 참조 설명서 및 사용 설명서
IBM, 많은 리눅스 변종, 크레이 (Cray), 컴팩, 이상 (전체 목록은 여기를 참조)를 포함한 대부분의 고성능 병렬 컴퓨팅 플랫폼에서 실행
MPI, OpenMP의 하이브리드 사용자 코드를 지원
2500 + 테스트는 소스 배포판과 함께 제공
무료 사용자 지원
활성 사용자 커뮤니티
커플 링 지구 시스템 구성 요소에 대한 상부 구조 :
구성 요소, 주 및 최소한의 오버 헤드를 사용자 코드를 래핑 커플러 소프트웨어
사용자가 수정할 수 있습니다 간단한 드라이버
구성 요소의 순차적 또는 동시 실행
단일 실행 능력
제한 다수의 실행 능력
지구 시스템 구성 요소를 구축하기위한 인프라 :
양력 360 일, 노 도약, 줄리안 등 일정 시간뿐만 아니라 기능의 넓은 범위를 포함 시간 관리자
같은 그리드에 필드의 배열, 필드, 번들의 저장 및 조작을위한 데이터 구조.
병렬 데이터 통신 및 재그 리딩 소프트웨어
메시지 로깅 도구
리소스 파일 관리자
이 릴리스의 새로운 기능 :
이 ESMF_GridComp 및 ESMF_CplComp 인터페이스에 결함 허용 확장이 구현되었습니다.
많은 개선 사항 및 버그 수정.
이 어떤 버전의 3.2.0r에서 새로운 것은
이 버전은 이전 버전과의 호환성을 사용하도록 코드를 수정하고 리눅스 / PC와 크레이의 PGI의 11.x의 컴파일러 버전에 대한 지원을 추가 XT 플랫폼입니다.
이 버전 3.1.0rp2의 새로운 기능 :
이이 필드에 복제 된 치수에 대한 지원을 추가했습니다. '0'; ESMF_FieldCreate ()와 ESMF_FieldSetCommit ()에서 gridToFieldMap 인수의 항목은 그리드 차원이 필드의 일부가 아님을 나타낸다. 대신 필드는 해당 그리드 차원을 따라 모든 DE는에 복제됩니다.
ESMF_FieldCreate 오버로드 () 포트란 배열 포인터를 수락하고 (예 : 범위 및 기능 할당을 해제하는 등의) 속성을 유지한다.
ESMF_FieldSetCommit 오버로드 () 포트란 배열 포인터를 수락하고 (예 : 범위 및 기능 할당을 해제하는 등의) 속성을 유지한다.
그리드는 이제 indexflag에 대한 ESMF_INDEX_USER 옵션을 지원합니다. 이것은 사용자가 명시 적으로 낮게 설정 로컬 인덱스 공간 결합 할 수있다. 표준이 아닌 인덱싱 포트란 배열 포인터에서 필드를 만들 때 필요하다.
ESMF_ArrayCreate 오버로드 () 포트란 배열 포인터를 수락하고 (예 : 범위 및 기능 할당을 해제하는 등의) 속성을 유지한다.
최적화 된 ESMF_ArraySMM ()와 ESMF_ArrayBundleSMM () 런타임 성능, 확장 성 및 메모리 사용.
같은 ArrayBundle 다른 분포, 크기 및 크기와 배열에 최적화 된 통신에 대한 지원이 추가되었습니다.
DistGrid, 배열 및 필드에 제로 요소와 DE는 지원 추가.
ESMF_ArrayGet ()와 ESMF_FieldGet의 선택 제 localDe 인수 () 제한을 오버로드를 금지하지 않는 방법.
ESMF_ClockCreate ()에, 시간 간격 0 울리도록 설정 알람, 제대로 반지.
경보는 지금 ESMF_MODE_REVERSE에 시계 제대로 반지.
경보는 지금 부정적인 시간 간격을 사용하여 시계 제대로 반지.
새로운 환경 변수 ESMF_F90_PTR_BASE_SIZE 및 ESMF_F90_PTR_PLUS_RANK을 이용하여 시스템을 구축하는 기본 포인터 크기의 대체 기능을 추가했습니다.
이 버전 3.1.0rp1의 새로운 기능 :
이 추가 된 그리드 클래스에 속성.
추가 Array 클래스에 속성.
ESMF_GridGet에에는 minIndex과 maxIndex 인수를 추가 (). 이러한 인수는 첫 번째 타일에 적용됩니다.
ESMF_DistGridGet에 minIndexPDimPDe과 maxIndexPDimPDe 인수를 추가 ().
추가 ESMF_GridMatch () 메서드는 두 개의 그리드 개체를 비교.
테스트 스위트 응용 프로그램 & quot을 실행하는 ESMF 설정, 사용 설명서의 새로운 섹션의 명칭 : 사용자가 자신의 mpirun이 스크립트를 지정할 수 있습니다 방법에 대해 설명이 추가되었습니다. ESMF는 일관 번들로 제공되는 테스트 스위트 및 예제 응용 프로그램을 실행하기 위해 환경 변수 ESMF_MPIRUN의 설정을 사용합니다.
다음과 같은 알려진 버그가 수정되었습니다.
댓글을 찾을 수 없습니다