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

검색결과 33건 처리시간 0.03초

병렬구조를 이용한 증강현실 구현 (Implementation of augmented reality using parallel structure)

  • 박태룡;허훈;곽재창
    • 전기전자학회논문지
    • /
    • 제17권3호
    • /
    • pp.371-377
    • /
    • 2013
  • 본 논문에서는 FAST와 BRIEF 알고리즘을 기반으로 하는 증강현실을 구현하기 위해서 효율적인 병렬 구조를 제안한다. 객체 인식 알고리즘으로 잘 알려진 SURF 알고리즘은 객체인식에 강인하지만 연산 량이 많아 실시간으로 구현하기에 어려운 단점을 가지고 있다. FAST와 BRIEF 알고리즘을 활용하여 객체를 인식하였고, 임베디드 환경에서 성능을 향상하기 위해 기존의 OpenMP 라이브러리를 사용한 병렬구조를 개선하여 속도를 약 70%에서 100%로 향상 시켰다.

대용량 위성영상의 무감독 분류를 위한 k-Means Clustering 알고리즘의 병렬처리: 다중코어와 PC-Cluster를 이용한 Hybrid 방식 (Parallel Processing of k-Means Clustering Algorithm for Unsupervised Classification of Large Satellite Images: A Hybrid Method Using Multicores and a PC-Cluster)

  • 한수희;송정헌
    • 한국측량학회지
    • /
    • 제37권6호
    • /
    • pp.445-452
    • /
    • 2019
  • 본 연구에서는 대용량 위성영상의 무감독분류를 위해 k-means clustering 알고리즘의 병렬처리 코드를 개발하여 PC-cluster에서 구현하였다. 이를 위해 OpenMP (Open Multi-Processing)를 기반으로 CPU (Central Processing Unit)의 다중코어를 이용하는 intra-node 코드와 message passing interface를 기반으로 PC-cluster를 이용하는 inter-nodes 코드, 그리고 이 둘을 병용하는 hybrid 코드를 구현하였다. 본 연구에 사용한 PC-cluster는 한 대의 마스터 노드와 여덟 대의 슬래이브 노드로 구성되어 있고 각 노드에는 여덟 개의 다중코어가 장착되어 있다. PC-cluster에는 Microsoft Windows와 Canonical Ubuntu의 두 가지 운영체제를 설치하여 병렬처리 성능을 비교하였다. 실험에 사용한 자료는 두 가지 다중분광 위성영상으로서 중용량인 LANDSAT 8 OLI (Operational Land Imager) 영상과 대용량인 Sentinel 2A 영상이다. 병렬처리의 성능을 평가하기 위하여 speedup과 efficiency를 측정한 결과 전반적으로 speedup은 N/2 이상, efficiency는 0.5 이상으로 나타났다. Microsoft Windows와 Canonical Ubuntu를 비교한 결과 Ubuntu가 2-3배의 빠른 결과를 나타내었다. 순차처리와 병렬처리 결과가 일치하는지 확인하기 위해 각 클래스의 밴드별 중심값과 분류된 화소의 수를 비교하고 결과 영상간 화소대 화소 비교도 수행하였다. Intra-node 코드를 구현할 때에는 OpenMP에 의한 false sharing이 발생하지 않도록 주의해야 하고, PC-cluster에서 대용량 위성영상을 처리하기 위해서는 파일 I/O에 의한 성능저하를 줄일 수 있도록 코드 및 하드웨어를 설계해야 함을 알 수 있었다. 또한 PC-cluster에 설치된 운영체제에 따라서도 성능 차이가 발생함을 알 수 있었다.

그래픽 프로세서를 이용한 병렬연산 기반 해무 제거 고속화 (Acceleration for Removing Sea-fog using Graphic Processors and Parallel Processing)

  • 김영두;곽재민;서영호;최현준
    • 한국항행학회논문지
    • /
    • 제21권5호
    • /
    • pp.485-490
    • /
    • 2017
  • 본 논문에서는 그래픽 프로세서를 이용하여 고속으로 해무를 제거하는 기술을 제안한다. 이 기술은 호스트 프로세서(CPU)와 병렬처리가 가능한 여러 개의 그래픽 프로세서를 이용하여 입력영상에서 해무를 제거하는 것이다. 해무를 제거하는 과정 중에서 다크 채널 추출, 최대 밝기 채널 추출, 전달량 계산은 호스트 프로세서에서 수행하고, 양방향 필터를 적용하여 전달량을 정제하는 과정을 그래픽 프로세서를 기반으로 병렬처리하여 연산속도를 높였다. 제안한 병렬처리 기법의 검증을 위해 NVIDIA사의 GTX 1070 GPU를 3개를 사용하여 검증환경을 구성하였다. 구현결과 하나의 그래픽 프로세서로 구현하였을 때는 평균 140ms가 소요되고, OpenMP와 다중 GPGPU를 이용하여 구현하였을 때 26ms 소요되었다. 본 논문에서 제안하는 그래픽 프로세서 기반의 병렬연산 해무제거 기술은 선박의 안전항해, 항만 관제 분야에 사용될 수 있을 것이다.

기상 모델 CFD_NIMR의 최적 성능을 위한 혼합형 병렬 프로그램 구현 (Hybrid Parallelization for High Performance of CFD_NIMR Model)

  • 김민욱;최영진;김영태
    • 대기
    • /
    • 제22권1호
    • /
    • pp.109-115
    • /
    • 2012
  • We parallelized the CFD_NIMR model, which is a numerical meteorological model, for best performance on both of distributed and shared memory parallel computers. This hybrid parallelization uses MPI (Message Passing Interface) to apply horizontal 2-dimensional sub-domain out of the 3-dimensional computing domain for distributed memory system, as well as uses OpenMP (Open Multi-Processing) to apply vertical 1-dimensional sub-domain for utilizing advantage of shared memory structure. We validated the parallel model with the original sequential model, and the parallel CFD_NIMR model shows efficient speedup on the distributed and shared memory system.

OpenCL을 이용한 임베디드 GPGPU환경에서의 AES 암호화 성능 개선과 평가 (Performance Enhancement and Evaluation of AES Cryptography using OpenCL on Embedded GPGPU)

  • 이민학;강우철
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제22권7호
    • /
    • pp.303-309
    • /
    • 2016
  • 최근, ARM Mali와 같은 여러 임베디드 프로세서들이 OpenCL과 같은 GPGPU 프레임워크를 지원함에 따라 기존 PC 환경에서 활용되던 GPGPU 기술이 임베디드 시스템 영역으로 확대 되고 있다. 그러나 임베디드 시스템은 PC와는 상이한 구조를 갖으며, 저전력이나 실시간성과 같은 성능이 더욱 중요하다. 본 논문에서는 임베디드 GPGPU환경에서 AES 암호화 알고리즘을 개방형 범용 병렬 컴퓨팅 프레임워크인 OpenCL을 사용하여 구현하고 이를 CPU만을 이용한 구현과 비교한다. 실험결과, 1000KByte의 데이터 사이즈의 128비트 AES 암호화 시에 OpenCL을 사용하여 GPU로 병렬 처리하는 것이 OpenMP를 사용하여 CPU상에서 병렬 처리한 방식보다 응답 시간은 최대 1/150, 에너지 소비량은 최대 1/290로 감소함을 확인하였다. 또한 호스트와 GPU 디바이스 간에 메모리를 공유하는 임베디드 구조의 특성에 최적화하여 메모리 복제를 하지 않는 기법을 적용하는 경우 응답시간과 에너지 소비량에서 최대 100% 이상의 추가적인 성능개선을 이룰 수 있었으며, 연구에서 사용한 데이터의 크기에 비례하여 더 높은 성능의 개선이 나타나는 것을 확인하였다.

CUDA 연산을 이용한 개선된 영상 매칭 방법에 관한 연구 (A Study on Improved Image Matching Method using the CUDA Computing)

  • 조경래;박병준;윤태복
    • 한국산학기술학회논문지
    • /
    • 제16권4호
    • /
    • pp.2749-2756
    • /
    • 2015
  • 최근 데이터의 질이 높아짐에 따라 영상을 처리하는데 많은 시간이 소모되는 문제가 제기되어 영상 처리 알고리즘의 가속화가 필요하게 됨으로써, 기존의 CPU와 CUDA(Compute Unified Device Architecture) 기반의 인식 시스템에서 연산속도와 성능이득 비교를 위해 OpenMP를 가지고 측정할 수 있는 문자 인식시스템으로 학습된 문자데이터가 입력되면 매칭이 가장 잘 되는 영상의 영역을 인식하는 환경으로 구현하여 각 영문 알파벳의 글씨체가 일정하고 크기가 규격화 되어 있으므로 문자를 학습하고 문자 정합도를 계산하기 위한 영상 매칭 방법을 구현하게 되었다. GPGPU(General Purpose GPU)프로그래밍 플랫폼 기술인 CUDA연산 기법을 이용하여 알고리즘을 빠르고 효율적으로 처리하는 OpenMP에서 인텔 i5 2500의 네 개의 코어를 사용하여 인식 할 때, 기존 CPU의 성능보다 4배의 속도가 나오지 않고 데이터의 분할과 병합 연산의 지연으로 인해 약 3.2배의 속도로 향상되는 가속화 방법을 제안하고 그래픽카드에서 처리하는 병렬처리 결과, 순차적 연산을 수행하였던 CPU 기반의 처리에 비해 성능이득이 약 21X(배)로 향상됨을 확인하였다.

대용량 위성영상의 무감독 분류를 위한 K-means 군집화 알고리즘의 병렬처리 (Parallel Processing of K-means Clustering Algorithm for Unsupervised Classification of Large Satellite Imagery)

  • 한수희
    • 한국측량학회지
    • /
    • 제35권3호
    • /
    • pp.187-194
    • /
    • 2017
  • 본 연구는 대용량 위성영상의 신속한 무감독 분류를 위해 k-means 군집화 알고리즘을 병렬처리하는 방법을 소개한다. K-means 군집화 알고리즘은 대표적인 무감독분류 알고리즘으로서 주로 감독분류의 전처리 단계로 활용되지만 연산 집약적이고 사용자의 개입이 적어 병렬처리의 효과를 분명하게 나타낼 수 있다. 병렬처리 코드는 OpenMP 기반의 멀티쓰레딩을 이용하여 구현하였다. 실험은 1대의 PC에서 시행하였으며 이 PC의 CPU에는 8개의 멀티코어가 집적되어 있다. 실험 영상으로는 7개 밴드로 구성한 30m 해상도의 LANDSAT 8 OLI 영상과 8개 밴드로 구성한 10m 해상도의 Sentinel-2A 영상을 사용하였다. 각각 10개 군집을 사용하여 순차처리 및 병렬처리를 수행한 결과 병렬처리가 순차처리에 비해 6배 내외의 속도를 나타내었다. 순차처리와 병렬처리 결과의 일치성 평가를 위해 각 군집의 중심값과 분류된 화소의 수를 비교하고 분류 결과 영상간 차분을 수행하였고 결과로 모든 정보가 일치하였다. 본 연구는 병렬처리를 통해 대용량 위성영상의 처리 속도를 상당히 향상시킬 수 있음을 입증하고 있다는 점에서 의미가 있다고 판단된다. 아울러 OpenMP 기반의 멀티쓰레드를 이용하면 비교적 쉽게 병렬처리를 구현할 수 있지만 false sharing의 발생을 억제하도록 코드를 설계하는데 주의를 기울여야 함도 확인할 수 있었다.

디지털 인터넷 라디오 수신기 구현에 대한 연구 (The Study on Development of a Digital Internet Radio Receiver)

  • 박인규
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제12권2호
    • /
    • pp.102-110
    • /
    • 2006
  • 본 논문에서는 인터넷과 연결되어 사용되는 일반 PC가 아닌 소형의 임베디드 인터넷 라디오수신 단말기의 구현에 대하여 논의한다. 이러한 시스템의 표준이 아직 정하여 있지 않으며 알고리즘 또한 비공개 상태이다. 따라서 PC의 인터넷 라디오 수신 방식을 분석하여 끊김이 없는 고음질의 임베디드 인터넷 라디오 시스템을 구현을 위하여 여러 업체의 PC 인터넷 수신 알고리즘은 분석하고 하드웨어는 자체 개발하였다. 본 인터넷 라디오 시스템은 실시간 인터넷 라디오의 멀티스트리밍 기능, 임베디드 프로세서, 플래쉬 메모리, TCP/IP 인터훼이스, MP3 디코더 등으로 구성되어있다.

멀티코어 CPU를 갖는 공유 메모리 구조의 대규모 병렬 유한요소 코드에 대한 설계 고려 사항 (Design Considerations on Large-scale Parallel Finite Element Code in Shared Memory Architecture with Multi-Core CPU)

  • 조정래;조근희
    • 한국전산구조공학회논문집
    • /
    • 제30권2호
    • /
    • pp.127-135
    • /
    • 2017
  • 멀티코어 CPU와 BLAS, LAPACK을 구현한 최적 수치라이브러리, 직접 희소 솔버의 대중화 등 PC나 워크스테이션 수준에서도 대규모 유한요소 모델을 해석할 수 있도록 컴퓨팅 환경이 급속도로 변화되었다. 이 논문에서는 멀티코어 CPU를 갖는 공유 메모리 구조에 대한 병렬 유한요소 프로그램 설계시 고려사항으로 (1) 최적화된 수치라이브러리의 사용, (2) 최신 직접 희소 솔버의 사용, (3) OpenMP를 이용한 병렬 요소 강성 행렬의 계산, (4) 희소행렬 저장방식의 일종인 triplet을 이용한 어셈블 기법 등을 제시하였다. 또한 대규모 수치모델을 통해 많은 시간이 소요되는 작업을 기준으로 병렬화 효과를 검토하였다.

신속한 오염사고 대응을 위한 입자 분산 모형의 속도 개선 및 평가 (Particle Dispersion Model Speed Improvement and Evaluation for Quick Reaction to Pollutant Accidents)

  • 신재현;성호제;박인환;이동섭
    • 한국콘텐츠학회논문지
    • /
    • 제20권12호
    • /
    • pp.537-546
    • /
    • 2020
  • 본 연구에서는 오염물 사고에 대한 신속한 대응을 위하여 입자 분산 모형을 개발 및 개선하고 병렬 프로그램을 적용한 모의 속도 증가와 그 분석을 통하여 속도개선 결과를 평가하였다. 개발된 모형은 전단류 분산이론을 따르면서 수평 혼합 과정은 전단이송, 연직 혼합 과정은 연직배열 알고리즘을 이용한 난류 및 입자 확산을 구현하였다. 오염사고에 신속하게 대응하기 위해 모형 속도 개선을 위하여 OpenMP를 활용한 병렬 프로그래밍으로 멀티코어 적용 알고리즘을 적용하였다. 병렬 프로그래밍 적용 결과, 가상 사행수로에서 기준 소요시간 내로 모의가 가능한 입자 및 활용 코어 개수의 관계를 도출할 수 있었다. 이 연구 결과로 신속한 수질 오염사고 사고대응을 위한 적절한 모의 조건을 구성할 수 있게 되어 모형의 활용성을 증대할 수 있었다.