• 제목/요약/키워드: 컴파일언어

검색결과 71건 처리시간 0.018초

Just-In-Time 컴파일러를 이용한 파이썬 기반 지구동역학 코드 가속화 연구 (Boosting the Performance of Python-based Geodynamic Code using the Just-In-Time Compiler)

  • 박상진;안수정;소병달
    • 지구물리와물리탐사
    • /
    • 제24권2호
    • /
    • pp.35-44
    • /
    • 2021
  • 파이썬은 다른 정적 언어(예, C, C++, FORTRAN 등)에 비해 실행 속도가 느리기 때문에 대규모 반복이 필요한 지구동역학 코드를 작성하는데 적합하지 않은 것으로 인식되어 왔다. 그러나 파이썬의 계산 속도를 향상시키기 위해 Just-In-Time (JIT) 컴파일 등과 같은 많은 고속화 수단이 개발되었다. 우리는 파이썬을 기반으로 JIT 컴파일러에 최적화된 맨틀 유동 지구동역학 코드를 개발했다. 코드는 지구동역학 분야에서 널리 사용되는 PIC (Particle-In-Cell) 방법과 유한요소법을 결합하여 맨틀 대류를 수치 모사하며, 코드의 신뢰성을 정량적으로 평가하기 위해 잘 알려진 2차원 맨틀 대류 문제를 벤치마킹했다. 수치 모사 결과, 제곱근 평균 제곱 속도와 넛셀 수가 이전 연구와 거의 일치함을 확인했다. JIT 컴파일러를 적용한 코드는 적용하지 않았을 경우와 대비해 계산 속도가 PIC 방법에서 최대 258배, 전체 행렬 조립 과정에서 최대 30배 향상했다. 따라서, 이번 연구는 파이썬의 계산 성능이 JIT 등의 가속기를 이용하여 충분히 향상되며, 많은 지구 동역학 문제를 해결하는데 활용될 수 있음을 제시하였다.