• 제목/요약/키워드: Multiple GPUs

검색결과 30건 처리시간 0.023초

Latency Hiding based Warp Scheduling Policy for High Performance GPUs

  • Kim, Gwang Bok;Kim, Jong Myon;Kim, Cheol Hong
    • 한국컴퓨터정보학회논문지
    • /
    • 제24권4호
    • /
    • pp.1-9
    • /
    • 2019
  • LRR(Loose Round Robin) warp scheduling policy for GPU architecture results in high warp-level parallelism and balanced loads across multiple warps. However, traditional LRR policy makes multiple warps execute long latency operations at the same time. In cases that no more warps to be issued under long latency, the throughput of GPUs may be degraded significantly. In this paper, we propose a new warp scheduling policy which utilizes latency hiding, leading to more utilized memory resources in high performance GPUs. The proposed warp scheduler prioritizes memory instruction based on GTO(Greedy Then Oldest) policy in order to provide reduced memory stalls. When no warps can execute memory instruction any more, the warp scheduler selects a warp for computation instruction by round robin manner. Furthermore, our proposed technique achieves high performance by using additional information about recently committed warps. According to our experimental results, our proposed technique improves GPU performance by 12.7% and 5.6% over LRR and GTO on average, respectively.

KAWS: Coordinate Kernel-Aware Warp Scheduling and Warp Sharing Mechanism for Advanced GPUs

  • Vo, Viet Tan;Kim, Cheol Hong
    • Journal of Information Processing Systems
    • /
    • 제17권6호
    • /
    • pp.1157-1169
    • /
    • 2021
  • Modern graphics processor unit (GPU) architectures offer significant hardware resource enhancements for parallel computing. However, without software optimization, GPUs continuously exhibit hardware resource underutilization. In this paper, we indicate the need to alter different warp scheduler schemes during different kernel execution periods to improve resource utilization. Existing warp schedulers cannot be aware of the kernel progress to provide an effective scheduling policy. In addition, we identified the potential for improving resource utilization for multiple-warp-scheduler GPUs by sharing stalling warps with selected warp schedulers. To address the efficiency issue of the present GPU, we coordinated the kernel-aware warp scheduler and warp sharing mechanism (KAWS). The proposed warp scheduler acknowledges the execution progress of the running kernel to adapt to a more effective scheduling policy when the kernel progress attains a point of resource underutilization. Meanwhile, the warp-sharing mechanism distributes stalling warps to different warp schedulers wherein the execution pipeline unit is ready. Our design achieves performance that is on an average higher than that of the traditional warp scheduler by 7.97% and employs marginal additional hardware overhead.

GP-GPU의 캐시메모리를 활용하기 위한 병렬 블록 LU 분해 프로그램의 구현 (Implementation of parallel blocked LU decomposition program for utilizing cache memory on GP-GPUs)

  • 김영태;김두한;유명한
    • 인터넷정보학회논문지
    • /
    • 제14권6호
    • /
    • pp.41-47
    • /
    • 2013
  • GP-GPU는 그래픽 처리를 위한 GPU의 다중쓰레드를 일반 수치 계산에 활용하여 초고속으로 계산하는 장치이다. GP-GPU에서는 CPU의 캐시메모리와는 달리 다중쓰레드가 공유하는 공유메모리의 형태로 캐시메모리를 제공하며, 공유메모리는 사용자 프로그램에서 직접 제어할 수 있다. 본 연구에서는 GP-GPU의 캐시메모리를 사용하여 계산 성능을 향상시키기 위한 블록 구조의 병렬 LU 분해 프로그램을 구현하였다. Nvidia CUDA C로 구현된 병렬 블록 LU 분해 프로그램은 동일한 GP-GPU 상에서 일반 LU 분해 프로그램에 비교하여 7~8배 이상의 속도 개선을 보였다.

저가의 그래픽스 장치를 이용한 GPU 클러스터 시스템 구현 (Implementation of a GPU Cluster System using Inexpensive Graphics Devices)

  • 이종민;이중화;김성우
    • 한국멀티미디어학회논문지
    • /
    • 제14권11호
    • /
    • pp.1458-1466
    • /
    • 2011
  • 최근 들어 GPU 성능이 급격하게 향상됨에 따라서 그래픽 처리가 아닌 일반 계산 분야에도 활용하기 위하여 GPGPU 분야에 대한 연구에 많이 이루어지고 있다. 본 논문에서는 저가의 그래픽스 장치에 내재된 GPU를 활용하여 비용 대비 성능이 높은 시스템을 구현하기 위하여 기존의 슈퍼컴퓨터 구조를 벤치마킹한 시스템 구조를 제안하고, 8개의 GPU를 사용하는 GPU 클러스터 시스템을 구현한다. 또한 이를 위한 소프트웨어 환경을 구축하여 n-body 문제를 사용하여 시스템 성능을 분석한다. 성능 평가 결과 사용하는 GPU 수가 많아질수록 통신경비로 인하여 문제 크기가 충분히 커야 효율적임을 알 수 있었다. 그리고 GPU내 자원 부족 문제 때문에 발생하는 문제 크기 제약을 블록 단위로 계산하여 완화할 수 있는 방법을 적용하여 최대 팔백만 개의 천체에 대한 계산을 할 수 있었다.

Accelerating Self-Similarity-Based Image Super-Resolution Using OpenCL

  • Jun, Jae-Hee;Choi, Ji-Hoon;Lee, Dae-Yeol;Jeong, Seyoon;Cho, Suk-Hee;Kim, Hui-Yong;Kim, Jong-Ok
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제4권1호
    • /
    • pp.10-15
    • /
    • 2015
  • This paper proposes the parallel implementation of a self-similarity based image SR (super-resolution) algorithm using OpenCL. The SR algorithm requires tremendous computations to search for a similar patch. This becomes a bottleneck for the real-time conversion from a FHD image to UHD. Therefore, it is imperative to accelerate the processing speed of SR algorithms. For parallelization, the SR process is divided into several kernels, and memory optimization is performed. In addition, two GPUs are used for further acceleration. The experimental results shows that a GPGPU implementation can speed up over 140 times compared to a single-core CPU. Furthermore, it was confirmed experimentally that utilizing two GPUs can speed up the execution time proportionally, up to 277 times.

CPU-GPU2 Trigeneous Computing for Iterative Reconstruction in Computed Tomography

  • Oh, Chanyoung;Yi, Youngmin
    • IEIE Transactions on Smart Processing and Computing
    • /
    • 제5권4호
    • /
    • pp.294-301
    • /
    • 2016
  • In this paper, we present methods to efficiently parallelize iterative 3D image reconstruction by exploiting trigeneous devices (three different types of device) at the same time: a CPU, an integrated GPU, and a discrete GPU. We first present a technique that exploits single instruction multiple data (SIMD) architectures in GPUs. Then, we propose a performance estimation model, based on which we can easily find the optimal data partitioning on trigeneous devices. We found that the performance significantly varies by up to 6.23 times, depending on how SIMD units in GPUs are accessed. Then, by using trigeneous devices and the proposed estimation models, we achieve optimal partitioning and throughput, which corresponds to a 9.4% further improvement, compared to discrete GPU-only execution.

Scalable Prediction Models for Airbnb Listing in Spark Big Data Cluster using GPU-accelerated RAPIDS

  • Muralidharan, Samyuktha;Yadav, Savita;Huh, Jungwoo;Lee, Sanghoon;Woo, Jongwook
    • Journal of information and communication convergence engineering
    • /
    • 제20권2호
    • /
    • pp.96-102
    • /
    • 2022
  • We aim to build predictive models for Airbnb's prices using a GPU-accelerated RAPIDS in a big data cluster. The Airbnb Listings datasets are used for the predictive analysis. Several machine-learning algorithms have been adopted to build models that predict the price of Airbnb listings. We compare the results of traditional and big data approaches to machine learning for price prediction and discuss the performance of the models. We built big data models using Databricks Spark Cluster, a distributed parallel computing system. Furthermore, we implemented models using multiple GPUs using RAPIDS in the spark cluster. The model was developed using the XGBoost algorithm, whereas other models were developed using traditional central processing unit (CPU)-based algorithms. This study compared all models in terms of accuracy metrics and computing time. We observed that the XGBoost model with RAPIDS using GPUs had the highest accuracy and computing time.

다중 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 기반의 병렬처리 과정에서 요구되는 메모리 구조 설계와 연산 방법을 제안한다.

GPU을 이용한 다중 고정 길이 패턴을 갖는 DNA 시퀀스에 대한 k-Mismatches에 의한 근사적 병열 스트링 매칭 (Parallel Approximate String Matching with k-Mismatches for Multiple Fixed-Length Patterns in DNA Sequences on Graphics Processing Units)

  • 호 티엔 루안;김현진;오승록
    • 전기학회논문지
    • /
    • 제66권6호
    • /
    • pp.955-961
    • /
    • 2017
  • In this paper, we propose a parallel approximate string matching algorithm with k-mismatches for multiple fixed-length patterns (PMASM) in DNA sequences. PMASM is developed from parallel single pattern approximate string matching algorithms to effectively calculate the Hamming distances for multiple patterns with a fixed-length. In the preprocessing phase of PMASM, all target patterns are binary encoded and stored into a look-up memory. With each input character from the input string, the Hamming distances between a substring and all patterns can be updated at the same time based on the binary encoding information in the look-up memory. Moreover, PMASM adopts graphics processing units (GPUs) to process the data computations in parallel. This paper presents three kinds of PMASM implementation methods in GPUs: thread PMASM, block-thread PMASM, and shared-mem PMASM methods. The shared-mem PMASM method gives an example to effectively make use of the GPU parallel capacity. Moreover, it also exploits special features of the CUDA (Compute Unified Device Architecture) memory structure to optimize the performance. In the experiments with DNA sequences, the proposed PMASM on GPU is 385, 77, and 64 times faster than the traditional naive algorithm, the shift-add algorithm and the single thread PMASM implementation on CPU. With the same NVIDIA GPU model, the performance of the proposed approach is enhanced up to 44% and 21%, compared with the naive, and the shift-add algorithms.

다중 GPU를 이용한 R-tree의 병렬 범위 질의 처리 기법 (Parallel Range Query Processing with R-tree on Multi-GPUs)

  • 류홍수;김민철;최원익
    • 정보과학회 논문지
    • /
    • 제42권4호
    • /
    • pp.522-529
    • /
    • 2015
  • 다차원의 데이터를 색인하기 위해 처음 R-tree가 제안된 이후 다양한 방법으로 질의 성능을 향상시키기 위한 많은 연구가 이루어졌다. 그 가운데 다중프로세서를 이용한 병렬 기법으로 질의 성능을 향상시킨 GPU기반의 R-tree가 제안되었다. 하지만 GPU가 갖는 물리적 메모리 크기의 한계가 있어 데이터의 크기가 제한된다. 이에 본 논문에서는 다중 GPU를 이용한 R-tree의 병렬 범위 질의 처리 기법인 MGR-tree 제안한다. 제안하는 MGR-tree는 기존의 GPU기반의 R-tree 질의 처리 기법을 기반으로 하여 다중 GPU에서 질의 처리를 가능하게 R-tree의 노드를 다중 GPU상에 분할하여 분산 처리 하였다. 실험을 통해 MGR-tree는 GPU에서의 선형검색에 비해 최대 9.1배, GPU기반 R-tree에 비해 최대 1.6배 가량의 성능이 향상된 것을 확인하였다.