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

검색결과 964건 처리시간 0.027초

통합메모리 장치에서 CPU-GPU 데이터 전송성능 연구 (A Performance Study on CPU-GPU Data Transfers of Unified Memory Device)

  • 권오경;구기범
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제11권5호
    • /
    • pp.133-138
    • /
    • 2022
  • 최근 고성능컴퓨팅, 인공지능 분야에서 GPU 장치 사용이 일반화되고 있지만, GPU 프로그래밍은 여전히 어렵게 여겨진다. 특히 호스트(host) 메모리와 GPU 메모리를 별도로 관리하기 때문에 성능과 편의성 방면에서 연구가 활발히 진행되고 있다. 이에 따라 여려가지 CPU-GPU 메모리 전송 방법들이 연구되고 있다. 한편 CPU와 GPU 및 통합메모리(Unified memory) 등 하나의 실리콘 패키지로 묶는 SoC(System on a Chip) 제품들이 최근에 많이 출시되고 있다. 본 연구는 이러한 통합메모리 장치에서 CPU, GPU 장치간 데이터를 사용하고 전송시 성능관련 비교를 하고자 한다. 기존 CPU내 호스트 메모리와 GPU 메모리가 분리된 환경과는 다른 특징을 보여준다. 여기서는 통합메모리 장치인 NVIDIA SoC칩들과 NVIDIA SMX 기반 V100 GPU 카드에서 CPU-GPU 간 데이터 전송 프로그래밍 기법별로 성능비교를 한다. 성능비교를 위해 워크로드는 HPC 분야의 수치계산에서 자주 사용하는 2차원 행렬 전치 커널이다. 실험을 통해 CPU-GPU 메모리 전송 프로그래밍 방법별 GPU 커널 성능차이, 페이지 잠긴 메모리와 페이지 가능 메모리를 사용했을 경우 전송 성능차이, 전체(Overall) 성능비교, 마지막으로 워크로드 크기별 성능비교를 하였다. 이를 통해 통합메모리칩인 NVIDIA Xavier에서 I/O 캐시일관성 지원을 통해 SoC 칩내 통합메모리에 대한 이점을 극대화 할 수 있음을 확인할 수 있었다.

동적 그래프에서 GPU 기반의 점진적 연결 요소 처리 (GPU Based Incremental Connected Component Processing in Dynamic Graphs)

  • 김남영;최도진;복경수;유재수
    • 한국콘텐츠학회논문지
    • /
    • 제22권6호
    • /
    • pp.56-68
    • /
    • 2022
  • 최근 실시간 처리의 요구가 증가하면서 시간에 따라서 변화하는 동적 그래프에 관한 연구가 활발하게 진행되고 있다. 동적 그래프를 분석하기 위한 알고리즘의 하나로 연결 요소가 있다. GPU는 높은 메모리 대역폭, 연산 성능으로 대규모의 그래프 계산에 적합하다. 그러나 동적 그래프의 연결 요소를 GPU를 이용하여 처리할 때, GPU의 제한된 메모리로 인해 실제 그래프 처리 시 CPU와 GPU 간에 잦은 데이터 교환이 발생한다. 본 논문에서는 동적 그래프에서 GPU 기반의 효율적인 점진적 연결 요소 처리 기법을 제안한다. 제안하는 기법은 Weighted-Quick-Union 알고리즘을 기반으로 연결 요소 레이블에 구성 요소의 개수를 이용하여 연결 요소를 빠르게 계산한다. 또한, 재계산할 부분을 판별하여 GPU로 전송할 데이터를 최소화하여 대규모 그래프에 대하여 CPU와 GPU 간의 데이터 교환 횟수를 감소시킨다. 뿐만 아니라 GPU와 CPU 간에 데이터 전송 시간 낭비를 줄이기 위해 GPU와 CPU가 비동기로 실행하는 처리 구조를 제안한다. 실제 데이터 집합을 사용한 성능 평가를 통해 제안하는 기법의 우수성을 입증한다.

뇌혈관 추출과 대화형 가시화를 위한 다중 GPU기반 영상정합 (Multi GPU Based Image Registration for Cerebrovascular Extraction and Interactive Visualization)

  • 박성진;신영길
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제15권6호
    • /
    • pp.445-449
    • /
    • 2009
  • 본 논문에서는 조영전 CT 와 조영후 CTA 영상 의 움직임을 보정하기 위하여 연산에 효율적인 다중 GPU 기반 영상정합 기법을 제안한다. 제안방법은 크게 다중 GPU 기반 정합과 뇌혈관 가시화의 두 단계로 구성된다. 우선, 복셀기반정합을 수행하기 위하여 GPU 내부의 병렬성뿐 아니라 GPU 간 병렬성도 고려함으로써 유사도값을 계산한다. 그리고 나서 CTA 영상데이터에서 최적변환행렬에 의하여 변환된 CT 영상데이터를 다중 GPU를 이용하여 차감하고, 차감된 결과를 GPU 기반 볼륨렌더링기법을 이용하여 가시화한다. 본 논문에서 제안한 방법을 화질과 수행시간측면에서 기존방법에 대한 우수성을 나타내기 위하여 5쌍의 조영전 뇌 CT 영상과 조영후 뇌 CTA 영상데이터를 사용하여 비교하였다. 실험결과 제안방법은 뇌혈관이 잘 가시화되어 혈관질환을 정확히 진단할 수 있었다. 다중 GPU 기반 방법은 CPU 기반 방법에 비하여 11.6배, 단일 GPU 기반 방법에 비하여 1.4배 빠른 결과를 보여주었다.

통합 메모리를 사용하는 NVIDIA 파스칼 GPU에서의 CPU 메모리와 GPU 메모리 간 데이터 통신 분석 (Evaluation of the Data Migration between CPU Memory and GPU Memory for a NVIDIA Pascal GPU Using Unified Memory)

  • 신필규;홍성수
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2018년도 제58차 하계학술대회논문집 26권2호
    • /
    • pp.7-10
    • /
    • 2018
  • 통합 메모리는 CPU 메모리와 GPU 메모리 간의 데이터 통신을 개발자에게 투명하게 내재적으로 수행하는 소프트웨어 런타임 환경으로 개발자에게 CPU 메모리와 GPU 메모리가 통합된 하나의 메모리로 보이게 해준다. 통합 메모리는 장점에도 불구하고 아직 널리 사용되지 못하고 있는데 그 이유는 내재적으로 수행되는 데이터 통신의 오버헤드가 큰 것으로 알려져 있기 때문이다. 하지만 이 데이터 통신이 구체적으로 어떻게 이루어지고 오버헤드는 어떻게 발생하는지 분석한 연구는 아직 존재하지 않는다. 우리는 NVIDIA 사의 최신 GPU 마이크로아키텍처 중 하나인 파스칼을 사용하는 GPU를 대상으로 하여, 통합 메모리를 사용할 시 데이터 통신이 이루어지는 조건과 GPU 응용의 수행시간에 데이터 통신이 끼치는 영향을 실험을 통해 분석한다. 실험 결과 통합 메모리의 오버헤드는 두 가지 원인 때문에 발생한다. 첫째, 통합 메모리를 사용하면 CPU 또는 GPU가 데이터에 접근할 때마다 이 데이터는 CPU 또는 GPU 메모리로 옮겨지고 옮겨진 데이터는 제거된다. 따라서 재사용할 데이터도 제거되어 추가적인 데이터 통신이 발생하고, 이 데이터 통신의 지연시간은 GPU 응용의 수행시간에 더해진다. 둘째, 통합 메모리를 사용하면 데이터 통신과 커널들이 서로 다른 스트림에 할당되어도 동시에 수행되지 못한다. 따라서 GPU 응용의 수행시간은 동시에 수행되던 데이터 통신과 커널의 수행시간만큼 증가한다.

  • PDF

GPU 기반의 MPEG-2 디코더의 구현 (Implementation of GPU based MPEG-2 Decoder)

  • 김경수;김홍식;김정길;박우찬
    • 디지털콘텐츠학회 논문지
    • /
    • 제9권3호
    • /
    • pp.371-377
    • /
    • 2008
  • 최근 GPU 성능은 CPU 성장 속도에 비하여 급속도로 증가하고 있으며 계산이 많이 요구되는 다양한 응용 프로그램에서 GPU를 이용하려는 시도가 활발히 진행되고 있다. 본 논문에서는 GPU 프로그래밍 언어인 CG를 이용하여 MPEG-2 디코더를 구현하였다. 제안된 방법은 텍스쳐 데이터를 사용하여 비디오 표준에 맞춘 블록 렌더링을 하는 방식이며, 이는 스트림 프로세싱 구조인 GPU의 파이프라인을 이용하여 높은 병렬성을 가지고 실행된다. 또한 시스템 메모리와 GPU 사이의 데이터 대역폭을 줄이기 위해 그래픽 카드의 지역 메모리를 사용한다. 제안한 방법을 적용한 결과 CPU 보다 2배 이상의 성능 향상을 볼 수 있었다.

  • PDF

병렬 응용프로그램 실행 시 GPU 구조에 따른 성능 분석 (Performance Evaluation of the GPU Architecture Executing Parallel Applications)

  • 최홍준;김철홍
    • 한국콘텐츠학회논문지
    • /
    • 제12권5호
    • /
    • pp.10-21
    • /
    • 2012
  • 통합형셰이더 코어 구조 개발 이후 GPU는 그래픽스 전용 연산장치에서 범용 연산장치로 발달하고 있다. 특히, 병렬 응용 프로그램들은 병렬화된 하드웨어 구조를 효과적으로 활용할 수 있기 때문에, GPU를 활용하여 병렬 응용프로그램들을 실행시키는 기법이 주목을 받고 있다. 하지만, 현재의 GPU 구조는 비그래픽스 응용프로그램을 실행하는데 있어서 병렬성을 충분히 확보하지 못하다는 한계를 가지고 있기 때문에, 이를 해결하기 위해 GPU 구조는 빠르게 변화하고 있다. 본 논문에서는 GPU 구조의 개발 방향을 살펴보기 위해, 비그래픽스 병렬 응용프로그램들을 수행하는 경우에 코어 개수 및 동작 주파수 등의 하드웨어구조에 따른 GPU의 성능을 상세히 분석하고자 한다. 실험 결과, 코어 개수가 30에서 192로 늘어나고 동작주파수가 325MHz에서 450MHz로 증가함에 따라 GPU 성능은 28.9%에서 125.8%, 4.4%에서 16.2% 각각 향상되는 반면 성능 향상 효율성은 감소하는 것을 볼 수 있다. 성능 향상 효율성 감소의 주된 원인은 향상된 연산 능력에 맞추어 증가된 데이터 요구를 메모리가 적절하게 처리하지 못하기 때문이다. 결과적으로 GPU의 성능 향상 효율성을 더욱 높이기 위해서는 연산 능력 향상과 더불어 시스템 자원들 또한 GPU 구조에 맞게 변경되어야 함을 구체적인 실험을 통해 알 수 있다.

직접 통로 기반 GPU 가상화 환경에서 GPU 연산시간의 길이가 가상머신의 공평성에 미치는 영향 분석 (Analysis of the Influence of GPU Task Length on the Fairness of Virtual Machines in Direct Path-through based GPU Virtualization Environment)

  • 강지훈;유헌창;길준민
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2017년도 춘계학술발표대회
    • /
    • pp.32-35
    • /
    • 2017
  • 직접 통로(Direct Pass-through) 기반 GPU(Graphic Processing Unit) 가상화 기법은 클라우드 환경에서 가상머신에게 GPU 장치의 기능을 지원하기 위한 일반적인 방법 중 하나이다. GPU 장치는 GPGPU 기술을 통해 연산을 가속화 할 수 있기 때문에 클라우드 환경에서도 가상머신에 고성능 연산을 지원하기 위해 많이 사용되고 있다. 하지만 기존 가상머신 스케줄링 기법은 가상머신의 CPU 사용 시간을 기반으로 스케줄링 되며, GPU 자원 사용을 고려하지 않는다. 본 논문에서는 GPU와 CPU 연산을 수행하는 가상머신들이 동시에 실행되는 환경에서 성능 실험을 통해 가상머신의 GPU 연산이 다른 가상머신에게 미치는 성능 영향과 GPU 작업 길이가 다른 가상머신에게 미치는 영향을 분석한다.

클라우드 환경에서 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 작업 관리 기법을 제안한다.

모바일 GPU 동향 (Trends of Mobile GPU)

  • 한진호;변경진;엄낙웅
    • 전자통신동향분석
    • /
    • 제28권2호
    • /
    • pp.50-57
    • /
    • 2013
  • 스마트폰 및 태블릿 PC에 들어가는 핵심 부품인 AP(Application Processor)는 모두 GPU(Graphics Processing Unit)를 내장하고 있다. 이는 칩 면적의 제약과 사용 가능한 전력의 한계로 데스크톱의 그래픽 카드에 탑재된 고성능 GPU와는 다른 설계 제약을 받는다. 본고에서는 고성능 GPU와 다른 설계 조건을 갖는 mobile GPU 기술에 대해서 알아보았고 대표적인 commercial mobile GPU인 Imagination, ARM, Qualcomm, NVidia사의 mobile GPU의 특징 및 성능에 대해서 알아보았다.

  • PDF

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에 적합한 메모리 구조를 설계하기 위한 가이드라인을 제시하고자 한다.