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

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

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 코어 스톨 상태는 연산 자원 활용률 저하, 낮은 프로그램 병렬성, 높은 메모리 요청, 그리고 구조적 해저드에 의해 각각 유발된다.

제한된 메모리를 가진 GPU를 이용한 효율적인 그래프 알고리즘 처리 기법 (An Efficient Graph Algorithm Processing Scheme using GPUs with Limited Memory)

  • 송상호;이현병;최도진;임종태;복경수;유재수
    • 한국콘텐츠학회논문지
    • /
    • 제22권8호
    • /
    • pp.81-93
    • /
    • 2022
  • 최근 대용량 그래프의 반복 처리를 위하여 GPU를 이용하는 연구가 진행되고 있다. 메모리가 제한된 GPU를 이용하여 대용량 그래프를 처리하기 위해서는 그래프를 서브 그래프로 분할한 후 서브 그래프들을 스케줄링해서 처리해야 한다. 그러나 활성 정점에 따라 서브 그래프가 처리되기 때문에 그래프 처리 과정 속에서 불필요한 데이터 전송이 반복된다. 본 논문에서는 메모리가 제한된 GPU 환경에서 효율적인 그래프 알고리즘 처리 기법을 제안하고 성능 평가를 수행한다. 제안하는 기법은 그래프 차등 서브 그래프 스케줄링 방법과 그래프 분할 방법으로 구성된다. 대용량 그래프 분할 방법은 GPU에서 효율적으로 처리할 수 있도록 대용량 그래프를 서브 그래프로 분할할 수 있는 방법을 결정한다. 차등 서브그래프 스케줄링 방법은 GPU에서 처리하는 서브그래프를 스케줄링하여 반복적으로 사용되는 HOST-GPU 간의 데이터 중복 전송을 줄인다. 다양한 그래프 처리 알고리즘들의 성능 평가를 수행함으로써 제안하는 기법은 기존 분할 기법 대비 170%, 기존 처리 기법 대비 268% 향상되었다.

대규모 신경회로망 분산 GPU 기계 학습을 위한 Caffe 확장 (Extending Caffe for Machine Learning of Large Neural Networks Distributed on GPUs)

  • 오종수;이동호
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제7권4호
    • /
    • pp.99-102
    • /
    • 2018
  • Caffe는 학술 연구용으로 널리 사용되는 신경회로망 학습 소프트웨어이다. 신경회로망 구조 결정에서 가장 중요한 요소에 GPU 기억 용량이 포함된다. 예를 들어 많은 객체 검출 소프트웨어는 신경회로망이 12GB 이하의 기억 용량을 사용하게 하여 하나의 GPU에 적합하게 설계되어 있다. 본 논문에서는 큰 신경회로망을 두 개 이상의 GPU에 분산 저장하여 12GB 이상의 기억 용량을 사용할 수 있게 Caffe를 확장하였다. 확장된 소프트웨어를 검증하기 위하여 3개 GPU를 가진 PC에서 최신 객체 검출 소프트웨어의 배치 크기에 따른 학습 효율을 실험하였다.

GPU 컨테이너 동시 실행에 따른 응용의 간섭 측정 프레임워크 설계 (A design of GPU container co-execution framework measuring interference among applications)

  • 김세진;김윤희
    • KNOM Review
    • /
    • 제23권1호
    • /
    • pp.43-50
    • /
    • 2020
  • 범용 그래픽 처리 장치(General Purpose Graphics Processing Unit, GPGPU)는 최근 고성능 컴퓨팅에서 중요한 역할을 함으로써, 여러 클라우드 서비스 공급업체들은 GPU 서비스를 제공하기 시작했다. 컨테이너를 사용하는 클라우드 환경에서 대부분의 클러스터 오케스트레이션 플랫폼은 정수 개의 GPU를 작업에 할당하고 다른 작업과 이를 공유하는 것을 허용하지 않는다. 이 경우 작업이 GPU에서 코어 및 메모리 등 자원이 집중적으로 필요하지 않다면 GPU 노드의 리소스 사용률이 저하될 수 있다. GPU 가상화는 응용의 동시 수행을 가능하게 하며 자원을 공유할 수 있는 기회를 제공한다. 하지만 응용의 동시 수행 성능은 동시 수행되는 응용의 특성과 노드 안에서 자원 경쟁으로 인한 간섭에 따라 달라질 수 있다. 본 논문은 컨테이너 오케스트레이션 플랫폼인 쿠버네티스(Kubernetes)를 기반으로 다중 서버 생성 및 실행을 통하여 GPU를 공유함으로써 발생할 수 있는 간섭을 측정하기 위한 프레임워크를 제안한다. 본 프레임워크를 통해 다양한 스케줄링 방법으로 GPU에서 여러 작업을 실행함으로써 이에 따른 성능 변화를 조사하였으며, 이를 통해 GPU 메모리 사용량 및 컴퓨팅 리소스만 고려해서는 최적의 스케줄링을 할 수 없음을 보인다. 마지막으로 해당 프레임워크를 사용하여 응용들의 동시 실행에 따라 발생한 간섭을 측정한다.

Evaluation of GPU Computing Capacity for All-in-view GNSS SDR Implementation

  • Yun Sub, Choi;Hung Seok, Seo;Young Baek, Kim
    • Journal of Positioning, Navigation, and Timing
    • /
    • 제12권1호
    • /
    • pp.75-81
    • /
    • 2023
  • In this study, we design an optimized Graphics Processing Unit (GPU)-based GNSS signal processing technique with the goal of designing and implementing a GNSS Software Defined Receiver (SDR) that can operate in real time all-in-view mode under multi-constellation and multi-frequency signal environment. In the proposed structure the correlators of the existing GNSS SDR are processed by the GPU. We designed a memory structure and processing method that can minimize memory access bottlenecks and optimize the GPU memory resource distribution. The designed GNSS SDR can select and operate only the desired GNSS or desired satellite signals by user input. Also, parameters such as the number of quantization bits, sampling rate, and number of signal tracking arms can be selected. The computing capability of the designed GPU-based GNSS SDR was evaluated and it was confirmed that up to 2400 channels can be processed in real time. As a result, the GPU-based GNSS SDR has sufficient performance to operate in real-time all-in-view mode. In future studies, it will be used for more diverse GNSS signal processing and will be applied to multipath effect analysis using more tracking arms.

Parallel Implementation of Scrypt: A Study on GPU Acceleration for Password-Based Key Derivation Function

  • SeongJun Choi;DongCheon Kim;Seog Chung Seo
    • Journal of information and communication convergence engineering
    • /
    • 제22권2호
    • /
    • pp.98-108
    • /
    • 2024
  • Scrypt is a password-based key derivation function proposed by Colin Percival in 2009 that has a memory-hard structure. Scrypt has been intentionally designed with a memory-intensive structure to make password cracking using ASICs, GPUs, and similar hardware more difficult. However, in this study, we thoroughly analyzed the operation of Scrypt and proposed strategies to maximize computational parallelism in GPU environments. Through these optimizations, we achieved an outstanding performance improvement of 8284.4% compared with traditional CPU-based Scrypt computations. Moreover, the GPU-optimized implementation presented in this paper outperforms the simple GPU-based Scrypt processing by a significant margin, providing a performance improvement of 204.84% in the RTX3090. These results demonstrate the effectiveness of our proposed approach in harnessing the computational power of GPUs and achieving remarkable performance gains in Scrypt calculations. Our proposed implementation is the first GPU implementation of Scrypt, demonstrating the ability to efficiently crack Scrypt.

다중 GPU기반 홀로그램 생성을 위한 병렬처리 성능 최적화 기법 (An Optimization Method for Hologram Generation on Multiple GPU-based Parallel Processing)

  • 국중진
    • 스마트미디어저널
    • /
    • 제8권2호
    • /
    • pp.9-15
    • /
    • 2019
  • 홀로그램의 생성을 위한 연산은 포인트 클라우드의 규모에 따라 연산량이 기하급수적으로 증가하기 때문에 최근에는 다중의 GPU를 기반으로 CUDA 또는 OpenCL 라이브러리를 활용한 병렬처리가 이루어지고 있다. GPU기반의 병렬처리를 위한 CUDA 커널은 GPU의 코어 개수와 메모리 크기를 고려하여 쓰레드(thread), 블록(block), 그리드(grid)를 구성해야 하며, 다중 GPU 환경인 경우 GPU의 개수에 따른 그리드, 블록, 또는 쓰레드 단위의 분산처리가 필요하다. 본 논문에서는 CGH 생성에 대한 성능평가를 위해 포인트 클라우드의 포인트 개수를 10~1,000,000개 범위에서 점진적으로 증가시키면서 CPU, 단일 GPU, 다중 GPU 환경에서 연산 속도를 비교해 보았으며, 다중 GPU 환경에서 CGH(Computer Generated Hologram) 생성 연산을 가속화하기 위한 CUDA 기반의 병렬처리 과정에서 요구되는 메모리 구조 설계와 연산 방법을 제안한다.

범용 그래픽 처리 장치의 메모리 설계를 위한 그래픽 처리 장치의 메모리 특성 분석 (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의 성능은 크게 향상 될 것이 분명하다. 본 논문에서는 다중 레벨 캐쉬 구조에 따른 그래픽 처리 장치의 성능을 다양한 벤치마크 프로그램을 통하여 정량적으로 분석하고자 한다.

CUDA를 이용한 웹캠 영상의 색상 형식 변환 최적화 (Optimization of Color Format Conversion of WebCam Images Using the CUDA)

  • 김진우;정윤혜;박진홍;박용진;한탁돈
    • 한국게임학회 논문지
    • /
    • 제11권1호
    • /
    • pp.147-157
    • /
    • 2011
  • 웹캠은 영상 데이터의 전송시간을 줄이기 위해 메모리 정렬은 고려하지 않는다. 메모리 정렬이 되지 않은 영상 데이터는 GPU에서 처리하기 부적합하며 고속의 영상처리를 위해서는 GPU에서 메모리 최적화가 가능한 색상 형식으로 변환되어야 한다. 본 논문은 웹캠 영상의 색상 형식 변환을 NVIDIA CUDA를 이용하여 가속하는 최적화 기법을 제안한다. 메모리 접근과 쓰레드 구성에 대한 최적화를 진행하였고, 제안하는 구조의 성능 측정과 최적화 정도를 분석하기 위해 GPU 메모리와 연산의 성능을 제한하여 실험하였다. 그 결과 최적화 방법에 따라 최대 68% 이상 성능이 향상됐다.

그래픽 프로세서를 이용한 탄성파 수치모사의 계산속도 향상 (Acceleration of computation speed for elastic wave simulation using a Graphic Processing Unit)

  • Nakata, Norimitsu;Tsuji, Takeshi;Matsuoka, Toshifumi
    • 지구물리와물리탐사
    • /
    • 제14권1호
    • /
    • pp.98-104
    • /
    • 2011
  • 탐사 지구물리학에서 수치 모사는 지하매질에서의 탄성파 전파 현상을 이해하는데 중요한 통찰력을 제공한다. 탄성파 모사는 음향파 근사에 의한 수치 모사보다 계산시간이 많이 소요되지만 전단응력 성분을 포함하여 보다 현실적인 파동의 모사를 가능하게 한다. 그러므로 탄성파 모사는 탄성체의 반응을 탐사하는데 적합하다고 할 수 있다. 계산 시간이 길다는 단점을 극복하기 위해 본 논문에서는 그래픽 프로세서(GPU)를 이용하여 탄성파 수치 모사 시간을 단축하고자 하였다. GPU는 많은 수의 프로세서와 광대역 메모리를 갖고 있기 때문에 병렬화된 계산 아카텍쳐에서 사용할 수 있는 장점이 있다. 본 연구에서 사용한 GPU 하드웨어는 NVIDIA Tesla C1060으로 240개의 프로세서로 구성되어 있으며 102 GB/s의 메모리 대역폭을 갖고 있다. NVIDIA에서 개발된 병렬계산 아카텍쳐인 CUDA를 사용할 수 있음에도 불구하고 계산효율을 상당히 향상시키기 위해서는 GPU 장치의 여러 가지 다양한 메모리의 사용과 계산 순서를 최적화해야만 한다. 본 연구에서는 GPU 시스템에서 시간영역 유한차분법을 이용하여 2차원과 3차원 탄성과 전파를 수치 모사하였다. 파동전파 모사에 가장 널리 사용되는 유한차분법 중의 하나인 엇갈린 격자기법을 채택하였다. 엇갈린 격자법은 지구물리학 분야에서 수치 모델링을 위해 사용하기에 충분한 정확도를 갖고 있는 것으로 알려져 있다. 본 논문에서 제안한 모델링기법은 자료 접근 시간을 단축하기 위해 GPU 장치를 메모리 사용을 최적화하여 가능한 더 빠른 메모리를 사용한다. 이점이 GPU를 이용한 계산의 핵심 요소이다. 하나의 GPU 장치를 사용하고 메모리 사용을 최적화함으로써 단일 CPU를 이용할 경우보다 2차원 모사에서는 14배 이상, 3차원에서는 6배 이상 계산시간을 단축할 수 있었다. 세 개의 GPU를 사용한 경우에는 3차원 모사에서 계산효율을 10배 향상시킬 수 있었다.