• 제목/요약/키워드: CUDA Implementation

검색결과 67건 처리시간 0.031초

4-러시안 알고리즘의 CUDA 구현 (CUDA Implementation for the Four-Russian Algorithm)

  • 김영호;정주희;강대웅;심정섭;김민호;박수준;임명은;정호열
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • pp.261-264
    • /
    • 2012
  • 상수 크기의 알파벳 ${\Sigma}$에 대해 길이가 각각 m, n인 두 문자열 X와 Y의 편집거리는 X를 Y로 변환하기 위해 필요한 최소 편집연산의 수로 정의된다. 두 문자열의 편집거리는 잘 알려진 동적프로그래밍을 이용하여 O(mn) 시간과 공간에 계산할 수 있으며, 4-러시안 알고리즘을 이용해도 계산할 수 있다. 4-러시안 알고리즘은 블록 크기를 상수 t라 할 때, 전처리 단계에서 $O\((3{\mid}{\Sigma}{\mid})^{2t}t^2\)$ 시간과 $O\((3{\mid}{\Sigma}{\mid})^{2t}t^2\)$ 공간이 필요하며, 계산 단계에서 O(mn/t) 시간과 O(mn) 공간을 이용하여 편집거리를 계산하는 알고리즘이다. 본 논문에서는 4-러시안 알고리즘의 계산 단계를 CUDA를 이용하여 구현하고 실험을 통해 CPU 기반의 순차적인 수행시간과 GPU 기반의 병렬적인 수행시간의 비교결과를 제시한다. 본 논문의 병렬알고리즘은 m/t개의 쓰레드를 사용하여 O(m+n) 시간에 편집거리를 계산한다. GPU 기반의 알고리즘이 CPU 기반의 알고리즘 보다 t=1일 때 약 10배 빠르고, t=2일 때 약 3배 빠른 결과를 보였다.

향상된 트래킹 시스템과 실시간 수성 사인펜을 위한 사실적 드로잉 (Improved Tracking System and Realistic Drawing for Real-Time Water-Based Sign Pen)

  • 허혜정;이주영
    • 한국컴퓨터정보학회논문지
    • /
    • 제19권2호
    • /
    • pp.125-132
    • /
    • 2014
  • 본 논문에서는 저가의 웹 카메라를 사용하여 마커 없이 손끝과 붓을 트래킹 하는 시스템을 제시한다. 트래킹 시스템은 CUDA를 사용하여 병렬처리를 적용했다. 이 트래킹 시스템은 노트북이나 데스크탑과 같은 환경에서 수행이 가능하고, 실시간 애플리케이션에 사용 가능한 성능을 가진다. 또한 본 논문에서는 사적인 수성 사인펜 드로잉 모델을 제시하고 구현된 결과를 보여준다. 제안하는 시스템은 손끝과 붓을 트래킹 하는 저가의 실시간 트래킹 시스템으로 사실적 드로잉 애플리케이션과 연동하여 미래 최첨단 교육 환경 구축의 테스트베드로의 활용을 기대한다.

유전 알고리즘과 게임 트리를 병합한 오목 인공지능 설계 및 GPU 기반 병렬 처리 기법 (Design of Omok AI using Genetic Algorithm and Game Trees and Their Parallel Processing on the GPU)

  • 안일준;박인규
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제37권2호
    • /
    • pp.66-75
    • /
    • 2010
  • 본 논문에서는 GPU(graphics processing unit)를 이용하여 오목의 인공지능 알고리즘 연산을 고속으로 수행하기 위한 효율적인 알고리즘 설계와 구현 방법을 제안한다. 본 논문에서 제안하는 게임 인공지능은 최소-최대 게임 트리(min-max game tree)와 유전 알고리즘(genetic algorithm)의 협업적 구조로 설계된다. 게임 트리와 유전 알고리즘의 평가함수(evaluation function) 부분은 많은 계산 량을 소모하지만 해 공간(solution space)의 수많은 후보 벡터에 대해 독립적으로 수행되기 때문에 본 논문에서는 이를 GPU 상에서의 대량 병렬처리를 통해 수행한다. NVIDIA CUDA(compute unified device architecture)환경에서의 실제 구현을 통해 CPU에서의 처리에 비해 게임 트리는 400배 이상의 수행 속도의 향상을, 유전 알고리즘은 300배 이상의 수행 속도의 향상을 각각 보였다. 본 논문에서는 스레드(thread)의 넘침(overflow)을 피하고 보다 효과적인 해 공간 탐색을 위해, 게임 트리를 이용하여 근방의 몇 단계까지 전역 탐색(full search)을 수행한 후 이후 단계는 유전 알고리즘을 이용하여 선별 탐색을 수행하는 협업적 인공지능을 제안한다. 다양한 실험 결과를 통해 제안하는 알고리즘은 게임의 인공지능을 향상시키고 게임의 규칙으로부터 주어진 시간 내에 문제를 해결할 수 있음을 보인다.

Efficient Parallel Block-layered Nonbinary Quasi-cyclic Low-density Parity-check Decoding on a GPU

  • Thi, Huyen Pham;Lee, Hanho
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제6권3호
    • /
    • pp.210-219
    • /
    • 2017
  • This paper proposes a modified min-max algorithm (MMMA) for nonbinary quasi-cyclic low-density parity-check (NB-QC-LDPC) codes and an efficient parallel block-layered decoder architecture corresponding to the algorithm on a graphics processing unit (GPU) platform. The algorithm removes multiplications over the Galois field (GF) in the merger step to reduce decoding latency without any performance loss. The decoding implementation on a GPU for NB-QC-LDPC codes achieves improvements in both flexibility and scalability. To perform the decoding on the GPU, data and memory structures suitable for parallel computing are designed. The implementation results for NB-QC-LDPC codes over GF(32) and GF(64) demonstrate that the parallel block-layered decoding on a GPU accelerates the decoding process to provide a faster decoding runtime, and obtains a higher coding gain under a low $10^{-10}$ bit error rate and low $10^{-7}$ frame error rate, compared to existing methods.

CUDA 라이브러리를 이용한 위성영상 병렬처리 : NDVI 연산을 중심으로 (Parallel Processing of Satellite Images using CUDA Library: Focused on NDVI Calculation)

  • 이강훈;조명희;이원희
    • 한국지리정보학회지
    • /
    • 제19권3호
    • /
    • pp.29-42
    • /
    • 2016
  • 원격탐사는 넓은 지역을 직접 접촉하지 않고 정보를 취득할 수 있고 다양한 분야에 적용할 수 있음으로써 급속히 발전하게 되었다. 이에 따라 위성의 제원 또한 원격탐사의 발전과 함께 급속한 발전을 이루게 되었다. 이러한 이유로 여러 분야에서 활용에 관한 연구가 활발히 이루어지고 있다. 현재 활용에 관한 연구는 활발히 이루어지고 있지만, 자료처리에 관련된 연구가 부족한 실정이다. 예전보다 인공위성의 제원이 발전하면서 많은 양의 정보 획득이 가능해진 것과 동시에 데이터 크기 또한 매우 커졌다. 이는 과거에 비해 자료의 처리속도가 저하된다는 단점이 존재한다. 따라서 본 논문에서는 병렬 처리의 한 가지 기법인 NVIDIA에서 제공하고 있는 CUDA (Compute Unified Device Architecture) 라이브러리를 활용하여 위성영상 자료처리 성능의 최적화를 목적으로 하고 있다. 본 연구의 순서는 다음과 같다. 다목적실용위성(Korea Multi-Purpose Satellite, KOMPSAT)의 영상을 크기를 기준으로 5가지 Type으로 나눈다. 이렇게 나누어진 영상을 원격탐사 분야의 한 가지 방법인 NDVI (Normalized Difference Vegetation Index)로 구현한다. 이때 CPU (Central Processing Unit, 중앙처리장치) 기반과 GPU (Graphic Processing Unit, 그래픽처리장치) 기반의 두 가지 방법과 상용 소프트웨어인 ArcMap을 이용하여 NDVI를 구현한다. 그리고 동일한 영상 유무를 판단하기 위해 구현된 결과 영상들을 히스토그램과 시각적으로 비교하고 CPU 버전과 GPU 버전의 처리속도를 비교 분석하였다. 연구결과 CPU 버전과 GPU 버전의 결과 영상은 ArcMap으로 구현한 영상과 시각적 그리고 히스토그램 비교를 통해 같은 결과를 나타내어 NDVI 코드는 올바르게 구현되었으며, 처리속도는 CPU보다 GPU가 약 5배 정도 빠른 것으로 확인하였다. 본 연구에서 병렬 처리의 한 기법인 CUDA 라이브러리를 활용하여 위성영상 자료처리 성능을 향상시킬 수 있었으며, 향후 NDVI와 같은 단순한 픽셀 연산 이외에도 다양한 원격탐사 기법의 적용이 필요할 것으로 사료된다.

실사 컬러 영상을 이용한 홀로그램 비디오 생성 시스템 구현 (A New System Implementation for Generating Holographic Video using Natural Color Scene)

  • 서영호;이윤혁;구자명;김우열;김보라;김동욱
    • 방송공학회논문지
    • /
    • 제18권2호
    • /
    • pp.149-158
    • /
    • 2013
  • 본 논문에서는 실사 컬러 영상을 이용하여 디지털 컬러 홀로그램 비디오를 생성하는 시스템을 제안한다. 전체 시스템은 크게 영상의 획득을 위한 카메라 시스템과 각종 영상처리를 위한 소프트웨어로 구성된다. 카메라 시스템은 수직리그에 RGB 카메라와 깊이 카메라로 장착한 형태이고, 두 이종 영상 데이터의 시점을 일치시키기 위해서 파장에 따라 투과율이 다른 콜드 미러(cold mirror)를 이용하였다. 소프트웨어는 획득된 영상을 가공하고 서비스하기 위한 엔진들과 GPGPU(general-purpose computing on graphics processing unit)를 이용한 컴퓨터 생성 홀로그램(computer-generated hologram, CGH)으로 구성된다. 각 알고리즘들은 C/C++ 및 CUDA로 구현되었고, 각 엔진들은 LabView 환경에서 통합되었다. 제안한 시스템은 약 6K개의 광원에 대해서 초당 약 10프레임의 컬러 홀로그램을 생성할 수 있었다.

A Design and Implementation of Software Defined Radio for Rapid Prototyping of GNSS Receiver

  • Park, Kwi Woo;Yang, Jin-Mo;Park, Chansik
    • Journal of Positioning, Navigation, and Timing
    • /
    • 제7권4호
    • /
    • pp.189-203
    • /
    • 2018
  • In this paper, a Software Defined Radio (SDR) architecture was designed and implemented for rapid prototyping of GNSS receiver. The proposed SDR can receive various GNSS and direct sequence spread spectrum (DSSS) signals without software modification by expanded input parameters containing information of the desired signal. Input parameters include code information, center frequency, message format, etc. To receive various signal by parameter controlling, a correlator, a data bit extractor and a receiver channel were designed considering the expanded input parameters. In navigation signal processing, pseudorange was measured based on Coordinated Universal Time (UTC) and appropriate navigation message decoder was selected by message format of input parameter so that receiver position can be calculated even if SDR is set up various GNSS combination. To validate the proposed SDR, the software was implemented using C++, CUDA C based on GPU and USRP. Experimentation has confirmed that changing the input parameters allows GPS, GLONASS, and BDS satellite signals to be received. The precision of the position from implemented SDR were measured below 5 m (Circular Error Probability; CEP) for all scenarios. This means that the implemented SDR operated normally. The implemented SDR will be used in a variety of fields by allowing prototyping of various GNSS signal only by changing input parameters.

2대의 Kinect 카메라를 이용한 3차원 물체의 복원 구현 (Implementation of 3D Object Reconstruction using a Pair of Kinect Cameras)

  • 신동원;호요성
    • 한국방송∙미디어공학회:학술대회논문집
    • /
    • 한국방송공학회 2014년도 하계학술대회
    • /
    • pp.135-138
    • /
    • 2014
  • 본 논문에서는 2대의 Kinect 카메라를 이용하여 실세계의 3차원 객체에 대한 복원을 수행하는 방법을 제안한다. 먼저 깊이 가중치가 추가된 계층적 결합형 양방향 필터를 이용하여 Kinect로부터 얻은 원본 깊이 영상을 보정한다. 그리고 카메라 캘리브레이션을 이용하여 카메라의 내부 파라미터와 외부 파라미터를 획득한다. 이를 이용해 3차원 워핑을 수행하여 각 시점의 데이터를 3차원 공간에 점군 모델로 복원하고 표면 모델링 방법을 이용하여 3차원 객체의 매끄러운 표면 모델을 생성한다. 실시간에 가까운 속도를 내기 위해서 계층적 결합형 양방향 필터와 3차원 워핑을 병렬 처리 프레임워크인 CUDA로 구현하여 고속화하였다. 실험을 통해 분리된 각 시점에서의 깊이 정보를 하나의 통합된 3차원 공간에 복원할 수 있었고 초당 5 fps의 속도로 동작하는 것을 확인하였다.

  • PDF

CPU-GPU간 긴밀성을 위한 효율적인 공유메모리 접근 방법과 검증 시스템 구현 (Implementation of Integrated CPU-GPU for Efficient Uniform Memory Access Method and Verification System)

  • 박현문;권진산;황태호;김동순
    • 대한임베디드공학회논문지
    • /
    • 제11권2호
    • /
    • pp.57-65
    • /
    • 2016
  • In this paper, we propose a system for efficient use of shared memory between CPU and GPU. The system, called Fusion Architecture, assures consistency of the shared memory and minimizes cache misses that frequently occurs on Heterogeneous System Architecture or Unified Virtual Memory based systems. It also maximizes the performance for memory intensive jobs by efficient allocation of GPU cores. To test between architectures on various scenarios, we introduce the Fusion Architecture Analyzer, which compares OpenMP, OpenCL, CUDA, and the proposed architecture in terms of memory overhead and process time. As a result, Proposed fusion architectures show that the Fusion Architecture runs benchmarks 55% faster and reduces memory overheads by 220% in average.

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.