• 제목/요약/키워드: Parallel GPU

검색결과 281건 처리시간 0.024초

최적화된 CUDA 소프트웨어 제작을 위한 프로그래밍 기법 분석 (Analysis of Programming Techniques for Creating Optimized CUDA Software)

  • 김성수;김동헌;우상규;임인성
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제16권7호
    • /
    • pp.775-787
    • /
    • 2010
  • GPU(Graphics Processing Unit)는 범용 CPU와는 달리 다수코어 스트리밍 프로세서(manycore streaming processor) 형태로 특화되어 발전되어 왔으며, 최근 뛰어난 병렬 처리 연산 능력으로 인하여 점차 많은 영역에서 CPU의 역할을 대체하고 있다. 이러한 추세에 따라 최근 NVIDIA 사에서는 GPGPU(General Purpose GPU) 아키텍처인 CUDA(Compute Unified Device Architecture)를 발표하여 보다 유연한 GPU 프로그래밍 환경을 제공하고 있다. 일반적으로 CUDA API를 사용한 프로그래밍 작업시 GPU의 계산구조에 관한 여러 가지 요소들에 대한 특성을 정확히 파악해야 효율적인 병렬 소프트웨어를 개발할 수 있다. 본 논문에서는 다양한 실험과 시행착오를 통하여 획득한 CUDA 프로그래밍에 관한 최적화 기법에 대하여 설명하고, 그러한 방법들이 프로그램 수행의 효율에 어떠한 영향을 미치는지 알아본다. 특히 특정 예제 문제에 대하여 효과적인 계층 구조 메모리의 접근과 코어 활성화 비율(occupancy), 지연 감춤(latency hiding) 등과 같이 성능에 영향을 미치는 몇 가지 규칙을 실험을 통해 분석해봄으로써, 향후 CUDA를 기반으로 하는 효과적인 병렬 프로그래밍에 유용하게 활용할 수 있는 구체적인 방안을 제시한다.

질량스프링 시뮬레이션을 위한 병렬 구조 설계 방법 (Parallel Structure Design Method for Mass Spring Simulation)

  • 성낙준;최유주;홍민
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제25권3호
    • /
    • pp.55-63
    • /
    • 2019
  • 최근 물리 시뮬레이션 분야의 성능 개선을 위해 GPU 컴퓨팅 방식이 활용되고 있다. 특히 많은 연산의 양을 요구하는 변형물체 시뮬레이션의 경우 실시간성 보장을 위해 GPU 기반 병렬처리 알고리즘을 필요로 한다. 본 연구진은 변형물체 시뮬레이션을 구현하는 방법 중 하나인 질량스프링 시뮬레이션 기법의 성능을 향상시키기 위한 병렬 구조 설계 방법에 대한 연구를 수행하였다. 이를 위해 GPU에 직접 접근이 가능한 그래픽 라이브러리인 OpenGL의 GLSL을 사용하였으며, 독립적인 파이프라인인 컴퓨트 쉐이더를 활용해 GPGPU 환경을 구현하였다. 병렬 구조 설계 방법의 효과를 검증하기 위해 스프링 기반 질량스프링 시스템을 CPU기반과 GPU기반으로 구현하였으며, 실험의 결과 본 설계 방법을 적용하였을 때 CPU 환경에 비해 연산 속도가 약 6,000% 개선됨을 보였다. 추후 본 연구에서 제안한 설계 방법을 활용한다면 경량화 시뮬레이션 기술이 필요한 증강현실 및 가상현실 분야에 효과적으로 적용이 가능할 것으로 기대한다.

Heterogeneous 멀티 코어 환경의 Thick Client에서 VDI 성능 최적화를 위한 혼합 병렬 처리 기법 연구 (VDI Performance Optimization with Hybrid Parallel Processing in Thick Client System under Heterogeneous Multi-Core Environment)

  • 김명섭;허의남
    • 한국통신학회논문지
    • /
    • 제38B권3호
    • /
    • pp.163-171
    • /
    • 2013
  • 최근 HD급 동영상이나 3D 어플리케이션과 같은 이전보다 저사양, 모바일 단말에서는 구동하기 힘든 프로그램들에 대한 이용 요구가 확대되면서 처리해야 할 콘텐츠 데이터들이 고용량화 되고 있다. 클라우드 기반의 VDI(Virtual Desktop Infrastructure) 서비스는 이를 처리하기 위해 효율적인 데이터 처리 능력이 필요해졌으며 QoE(Quality of Experience) 보장을 위한 성능 개선 연구가 이슈가 되고 있다. 본 논문에서는 H/W 성능이 향상되어 CPU와 GPU를 탑재한 Thick Client기반의 3가지 Thick-Thin간 VDI 자원 공유 및 위임이 가능한 VDI 서비스에 대해 제안하며, VDI 서비스 성능의 개선을 위해 CPU와 GPU가 혼합된 Heterogeneous 멀티코어 환경에서 CPU와 GPU 병렬 처리 기법인 OpenMP와 CUDA를 활용하여 VDI 서비스 최적화 방안을 제안하고 기존의 VDI와 비교한 성능을 거론한다.

Time Complexity Measurement on CUDA-based GPU Parallel Architecture of Morphology Operation

  • Izmantoko, Yonny S.;Choi, Heung-Kook
    • 한국멀티미디어학회논문지
    • /
    • 제16권4호
    • /
    • pp.444-452
    • /
    • 2013
  • Operation time of a function or procedure is a thing that always needs to be optimized. Parallelizing the operation is the general method to reduce the operation time of the function. One of the most powerful parallelizing methods is using GPU. In image processing field, one of the most commonly used operations is morphology operation. Three types of morphology operations kernel, na$\ddot{i}$ve, global and shared, are presented in this paper. All kernels are made using CUDA and work parallel on GPU. Four morphology operations (erosion, dilation, opening, and closing) using square structuring element are tested on MRI images with different size to measure the speedup of the GPU implementation over CPU implementation. The results show that the speedup of dilation is similar for all kernels. However, on erosion, opening, and closing, shared kernel works faster than other kernels.

Parallel Algorithm of Conjugate Gradient Solver using OpenGL Compute Shader

  • Va, Hongly;Lee, Do-keyong;Hong, Min
    • 한국컴퓨터정보학회논문지
    • /
    • 제26권1호
    • /
    • pp.1-9
    • /
    • 2021
  • OpenGL compute shader는 다른 shader 단계와 다르게 동작하며, 병렬로 모든 데이터를 계산하는데 사용할 수 있다. 본 논문은 OpenGL compute shader에서 반복 켤레 기울기 방법을 통해 희소선형 시스템을 계산하기 위한 GPU 기반의 병렬 알고리즘 제안하였다. 제안된 희소 선형 해결 방법은 대칭인 양의 정부호 행렬과 같은 대형 선형 시스템을 해결하기 위해 사용된다. 본 논문은 이 알고리즘을 사용하여 매트릭스 형식이 다른 8가지 예제들에 대해서 CPU와 GPU를 기반으로한 성능 비교 결과를 제공한다. 본 논문은 4가지 잘 알려져 있는 매트릭스 형식(Dense, COO, ELL and CSR)을 매트릭스 저장소를 사용하였다. 8개의 희소 매트릭스를 사용한 성능 비교 실험에서 GPU 기반 선형 해결 시스템이 CPU 기반 선형 해결 시스템보다 훨씬 빠르며, GPU 기반에서 0.64ms, CPU 기반에서 15.37ms의 평균 컴퓨팅 시간을 제공한다.

GPU를 이용한 SDR 시스템 용 LTE MIMO 기지국 기능 구현 (Implementation of $2{\times}2$ MIMO LTE Base Station using GPU for SDR System)

  • 이승학;김경훈;안치영;최승원
    • 디지털산업정보학회논문지
    • /
    • 제8권4호
    • /
    • pp.91-98
    • /
    • 2012
  • This paper implements 2X2 MIMO Long Term Evolution (LTE) base station using Software defined radio (SDR) technology. The implemented base station system processes baseband signals on a Graphics Processor Unit(GPU). GPU is a high-speed parallel processor which provides very important advantage of using a very powerful C-based programming environment that is Compute Unified Device Architecture (CUDA). The implemented software-based base station system processes baseband signals through GPU. It utilizes USRP2 as its RF transceiver. In order to guarantee a real-time processing of LTE baseband signals, we have adopted well-known signal processing algorithms such as frame synchronization algorithms, ML detection, etc. using GPU operating in parallel processing.

APBT-JPEG Image Coding Based on GPU

  • Wang, Chengyou;Shan, Rongyang;Zhou, Xiao
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제9권4호
    • /
    • pp.1457-1470
    • /
    • 2015
  • In wireless multimedia sensor networks (WMSN), the latency of transmission is an increasingly problem. With the improvement of resolution, the time cost in image and video compression is more and more, which seriously affects the real-time of WMSN. In JPEG system, the core of the system is DCT, but DCT-JPEG is not the best choice. Block-based DCT transform coding has serious blocking artifacts when the image is highly compressed at low bit rates. APBT is used in this paper to solve that problem, but APBT does not have a fast algorithm. In this paper, we analyze the structure in JPEG and propose a parallel framework to speed up the algorithm of JPEG on GPU. And we use all phase biorthogonal transform (APBT) to replace the discrete cosine transform (DCT) for the better performance of reconstructed image. Therefore, parallel APBT-JPEG is proposed to solve the real-time of WMSN and the blocking artifacts in DCT-JPEG in this paper. We use the CUDA toolkit based on GPU which is released by NVIDIA to design the parallel algorithm of APBT-JPEG. Experimental results show that the maximum speedup ratio of parallel algorithm of APBT-JPEG can reach more than 100 times with a very low version GPU, compared with conventional serial APBT-JPEG. And the reconstructed image using the proposed algorithm has better performance than the DCT-JPEG in terms of objective quality and subjective effect. The proposed parallel algorithm based on GPU of APBT also can be used in image compression, video compression, the edge detection and some other fields of image processing.

유한요소 비압축성 유동장 해석을 위한 이중공액구배법의 GPU 기반 연산에 대한 연구 (A Study on GPU Computing of Bi-conjugate Gradient Method for Finite Element Analysis of the Incompressible Navier-Stokes Equations)

  • 윤종선;전병진;정혜동;최형권
    • 대한기계학회논문집B
    • /
    • 제40권9호
    • /
    • pp.597-604
    • /
    • 2016
  • 본 연구에서는 GPU를 이용한 비압축성 유동장의 병렬연산을 위하여, P2P1 유한요소를 이용한 분리 알고리즘 내의 행렬 해법인 이중공액구배법(Bi-Conjugate Gradient)의 CUDA 기반 알고리즘을 개발하였다. 개발된 알고리즘을 이용해 비대칭 협착관 유동을 해석하고, 단일 CPU와의 계산시간을 비교하여 GPU 병렬 연산의 성능 향상을 측정하였다. 또한, 비대칭 협착관 유동 문제와 다른 행렬 패턴을 가지는 유체구조 상호작용 문제에 대하여 이중공액구배법 내의 희소 행렬과 벡터의 곱에 대한 GPU의 병렬성능을 확인하였다. 개발된 코드는 희소 행렬의 1개의 행과 벡터의 내적을 병렬 연산하는 커널(Kernel)로 구성되며, 최적화는 병렬 감소 연산(Parallel Reduction), 메모리 코얼레싱(Coalescing) 효과를 이용하여 구현하였다. 또한, 커널 생성 시 워프(Warp)의 크기에 따른 성능 차이를 확인하였다. 표준예제들에 대한 GPU 병렬연산속도는 CPU 대비 약 7배 이상 향상됨을 확인하였다.

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시스템에서도 구현하고 성능을 분석하였다.

GPU에서 CUDA를 이용한 그래프 유사도 측정을 위한 병렬 알고리즘 (A Parallel Algorithm for Measuring Graph Similarity Using CUDA on GPU)

  • 손민영;김영학;최성자
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제23권3호
    • /
    • pp.156-164
    • /
    • 2017
  • 두 그래프의 유사도를 측정하는 문제는 다양한 응용분야에서 그래프 문제를 해결하기 위한 기본적인 도구 중 하나이다. 대부분 그래프 알고리즘들은 정점과 간선의 개수를 기반으로 한 시간 복잡도를 가진다. 최근 GPU는 낮은 가격 대비 높은 계산 능력을 제공하기 때문에 그래프 응용에서 수행 시간을 개선하기 위해 널리 활용되고 있다. 본 논문에서는 GPU 환경에서 CUDA를 사용하여 그래프의 유사도를 측정하기 위한 효율적인 병렬 알고리즘을 제안한다. 제안된 알고리즘의 평가를 위해 CPU 기반 알고리즘과 비교하였으며 실험적 결과를 통하여 제안된 방법이 성능과 효율성에서 상당한 개선이 있음을 보인다. 또한 그래프의 크기가 클수록 제안된 알고리즘의 성능이 더 개선됨을 보인다.