• 제목/요약/키워드: OpenMP

검색결과 178건 처리시간 0.028초

OpenMP, MPI, CUDA를 이용한 안테나 수치 계산 가속화 (Accelerated Numerical Computations of Antennas Using OpenMP, MPI, CUDA)

  • 조용희
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2014년도 추계 종합학술대회 논문집
    • /
    • pp.41-42
    • /
    • 2014
  • 대형 안테나 해석에서 큰 화두는 안테나 수치 계산 속도를 높이는 것이다. 현재 인기를 얻고 있는 병렬 처리 방식인 OpenMP, MPI, CUDA를 이용하여 안테나 수치 계산을 병렬화할 경우 발생하는 단점을 제시하고, 각 병렬 처리법의 장점도 소개한다.

  • PDF

OpenMP를 통한 쿼드 트리 검색 병렬화 및 성능 분석 (Quad-tree Search Parallelization using OpenMP and Performance Analysis)

  • 성운;박준석
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • pp.163-166
    • /
    • 2012
  • OpenMP를 이용할 경우 컴파일러 디렉티브의 삽입으로 병렬화가 가능하다. 본 논문은 쿼드 트리를 이용한 데이터베이스 검색 프로그램을 OpenMP로 병렬화하여 실험을 진행한다. 실험을 통해 논리코어의 개수와 쓰레드 개수에 따른 상관관계가 적다는 것을 알 수 있다. 또한 쓰레드 개수 증가에 따른 오버헤드 발생이 성능에 영향을 준다는 사실을 알 수 있다. 쿼드 트리 자료구조를 이용한 데이터베이스 검색 프로그램을 OpenMP를 이용해 병렬화할 경우 논리적 코어의 개수가 8개, 쓰레드 개수가 16개일 경우에 1.8배의 최대의 성능향상을 이룬다.

OpenMP를 활용한 TI 다중코어 DSP기반의 고속 FFT 처리부 개발 (Development of High speed FFT system using OpenMP on TI multicore DSP)

  • 남경호;오우진
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2014년도 추계학술대회
    • /
    • pp.962-964
    • /
    • 2014
  • 신호처리 시스템에서 FFT는 많이 사용되고 있으며, 고속화를 위하여 많은 연구가 진행되어 왔다. FFT은 통신, 영상처리, 레이더 등 많은 영역에서 직접 또는 변형되어 많이 활용되고 있으나 실시간 처리 속도 한계와 가격의 문제로 FFT 길이가 제한되는 경우가 많다. 본 연구에서는 TI사의 고속 DSP인 8 core의 TMS320C6678에 OpenMP 병렬처리 기법으로 FFT를 구현한 결과를 제시한다. 속도 개선을 위한 다양한 병렬처리 방안에 대하여 단일 FFT의 길이별 성능과 다중 FFT를 처리하기 위한 방안을 제안하였다. 이러한 OpenMP기반의 FFT는 DSP간 hyperlink 연결로 다수의 DSP로 병렬처리로 성능 개선이 가능하며, 본 연구에서는 16 core로 확장하여 그 성능이 30% 내외 개선되는 것을 보였다. 본 연구 결과는 초 고속 신호처리가 요구되는 의료영상, 초고해상도 영상처리, 고정밀 레이더 등에 활용이 가능할 것이다.

  • PDF

성능비대칭적인 멀티프로세서를 위한 OpenMP 의 로드밸런싱 향상 기법 (A Load Balancing Technique for OpenMP for Performance-Asymmetric Multiprocessors)

  • 김병규;김지민;이평화;유민수
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 추계학술발표대회
    • /
    • pp.141-144
    • /
    • 2011
  • 최근 이기종 멀티프로세서 시스템에서의 병렬화를 위해 범용 CPU 와 다른 컴퓨팅 장치들간의 다양한 연동 기술들이 부각되고 있다. 멀티프로세서 프로그래밍 모델인 OpenMP 는 가장 널리 사용되는 병렬 프로그래밍 언어이지만 기존 OpenMP 의 작업 할당 정책으로는 프로세서간 로드밸런싱을 문제를 해결할 수 없다는 한계점을 가지고 있다. 본 논문에서는 기존 OpenMP 의 작업할당 문제를 해결할 수 있는 알고리즘을 제안한다. 제안하는 알고리즘은 SMP(Symmetric Multi Processing) 구조뿐만 아니라 AMP(명령어 구조는 같으나 동작 속도가 다른 이질 멀티프로세서 구조)에서도 작업부하균형을 효과적으로 실행할 수 있다.

OpenMP 병렬프로그램을 이용한 그물의 수중형상 시뮬레이션 구현 (Implementation of Underwater Simulation of a Net using OpenMP)

  • 박명철;박석규
    • 한국컴퓨터정보학회논문지
    • /
    • 제13권2호
    • /
    • pp.11-17
    • /
    • 2008
  • 수중에서 그물의 형상변화는 다양한 벡터에 의해 영향을 받게 된다. 그러나 그물의 각 입자마다 모든 벡터의 영향을 계산하는 것은 정확성과 사실성은 증대하지만, 방대한 계산량으로 처리 시간이 많이 소요된다. 기존의 시뮬레이션 방법들은 물리적 사실성을 희생하고 시각적인 사실성을 유지하는 범위에서 수중 가상현실을 시뮬레이션으로 구현하였다. 본 논문에서는 입자들의 병렬처리를 통하여 물리적, 시각적 사실성을 모두 만족하는 시뮬레이션을 제안한다. 병렬처리를 위해서는 OpenMP를 이용하였고, 사실적 그래픽 표현은 OpenGL을 사용하여 구현하였다. 본 논문에서 구현한 시뮬레이션은 게임 및 해양수산 분야에서 모델분석이나 전문가 시스템구축을 위한 기초자료로 활용될 수 있을 것이다.

  • PDF

분산 메모리 시스템에서 압력방정식의 해법을 위한 MPI와 Hybrid 병렬 기법의 비교 (Comparison of Message Passing Interface and Hybrid Programming Models to Solve Pressure Equation in Distributed Memory System)

  • 전병진;최형권
    • 대한기계학회논문집B
    • /
    • 제39권2호
    • /
    • pp.191-197
    • /
    • 2015
  • 본 연구에서는 분산 메모리시스템에서의 압력 방정식의 병렬해법을 위하여 MPI(Message Passing Interface)와 하이브리드 병렬기법을 사용하였다. 두 모델은 영역분할 기법을 활용하며, 하이브리드 기법은 성능이 양호한 두 가지 영역분할에 대해 수행하였다. 두 병렬기법의 성능을 비교하기 위해서 다양한 문제 크기에 대해 최대 96개의 쓰레드를 사용하여 속도향상을 측정하였다. 병렬 성능은 캐쉬 메모리에 따른 문제의 크기 및 MPI 통신, OpenMP 지시어의 부하에 대해 영향을 받음을 확인하였다. 문제의 크기가 작은 경우에는 쓰레드가 증가할수록 MPI 통신 및 OpenMP 지시어 부하에 대한 비율이 상대적으로 크기 때문에 병렬 성능이 좋지 않으며, MPI 통신 부하보다는 OpenMP 지시어 부하가 상대적으로 크므로 MPI 병렬 기법의 병렬 성능이 더 우수하다. 문제의 크기가 큰 경우에는 캐쉬 메모리의 활용도가 높고 MPI 통신 및 OpenMP 지시어 부하에 대한 비율이 낮아 병렬 성능이 좋으며, OpenMP 지시어보다 MPI 통신에 의한 부하가 더 지배적이어서 하이브리드 병렬 성능이 MPI 병렬 성능보다 더 양호하다.

OpenMP를 이용한 제내지 침수 병렬해석 (Flood Inundation Analysis Using OpenMP Technique)

  • 박재홍
    • 한국수자원학회:학술대회논문집
    • /
    • 한국수자원학회 2016년도 학술발표회
    • /
    • pp.74-74
    • /
    • 2016
  • 복잡한 지형에서 컴퓨터를 이용한 물리적 기반 수치모의는 합리적인 시간내에 연산을 완료하기 위해 대개 큰 연산장비 들을 요구한다. 더욱이 모의되는 현상이 시간단계마다 갱신되어지는 동역학적 현상에 기반된 비정상상태일 때 연산성능은 고려되어지는 가장 중요한 주제가 될 수 있다. 연산 시간을 줄이기 위한 가장 널리 이용되는 전략중의 하나는 적절한 수의 프로세서를 이용하는 병렬 기법이다. 최근 들어 연산속도를 가속화하기 위해 다수의 코어를 이용한 OpenMP 와 MPI 기법들이 병렬해석기법으로 대두되었고 그래픽 연산장치를 이용한 병렬처리 해석기법도 소개되고 있다. 본 연구에서는 중앙연산장치를 이용한 병렬 해석기법을 이용하여 제내지 침수해석의 적용성을 검토하고 그 결과을 비교하였다. 본 연구를 위해 OpenMP 병렬기법을 이용하여 확산파 침수해석 프로그램의 원시코드를 재작성하여 가상 및 실제 유역에 적용하였다. 해석결과는 분산메모리 병렬해석 기법인 MPI를 도입한 모형의 결과와 비교되었다. OpenMP를 도입한 모형과 MPI를 도입한 경우 유량 및 수심의 경우 오차 허용 한계내에 수렴되어 만족되었으나 그러나 연산 속도의 경우 두 기법간의 자료의 저장 방법 차이로 인해 차이를 나타내었다. 가상 유역에 적용된 결과로 검토된 각 기법의 증속(speedup) 효과는 MPI의 경우 4 코어를 이용하였을 때 최고 2.62 배 정도에 도달하는 것으로 나타났다. OpenMP 를 적용한 경우 2.87 배 정도로 나타나 OpenMP 를 이용하였을 때 증속효과가 조금 더 뛰어났다. 이는 두 기법의 메모리 저장방식의 차이로 인해 자료의 전송량과 전송 시간이 적은 OpenMP 를 도입한 모형에서 MPI 모형 보다 상대적으로 뛰어난 결과를 나타내었다. 실제 유역의 적용을 위해 상대적으로 우수한 증속결과를 나타낸 OpenMP를 도입한 모형을 Malpasset 댐 붕괴 유역에 적용하였다. 적용된 요소의 수는 각각 45254, 11352 개로 비교적 많은 요소를 가진 하류지역에 적용하여 병렬효과를 극대화하고자 하였다. 적용결과 두 경우 모두 병렬 해석 기법을 도입한 모형에서 유속과 침수심 등은 순차적 모형과 동일한 값을 나타내었으나 증속효과로 인한 연산시간은 순차적 모형에서 8.57 배로 나타나 병렬 모형의 상대적으로 빠른 연산속도를 판단할 있었다. 위의 적용결과를 통해 계산 요소들이 많은 2 차원 해석의 경우 기존의 단일 코어를 이용한 순차적 해석은 장시간에 걸치 연산시간으로 인해 작업효율이 낮아지는 결과를 발생시킬 수 있으며 병렬 해석을 도입할 경우 주어진 컴퓨터 자원를 효율적으로 이용가능하여 합리적인 연산시간으로 연산결과를 얻는 것이 가능하여 반복적 통계 기법/Ensemble 해석 등을 이용한 종합적 해석이 좀 더 실용적으로 이루어 질 수 있을 것이라고 판단되었다.

  • PDF

다중코어 프로세서를 이용한 전산화단층촬영의 재구성 시간 개선 (Improvement in Reconstruction Time Using Multi-Core Processor on Computed Tomography)

  • 천권수
    • 한국방사선학회논문지
    • /
    • 제9권7호
    • /
    • pp.487-493
    • /
    • 2015
  • 전산화단층촬영에서 재구성 과정은 상당한 시간이 요구된다. 단면 영상의 품질을 높이기 매트릭스 크기를 증가시키면 재구성 시간이 매우 빠른 속도로 증가한다. 다중코어 프로세서는 오늘날 광범위하게 사용되고 있으며, 다중코어 프로세서의 다중 스레드를 이용하여 계산 시간을 줄이는 것이 가능하다. 본 연구는 다중 스레드로 CT의 재구성 시간을 개선하였다. 다중 스레드를 위해 Pthread와 OpenMP를 이용하였고, 재구성 과정에서 많은 시간이 소비되는 컨볼루션과 역투역 과정을 자세히 조사하였다. Pthread와 OpenMP 모두 스피드업과 효율성 측면에서 비슷한 성능을 나타내었다.

OpenMP와 MPI 코드의 상대적, 혼합적 성능 고찰 (Comparative and Combined Performance Studies of OpenMP and MPI Codes)

  • 이명호
    • 정보처리학회논문지A
    • /
    • 제13A권2호
    • /
    • pp.157-162
    • /
    • 2006
  • 최근의 고성능 컴퓨팅 플랫폼들은 공유 메모리 다중 프로세서(SMP: Shared Memory Multiprocessor) 시스템, 대규모 병렬 프로세서 (Massively Parallel Processor) 시스템, 여러 개의 컴퓨팅 노드들을 연결한 클러스터(Cluster) 시스템 등으로 분류된다. 이러한 고성능 컴퓨팅 시스템들은 높은 수준의 컴퓨팅 성능을 요구하는 과학 기술용 응용 프로그램들을 위하여 사용된다. 이러한 응용 프로그램들의 실행시 최적의 성능을 얻기 위해서는 적절한 컴퓨팅 플랫폼과 프로그래밍 방식의 선택이 중요하다. 본 연구 논문에서는 여러 방식의 병렬 프로그래밍 모델을 사용하여 개발된 SPEC HPC2002 벤치마크 suite을 위한 최적의 컴퓨팅 플랫폼과 프로그래밍 모델을 그들의 성능 분석 및 평가 작업을 통하여 찾아간다.

New execution model for CAPE using multiple threads on multicore clusters

  • Do, Xuan Huyen;Ha, Viet Hai;Tran, Van Long;Renault, Eric
    • ETRI Journal
    • /
    • 제43권5호
    • /
    • pp.825-834
    • /
    • 2021
  • Based on its simplicity and user-friendly characteristics, OpenMP has become the standard model for programming on shared-memory architectures. Checkpointing-aided parallel execution (CAPE) is an approach that utilizes the discontinuous incremental checkpointing technique (DICKPT) to translate and execute OpenMP programs on distributed-memory architectures automatically. Currently, CAPE implements the OpenMP execution model by utilizing the DICKPT to distribute parallel jobs and their data to slave machines, and then collects the results after executing these distributed jobs. Although this model has been proven to be effective in terms of performance and compatibility with OpenMP on distributed-memory systems, it cannot fully exploit the capabilities of multicore processors. This paper presents a novel execution model for CAPE that utilizes two levels of parallelism. In the proposed model, we add another level of parallelism in the form of multithreaded processes on slave machines with the goal of better exploiting their multicore CPUs. Initial experimental results presented near the end of this paper demonstrate that this model provides significantly enhanced CAPE performance.