• 제목/요약/키워드: GPU-parallelism

검색결과 40건 처리시간 0.026초

이기종 컴퓨팅 환경에서 OpenCL을 사용한 포토모자이크 응용의 효율적인 작업부하 분배 (Efficient Workload Distribution of Photomosaic Using OpenCL into a Heterogeneous Computing Environment)

  • 김희곤;사재원;최동휘;김혜련;이성주;정용화;박대희
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제4권8호
    • /
    • pp.245-252
    • /
    • 2015
  • 최근 고성능 컴퓨팅과 모바일 컴퓨팅에서 성능가속기를 사용하는 병렬처리 방법들이 소개되어왔다. 포토모자이크 응용은 내재된 데이터 병렬성을 활용하고 성능가속기를 사용하여 병렬처리가 가능하다. 본 논문에서는 CPU와 GPU로 구성된 이기종 컴퓨팅 환경에서 포토모자이크 수행 시 작업부하 분배 방법을 제안한다. 즉, 포토모자이크 응용을 비동기 방식으로 병렬화하여 CPU와 GPU 자원을 동시에 활용하고, 각 처리기에 할당할 최적의 작업부하량을 예측하기 위해 CPU-only와 GPU-only 작업 분배 환경에서 수행시간을 측정한다. 제안 방법은 간단하지만 매우 효과적이고, CPU와 GPU로 구성된 이기종 컴퓨팅 환경에서 다른 응용을 병렬화하 데에도 적용될 수 있다. 실험 결과, 이기종 컴퓨팅 환경에서 최적의 작업 분배량으로 수행한 경우, GPU-only의 방법과 비교하여 141%의 성능이 개선되었음을 확인한다.

작업 처리 단위 변화에 따른 GPU 성능과 메모리 접근 시간의 관계 분석 (Analysis of GPU Performance and Memory Efficiency according to Task Processing Units)

  • 손동오;심규연;김철홍
    • 스마트미디어저널
    • /
    • 제4권4호
    • /
    • pp.56-63
    • /
    • 2015
  • 최신 GPU는 프로세서 내부에 포함된 다수의 코어를 활용하여 높은 병렬처리가 가능하다. GPU의 높은 병렬성을 활용하는 기법 중 하나인 GPGPU 구조는 GPU에서 대부분의 CPU의 작업을 처리가 가능하게 해주며, GPU의 높은 병렬성과 하드웨어자원을 효과적으로 활용할 수 있다. 본 논문에서는 다양한 벤치마크 프로그램을 활용하여 CTA(Cooperative Thread Array) 할당 개수 변화에 따른 메모리 효율성과 성능을 분석하고자 한다. 실험결과, CTA 할당 개수 증가에 따라 다수의 벤치마크 프로그램에서 성능이 향상되었지만, 일부 벤치마크 프로그램에서는 CTA 할당 개수 증가에 따른 성능 향상이 발생하지 않았다. 이러한 이유로는 벤치마크 프로그램에서 생성된 CTA 개수가 적거나 동시에 수행할 수 있는 CTA 개수가 정해져 있기 때문으로 판단된다. 또한, 각 벤치마크 프로그램별로 메모리 채널 정체에 따른 메모리 스톨, 내부연결망 정체에 따른 메모리 스톨, 파이프라인의 메모리 단계에서 발생하는 스톨을 분석하여 성능과의 연관성을 파악하였다. 본 연구의 분석결과는 GPGPU 구조의 병렬성 및 메모리 효율성 향상을 위한 연구에 대한 정보로 활용될 것으로 기대된다.

GPU를 이용한 기타의 음 합성을 위한 효과적인 병렬 구현 (An Effective Parallel Implementation of Sound Synthesis of Guitar using GPU)

  • 강성모;김종면
    • 한국컴퓨터정보학회논문지
    • /
    • 제18권8호
    • /
    • pp.1-8
    • /
    • 2013
  • 본 논문에서는GPU 환경에서 기타의 음합성을 위한 물리적 모델링의 효율적인 병렬구현 방법을 제안한다. 물리적 모델링을 이용하여 기타의 개방현(E2, A2, D3, G4, B3, E4)들의 기본음을 합성하기 위해 각 개방현 음 합성을 위한 적절한 필터 계수를 사용하였고, 지연 라인의 길이를 조절하였다. 또한 물리적 모델링 알고리즘을 분석한 결과 지연 라인의 길이만큼 병렬성을 갖는 것을 확인하였다. 따라서 각 개방현의 기타 음을 합성하기 위해 지연 라인의 길이만큼CUDA 코어를 할당한 후 최적의 성능을 보이도록 알고리즘을 병렬 구현하였다. 모의실험결과, GPU를 이용하여 합성한 기타 음과 원음과의 스펙트럼이 매우 유사하였고, GPU는 기존 고성능 TI DSP보다 68배, CPU보다 3배의 성능 향상을 보였다. 또한, 본 논문에서는 물리적 모델링 알고리즘을 멀티 GPU시스템에서도 구현하고 성능을 분석하였다.

멀티코어와 매니코어 환경에서의 2 차원 DCT 가속 (Accelerating 2D DCT in Multi-core and Many-core Environments)

  • 홍진건;정성욱;김정길
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.250-253
    • /
    • 2011
  • Chip manufacture nowadays turned their attention from accelerating uniprocessors to integrating multiple cores on a chip. Moreover desktop graphic hardware is now starting to support general purpose computation. Desktop users are able to use multi-core CPU and GPU as a high performance computing resources these days. However exploiting parallel computing resources are still challenging because of lack of higher programming abstraction for parallel programming. The 2-dimensional discrete cosine transform (2D-DCT) algorithms are most computational intensive part of JPEG encoding. There are many fast 2D-DCT algorithms already studied. We implemented several algorithms and estimated its runtime on multi-core CPU and GPU environments. Experiments show that data parallelism can be fully exploited on CPU and GPU architecture. We expect parallelized DCT bring performance benefit towards its applications such as JPEG and MPEG.

GPU 성능 저하 해결을 위한 내부 자원 활용/비활용 상태 분석 (Analysis on the Active/Inactive Status of Computational Resources for Improving the Performance of the GPU)

  • 최홍준;손동오;김종면;김철홍
    • 한국콘텐츠학회논문지
    • /
    • 제15권7호
    • /
    • pp.1-11
    • /
    • 2015
  • 최신 고성능 컴퓨팅 시스템에서는, 대용량 병렬 연산을 효과적으로 처리할 수 있는 GPU의 우수한 연산 성능을 그래픽 처리 이외의 범용 작업에 활용하는 GPGPU 기술에 관한 연구가 활발하게 진행 중이다. 하지만 범용 응용프로그램의 특성이 GPU 구조에 최적화되어 있지 않기 때문에 범용 프로그램 수행 시 GPGPU는 GPU의 연산 자원을 효과적으로 활용하지 못하고 있다. 그러므로 본 논문에서는 GPGPU 기술을 사용하는 컴퓨팅 시스템의 성능을 보다 향상시킬 수 있는 GPU 연구에 대한 방향을 제시하고자 한다. 이를 위하여, 본 논문에서는 GPU 성능 저하 원인 분석을 수행한다. GPU 성능 저하 원인을 보다 명확하게 분류하고자 본 논문에서는 GPU 코어의 상태를 완전 활성화 상태, 불완전 활성화 상태, 유휴 상태, 메모리스톨 상태, 그리고 GPU 코어 스톨 상태 등 5가지로 정의하였다. 완전 활성화 상태를 제외한 모든 GPU 코어 상태들은 컴퓨팅 시스템의 성능 저하를 유발한다. 본 논문에서 성능 저하 원인을 찾고자 벤치마크 프로그램의 특성에 따라 각 GPU 코어 상태의 비율 변화를 측정하였다. 분석 결과에 따르면, 불완전 활성화 상태, 유휴 상태, 메모리 스톨 상태 그리고 GPU 코어 스톨 상태는 연산 자원 활용률 저하, 낮은 프로그램 병렬성, 높은 메모리 요청, 그리고 구조적 해저드에 의해 각각 유발된다.

OpenCL을 이용한 돈사 감시 응용의 효율적인 태스크 분배 (Efficient Task Distribution for Pig Monitoring Applications Using OpenCL)

  • 김진성;최윤창;김재학;정연우;정용화;박대희;김학재
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제6권10호
    • /
    • pp.407-414
    • /
    • 2017
  • 다수의 태스크로 구성된 돈사 감시 응용은 내재된 데이터 병렬성을 활용하고 성능가속기를 사용하여 병렬 처리가 가능하다. 본 논문에서는 멀티코어 CPU와 매니코어 GPU로 구성된 이기종 컴퓨팅 플랫폼에서 돈사 감시 응용 수행 시 태스크 분배 방법을 제안한다. 즉, 각 태스크별로 OpenCL을 이용한 병렬 프로그램을 작성한 뒤, deviceCPU와 deviceGPU 각각에서 수행시켜 측정된 수행시간을 기준으로 가장 적합한 처리기를 결정한다. 제안 방법은 간단하지만 매우 효과적이고, CPU와 GPU로 구성된 이기종 컴퓨팅 플랫폼에서 다수의 태스크로 구성된 다른 응용을 병렬화하는 경우에도 적용될 수 있다. 실험 결과, 상이한 이기종 컴퓨팅 플랫폼에서 최적의 태스크 분배로 수행한 경우 가 전체 태스크들을 deviceGPU에서 수행한 GPU-only 방법에 비교하여 각각 2.7배, 8.7배, 2.7배 성능 개선이 되었음을 확인하였다.

2차원 구조 대비 3차원 구조 GPU의 메모리 접근 효율성 분석 (Memory Delay Comparison between 2D GPU and 3D GPU)

  • 전형규;안진우;김종면;김철홍
    • 한국컴퓨터정보학회논문지
    • /
    • 제17권7호
    • /
    • pp.1-11
    • /
    • 2012
  • 최근 반도체 공정 기술이 발달함에 따라 단일 프로세서에 적재되는 코어의 수가 크게 증가하였고, 이는 프로세서의 성능을 급격하게 향상시키는 계기가 되고 있다. 특히, 많은 수의 코어들로 구성된 GPU(Graphics Processing Unit)는 대규모 병렬성을 활용하여 연산처리 성능을 크게 향상시키고 있다. 하지만, 주 메모리 접근 지연시간이 GPU의 성능 향상을 제약하는 심각한 요인 중 하나로 제기되는 상황이다. 본 논문에서는 3차원 구조를 통한 GPU의 메모리 접근 효율성 향상에 대한 정량적 분석과 3차원 구조 적용 시 발생 가능한 문제점에 대하여 살펴보고자 한다. 일반적으로 메모리 명령어 비율은 평균적으로 전체 명령어의 30%를 차지하고, 메모리 명령어 중에서 주 메모리 접근과 관련된 글로벌/로컬 메모리 명령어가 차지하는 비율 또한 평균 60%이므로 주 메모리로의 접근 지연시간을 크게 감소시키는 3차원 구조를 적용한다면 GPU의 성능 또한 크게 향상시킬 수 있을 것으로 예상된다. 그러나 본 논문에서 수행한 실험 결과에 따르면 메모리 병목현상으로 인해 3차원 구조 GPU의 성능이 2차원 구조 GPU에 비해 크게 향상되지는 않음을 확인할 수 있다. 분석 결과에 의하면, 3차원 구조 GPU는 2차원 구조 GPU와 비교하여 메모리 병목현상으로 인한 성능 지연이 최대 245%까지 증가하기 때문이다. 본 논문에서는 3차원 구조 GPU를 대상으로 메모리 접근의 효율성과 문제점을 함께 분석함으로써, 3차원 GPU에 적합한 메모리 구조를 설계하기 위한 가이드라인을 제시하고자 한다.

계층 자료구조의 결합과 3차원 클러스터링을 이용하여 적응적으로 부하 균형된 GPU-클러스터 기반 병렬 볼륨 렌더링 (Adaptive Load Balancing Scheme using a Combination of Hierarchical Data Structures and 3D Clustering for Parallel Volume Rendering on GPU Clusters)

  • 이원종;박우찬;한탁돈
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제33권1_2호
    • /
    • pp.1-14
    • /
    • 2006
  • 대용량 볼륨 데이타를 가시화하는 효과적인 방법인 후-정열 병렬 렌더링은 부하균형에 의해 성능이 결정된다. 기존의 정적 데이타 분할 방법은 태스크 병렬성만의 관점에서는 자기균형을 쉽게 얻을 수 있었지만, 데이타 내부의 빈 공간을 고려하지 않았기 때문에 데이타 병렬성의 관점에서는 심각한 불균형을 초래할 수 있었다. 본 논문은 태스크 병렬성과 데이타 병렬성이 함께 고려된, 적응적이며 확장적인 부하 균형 기법을 제안한다. 우리는 계층적 자료 구조인 옥트리와 BSP-트리를 효과적으로 결합하여 볼륨 데이타의 실제 영역만을 추출하여 렌더링 노드들로 균등하게 분산시켰으며, 각 렌더링 노드들에서는 3차원 클러스터링 알고리즘을 적용하여 렌더링 순서를 효과적으로 결정하였다. 제안하는 방법은 기존의 정적 데이타 분산 기법에 비해 최대 22배의 병렬성을 높였고 동기화 비용을 낮추어 렌더링 성능을 크게 향상시켰음을 실험을 통해 알 수 있었다.

샷 경계 탐지 알고리즘의 병렬 설계와 구현 (Parallel Design and Implementation of Shot Boundary Detection Algorithm)

  • 이준구;김승현;유병문;황두성
    • 전자공학회논문지
    • /
    • 제51권2호
    • /
    • pp.76-84
    • /
    • 2014
  • 최근 고화질 영상의 증가와 더불어 대용량 영상 데이터의 처리는 높은 연산이 요구되어 병렬 처리 설계가 선택되고 있다. 영상 처리에서 나타나는 많은 단순 연산이 병렬처리 가능한 경우, CPU 기반 병렬처리보다는 GPU 기반 병렬처리를 적용하는 것이 계산문제의 시간과 공간 계산 복잡도를 줄일 수 있다. 본 논문은 영상에서 샷 경계 탐지 알고리즘의 병렬 설계와 구현을 연구하였다. 제안하는 샷 경계 탐지 알고리즘은 프레임 간 지역 화소 밝기 비교와 전역 히스토그램 정보를 이용하는데, 이들 데이터의 계산은 대량의 데이터에 대한 높은 병렬성을 갖는다. 이들 연산의 병렬처리를 최대화하기 위해 화소 밝기와 히스토그램의 계산을 NVIDIA GPU에서 병렬 설계 하였다. GPU 기반 샷 탐지 방법은 국가기록원에서 선택된 10개의 비디오 데이터에 대한 성능 테스트를 수행하였다. 테스트에서 GPU 기반 알고리즘의 탐지율은 CPU 기반 알고리즘과 유사하였으나 약 10배의 연산 속도가 개선되었다.

다중 GPU 기반의 고속 삼차원 역전사 기법 (Fast Multi-GPU based 3D Backprojection Method)

  • 이병훈;이호;계희원;신영길
    • 한국멀티미디어학회논문지
    • /
    • 제12권2호
    • /
    • pp.209-218
    • /
    • 2009
  • 삼차원 역전사(3D backprojection) 기법은 수백 장의 이차원 투영영상을 가지고 대상물의 공간적인 위치 파악이 가능한 단층 영상(tomography)을 생성하기 위해 사용되는 재구성 기법이다. 재구성 기법은 단층 영상을 구성하는 결과볼륨의 모든 화소로부터 각 화소 위치에 기여할 값을 이차원 투영영상에서 계산하여 얻어오기 때문에 결과볼륨이 커지거나 투영영상의 수가 증가하게 되면 전체 계산량은 상당히 증가하게 된다. 이러한 문제를 해결하기 위해 최근 범용 그래픽스 하드웨어(graphics processing unit: GPU) 기반의 고속 삼차원 재구성 기법이 연구되었으며 상당한 성능 향상을 가져왔다. 본 논문에서는 기존의 단일 GPU 기반의 삼차원 재구성 기법을 다중 GPU기반으로 확장할 때 입력되는 투영영상 크기와 결과볼륨의 크기에 따라서 효율적으로 동작될 수 있는 두 가지 병렬 처리 구현 기법에 대해 제시하고 비교 분석한다. 제안한 병렬 처리 구현 기법은 투영영상을 입력 데이터로 간주하여 각 GPU가 모든 투영영상에 대해서 출력 데이터인 결과볼륨을 분할하여 생성하는 결과볼륨 분할생성 기법과 각 GPU가 투영영상을 분산적재하여 할당받은 입력 데이터에 대한 결과볼륨을 출력한 후 각각의 출력 결과를 CPU에서 합하는 투영영상 분산적재 기법이다. 실험 결과, 결과볼륨의 크기가 GPU에 모두 할당할 수 있는 크기인 경우에는 결과볼륨 분할생성 기법이 더 좋은 성능을 보였고, 결과볼륨의 크기가 GPU 메모리보다 큰 경우에는 투영영상 분산적재 기법이 더 유리하였다.

  • PDF