• 제목/요약/키워드: General Purpose computing on Graphics Processing Units(GPGPU)

검색결과 22건 처리시간 0.025초

클라우드 환경에서 GPU 연산으로 인한 가상머신의 성능 저하를 완화하는 GPGPU 작업 관리 기법 (GPGPU Task Management Technique to Mitigate Performance Degradation of Virtual Machines due to GPU Operation in Cloud Environments)

  • 강지훈;길준민
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제9권9호
    • /
    • pp.189-196
    • /
    • 2020
  • 최근 클라우드 환경에서는 고성능 연산이 가능한 GPU(Graphics Processing Unit) 장치를 가상머신에게 적용한 GPU 클라우드 컴퓨팅 기술이 많이 사용되고 있다. 클라우드 환경에서 가상머신에게 할당된 GPU 장치는 대규모 병렬 처리를 통해 CPU보다 더 빠르게 연산을 수행할 수 있으며, 이로 인해 다양한 분야의 고성능 컴퓨팅 서비스들을 클라우드 환경에서 운용할 때 많은 이점을 얻을 수 있다. 클라우드 환경에서 GPU 장치는 가상머신의 성능 향상에 많은 도움을 주지만 가상머신의 CPU 사용 시간을 기반으로 작동하는 가상머신 스케줄러에서는 GPU 장치의 사용 시간이 고려되지 않아 다른 가상머신들의 성능에 영향을 미친다. 본 논문에서는 클라우드 환경에서 가상머신에게 GPU를 할당할 때 많이 사용되는 직접 통로기반 GPU 가상화 환경에서 GPGPU(General-Purpose computing on Graphics Processing Units) 작업을 수행하는 가상머신으로 인한 다른 가상머신들의 성능 저하 현상을 검증하고 분석하며, 이를 해결하기 위한 가상머신의 GPGPU 작업 관리 기법을 제안한다.

SIMT 구조 기반 GPGPU를 이용한 고속 Rasterizer 구현 (Implememtation of Fast Rasterizer processing using GPGPU based on SIMT structure)

  • 김치용
    • 전기전자학회논문지
    • /
    • 제21권3호
    • /
    • pp.276-279
    • /
    • 2017
  • 본 논문에서는 디스플레이 장치의 화면을 픽셀 단위로 구성하는 Rasterizer의 가속화를 위하여 SIMT구조의 GPGPU(General Purpose computing on Graphics Processing Units)를 사용하였다. GPU는 많은 수의 ALU를 가지고 있고, 병렬처리하기 때문에 연산처리가 매우 빠르다. 따라서 본 논문에서는 연산을 순차적으로 수행하는 CPU와 연산을 병렬적으로 수행하는 GPU를 이용하여 3D그래픽스 모델을 생성하는 rasterizer를 구현했다. 한 프레임 생성 시 Intel CPU를 이용한 rasterizer보다 본 논문에서 제안하는 rasterizer가 1.45배 좋은 성능을 확인하였다.

범용 그래픽 처리 장치의 메모리 설계를 위한 그래픽 처리 장치의 메모리 특성 분석 (Analysis on Memory Characteristics of Graphics Processing Units for Designing Memory System of General-Purpose Computing on Graphics Processing Units)

  • 최홍준;김철홍
    • 스마트미디어저널
    • /
    • 제3권1호
    • /
    • pp.33-38
    • /
    • 2014
  • 소비전력 증가와 같은 문제점들로 인하여, 마이크로프로세서만으로는 컴퓨팅 시스템의 성능을 향상시키기 점점 어려워지고 있다. 이와 같은 상황에서, 대용량 병렬 연산에 특화된 그래픽 처리 장치를 활용하여 중앙 처리 장치가 담당하던 범용 작업을 수행하게 하는 범용 그래픽 처리 장치 기술이 컴퓨터 시스템의 성능을 개선시킬 수 있는 방안으로 주목을 받고 있다. 하지만, 그래픽스 관련 응용프로그램과 범용 응용프로그램의 특징은 매우 상이하기 때문에, 그래픽 처리 장치가 범용 응용프로그램을 수행하는 경우에는 많은 제약 사항으로 인하여 자신의 뛰어난 연산 자원을 활용하지 못하는 실정이다. 일반적으로 그래픽스 관련 응용프로그램에 비해 범용 응용프로그램은 메모리를 매우 많이 요청하기 때문에 범용 그래픽 처리 장치 기술을 효율적으로 활용하기 위해서는 메모리 설계가 매우 중요하다. 특히, 긴 접근 시간을 요구하는 외부 메모리 요청은 성능에 큰 오버헤드이다. 그러므로 외부 메모리로의 접근 횟수를 줄일 수 있는 다중 레벨 캐쉬 구조를 효율적으로 활용할 수 있다면, GPU의 성능은 크게 향상 될 것이 분명하다. 본 논문에서는 다중 레벨 캐쉬 구조에 따른 그래픽 처리 장치의 성능을 다양한 벤치마크 프로그램을 통하여 정량적으로 분석하고자 한다.

GPGPU 기반 조인 연산 병렬화 성능 비교 (Performance Comparison of Join Operations Parallelization by using GPGPU)

  • 이종섭;이상백;이규철
    • 데이타베이스연구회지:데이타베이스연구
    • /
    • 제34권3호
    • /
    • pp.28-44
    • /
    • 2018
  • 데이터베이스 시스템 관계 연산자 중에서 연산 비용이 가장 비싼 연산은 조인 연산이다. 일반적으로 CPU 기반의 조인 연산의 경우에는 하나의 코어를 사용하거나 많게는 16개 정도의 코어를 사용하여 병렬 처리를 해서 병렬화에 따른 성능 향상이 크지 않다. 이에 반해, GPGPU(General-Purpose computing on Graphics Processing Units)는 수천 개의 프로세싱 유닛을 통한 병렬 처리가 가능해서 조인 연산 수행 시간을 크게 단축할 수 있다. 본 논문에서는 GPGPU 기반에서 조인 연산 병렬화를 구현하기 위해 NVIDIA의 CUDA SDK가 사용되며, CPU 기반과 GPGPU 기반에서의 조인 연산 성능을 측정한다. 사용되는 조인 연산은 NLJ (Nested Loop Join), SMJ (Merge Join), HJ (Hash Join)이며, GPGPU 장비는 TITAN Xp, GTX 1080 Ti 및 GTX 1080을 사용한다. CPU 기반과 GPGPU 기반의 성능을 비교하고, GPGPU 기반의 조인 연산과 이전 연구의 성능과의 성능을 비교한다. 마지막으로, 실험 결과는 GPGPU 기반의 성능이 CPU 기반의 성능보다 6~328 배 빠른 성능을 보였고 향후 연구의 방향성에 대하여 토의한다.

GPGPU를 이용한 영상 품질 측정 프로그램의 가속화 연구 (Research of accelerating method of video quality measurement program using GPGPU)

  • 이성욱;변기범;김기수;홍지만
    • 스마트미디어저널
    • /
    • 제5권4호
    • /
    • pp.69-74
    • /
    • 2016
  • 최근 그래픽 처리 장치(GPU)의 발전과 개발자 친화적인 GPGPU(General-Purpose computing on Graphics Processing Units)기술의 발전으로 인해 그래픽 처리 장치를 활용한 병렬 컴퓨팅의 사용이 확대되고 있다. 이를 통해 과학, 의학, 공학 등 많은 분야에 걸쳐 기존 CPU 컴퓨팅 환경보다 더 빠른 처리속도로 결과 값을 얻어 낼 수 있게 되었다. 본 논문은 CPU 기반 컴퓨팅과 GPU 기반 컴퓨팅의 연산처리 속도의 차이의 비교를 위해 기존 CPU 기반으로 구현된 영상 품질 측정 프로그램을 NVIDIA사의 GPGPU기술을 사용할 수 있도록 프로그램을 포팅한다. 포팅한 프로그램을 바탕으로 GPGPU기술을 통한 프로그램의 가속화에 대하여 연구한다. 가속화된 프로그램은 CPU 기반의 프로그램보다 약 1.83배 정도의 실행 속도를 가진다. 또한 CPU 기반의 프로그램을 GPU 기반으로 수정할 때 생기는 제약과 문제점에 대해서도 기술한다.

모바일 멀티 코어 GP-GPU를 이용한 H.264/AVC 디코더 구현 (Implementation of IQ/IDCT in H.264/AVC Decoder Using Mobile Multi-Core GPGPU)

  • 김동한;이광엽;정준모
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2010년도 추계학술대회
    • /
    • pp.321-324
    • /
    • 2010
  • 최근 멀티코어 프로세서의 이용이 증가함에 따라, 멀티코어를 이용한 다양한 병렬화 기법들이 제안되고 있다. 모바일 환경에서도 멀티코어 구조를 적용한 프로세서들이 등장하면서 병렬화 기법들이 연구되고 있다. 하지만, 아직까지 모바일 환경에서의 CPU의 성능은 한계가 있다. 이를 병렬처리와 실수 연산이 뛰어난 GPGPU(General-Purpose computing in Graphics Processing Units)를 멀티코어 구조로 설계함으로써 다른 전용 하드웨어의 추가 없이 성능을 향상 시킬 수 있다. 본 논문에서는 모바일 환경에 적합하게 설계된 멀티코어 GPGPU를 이용하여 H.264 디코더의 Inverse Quantization, Inverse DCT, Color Space Conversion 모듈을 구현하였다. 멀티코어 GPGPU를 이용한 H.264 전체 시스템 동작 시 50%의 성능 향상이 있었다.

  • PDF

Performance Improvement of Web Service Based on GPGPU and Task Queue

  • Kim, Changsu;Kim, Kyunghwan;Jung, Hoekyung
    • Journal of information and communication convergence engineering
    • /
    • 제19권4호
    • /
    • pp.257-262
    • /
    • 2021
  • Providing web services to users has become expensive in recent times. For better web services, a web server is provided with high-performance technology. To achieve great web service experiences, tools such as general-purpose graphics processing units (GPGPUs), artificial intelligence, high-performance computing, and three-dimensional simulation are widely used. However, graphics processing units (GPUs) are used in high-speed operations and have limited general applications. In this study, we developed a task queue in a GPU to improve the performance of a web service using a multiprocessor and studied how to receive and process user requests in bulk. We propose the use of a GPGPU-based task queue to process user requests more than GPGPU based a central processing unit thread, and to process more GPU threads on task queue at about 136% to 233%, and proved that the proposed method is effective for web service.

GPGPU 기반 Convolutional Neural Network의 효율적인 스레드 할당 기법 (Efficient Thread Allocation Method of Convolutional Neural Network based on GPGPU)

  • 김민철;이광엽
    • 예술인문사회 융합 멀티미디어 논문지
    • /
    • 제7권10호
    • /
    • pp.935-943
    • /
    • 2017
  • 많은 양의 데이터 기반으로 학습하는 neural network 중 이미지 분류나 음성 인식 등에 사용되어 지고 있는 CNN(Convolution neural network)는 현재까지도 우수한 성능을 가진 구조로 계속적으로 발전되고 있다. 제한된 자원을 가진 임베디드 시스템에서 활용하기에는 많은 어려움이 있다. 그래서 미리 학습된 가중치를 사용하지만 여전히 한계점이 있기 때문에 이를 해결하기 위해 GPU의 범용 연산을 위해서 사용하는 GP-GPU(General-Purpose computing on Graphics Processing Units)를 활용하는 추세다. CNN은 단순하고 반복적인 연산을 수행하기 때문에 SIMT(Single Instruction Multiple Thread)기반의 GPGPU에서 스레드 할당과 활용 방법에 따라 연산 속도가 많이 달라진다. 스레드로 Convolution 연산과 Pooling 연산을 수행할 때 쉬어야 하는 스레드가 발생하는 데 이러한 문제를 해결하기 위해 남은 스레드가 다음 피쳐맵과 커널 계산에 활용되는 방법을 사용함으로써 연산 속도를 증가시켰다.

Study of Cache Performance on GPGPU

  • Choi, Kyu Hyun;Kim, Seon Wook
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제4권2호
    • /
    • pp.78-82
    • /
    • 2015
  • General-purpose graphics processing units (GPGPUs) provide tremendous computational and processing power. Despite the latency hiding mechanism, a GPU architecture requires high memory bandwidth and lower latency between computational units and the memory system. For this reason, the current GPU architecture has private L1 caches in each core and a shared L2 cache to increase performance by reducing memory latency. But in some cases, this CPU-like cache design is not suitable for GPGPUs. In this paper, we analyze detailed cache performance related to GPGPU application characteristics, and suggest technical alternatives for the GPGPU architecture as future work.

GPGPU와 Combined Layer를 이용한 필기체 숫자인식 CNN구조 구현 (Implementation of handwritten digit recognition CNN structure using GPGPU and Combined Layer)

  • 이상일;남기훈;정준모
    • 문화기술의 융합
    • /
    • 제3권4호
    • /
    • pp.165-169
    • /
    • 2017
  • CNN(Convolutional Nerual Network)는 기계학습 알고리즘 중에서도 이미지의 인식과 분류에 뛰어난 성능을 보이는 알고리즘 중 하나이다. CNN의 경우 간단하지만 많은 연산량을 가지고 있어 많은 시간이 소요된다. 따라서 본 논문에서는 CNN 수행과정에서 많은 처리시간이 소모되는 convolution layer와 pooling layer, fully connected layer의 연산수행을 SIMT(Single Instruction Multiple Thread)구조의 GPGPU(General-Purpose computing on Graphics Processing Units)를 통하여 병렬로 연산처리를 수행했다. 또한 convolution layer의 출력을 저장하지 않고 pooling layer의 입력으로 바로 사용함으로 메모리 접근횟수를 줄여 성능 향상을 기대했다. 본 논문에서는 이 실험검증을 위하여 MNIST 데이터 셋을 사용하였고 이를 통하여 제안하는 CNN 구조가 기존의 구조보다 12.38% 더 좋은 성능을 보임을 확인했다.