Earticle

현재 위치 Home 검색결과

결과 내 검색

발행연도

-

학문분야

자료유형

간행물

검색결과

검색조건
검색결과 : 16
No
1

CUDA를 이용한 실시간 감성 동영상 추상화 구현 KCI 등재

강동화, 최다정, 한수정, 김유진, 박래영, 양희경, 민경하

한국컴퓨터게임학회 컴퓨터게임및콘텐츠논문지(구 한국컴퓨터게임학회논문지) 제24권 제3호 2011.09 pp.125-134

※ 기관로그인 시 무료 이용이 가능합니다.

4,000원

2

최신 GPU의 구조는 주요한 각 그래픽 연산별로 특화된 유닛을 사용하는 스트림 아키텍처를 넘어서서 여러 개의 동일한 Programmable한 유닛들의 집적화를 통해 범용 연산의 실행이 용이한 형태로 발전하고 있다. 또한 이전의 GPU에서 연산을 수행하기 위해 그래픽에 특화된 API를 사용하던 환경 대신, 최신의 GPU에서는 프로그래머가 보다 직접적으로 GPU를 제어할 수 있고 사용이 편한 소프트웨어 환경들이 개발되고 있다. 이러한 하드웨어와 소프트웨어의 발전은 GPU를 활용한 범용 컴퓨팅(GPGPU)을 보편화 시키고 있다. 이러한 추세에 맞추어 본 논문에서는 최신의 GPU와 소프트웨어 개발 환경을 활용하여 계산 요구량이 높은 금융파생 상품 모델링 응용 프로그램을 병렬화하고, 성능을 최적화하는 연구를 수행한다. 또한 GPU의 성능 측정 결과를 CPU만 사용하는 경우와 비교하여 분석한 결과를 제시한다. 실험 결과 GPU를 활용한 경우 190배 이상의 큰 성능 향상을 얻을 수 있었다.

The architecture of the latest GPU has surpassed the previous application-specific stream architecture. Thishas led to an architecture consisting of a number of uniform programmable units integrated on the same chipwhich facilitate the general-purpose computing beyond the graphic processing. With the multipleprogrammable units executing in parallel, the latest GPU shows superior performance. Furthermore,programmers can have a direct control on the GPU pipeline using easy-to-use parallel programmingenvironments, whereas they had to rely on specific graphics API’s in the past. These advances in hardwareand software make General-Purpose GPU (GPGPU) computing widespread. In this paper, using the latestGPU and its software environment, we parallelize a computationally demanding financial application andoptimize its performance. We also analyze the performance results compared with those obtained using CPUonly. Experimental results show that GPU can achieve a superior performance, grater than 190x, comparedwith the CPU-only case.

3

A GPU-based Parallel Ant Colony Algorithm for Scientific Workflow Scheduling

Pengfei Wang, Huifang Li, Baihai Zhang

보안공학연구지원센터(IJGDC) International Journal of Grid and Distributed Computing Vol.8 No.4 2015.08 pp.37-46

※ 원문제공기관과의 협약기간이 종료되어 열람이 제한될 수 있습니다.

Scientific workflow scheduling problem is a combinatorial optimization problem. In the real application, the scientific workflow generally has thousands of task nodes. Scheduling large-scale workflow has huge computational overhead. In this paper, a parallel algorithm for scientific workflow scheduling is proposed so that the computing speed can be improved greatly. Our method used ant colony optimization approaches on the GPU. Thousands of GPU threads can parallel construct solutions. The parallel ant colony algorithm for workflow scheduling was implemented with CUDA C language. Scheduling problem instances with different scales were tested both in our parallel algorithm and CPU sequential algorithm. The experimental results on NVIDIA Tesla M2070 GPU show that our implementation for 1000 task nodes runs in 5 seconds, while a conventional sequential algorithm implementation runs in 104 seconds on Intel Xeon X5650 CPU. Thus, our GPU-based parallel algorithm implementation attains a speed-up factor of 20.7.

4

Multi-GPU Parallel Computing and Task Scheduling under Virtualization

Yujie Zhang, Jiabin Yuan, Xiangwen Lu, Xingfang Zhao

보안공학연구지원센터(IJHIT) International Journal of Hybrid Information Technology Vol.8 No.7 2015.07 pp.253-266

※ 원문제공기관과의 협약기간이 종료되어 열람이 제한될 수 있습니다.

5

High Performance Computing for Large Graphs of Internet Applications using GPU SCOPUS

Jia Uddin, Emmanuel Oyekanlu, Cheol-Hong Kim, Jong-Myon Kim

보안공학연구지원센터(IJMUE) International Journal of Multimedia and Ubiquitous Engineering Vol.9 No.3 2014.03 pp.269-280

※ 원문제공기관과의 협약기간이 종료되어 열람이 제한될 수 있습니다.

The high speed CPU based routers currently in use could not handle the massive data required for real-time multimedia communication. Graphics processing units (GPUs) offer an appreciable alternative due to high computation power which results from their parallel execution units. This paper presents the implementation of the Dijkstra’s link state IP routing algorithm using GPU. Experimental results show that the proposed GPU-based approach outperforms the same sequential CPU-based implementation in terms of execution time for the same dense graph. In addition, the proposed GPU-based approach reduces about 99% energy consumption over the CPU-based implementation.

6

GPU Computing on Handheld Devices

조성대

[Kisti 연계] 대한전자공학회 電子工學會誌 Vol.36 No.5 2009 pp.36-49

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

7

Accelerating Distance Transform Image based Hand Detection using CPU-GPU Heterogeneous Computing

Yi, Zhaohua, Hu, Xiaoqi, Kim, Eung Kyeu, Kim, Kyung Ki, Jang, Byunghyun

[Kisti 연계] 대한전자공학회 Journal of semiconductor technology and science Vol.16 No.5 2016 pp.557-563

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

Most of the existing hand detection methods rely on the contour shape of hand after skin color segmentation. Such contour shape based computations, however, are not only susceptible to noise and other skin color segments but also inherently sequential and difficult to efficiently parallelize. In this paper, we implement and accelerate our in-house distance image based approach using CPU-GPU heterogeneous computing. Using emerging CPU-GPU heterogeneous computing technology, we achieved 5.0 times speed-up for $320{\times}240$ images, and 17.5 times for $640{\times}480$ images and our experiment demonstrates that our proposed distance image based hand detection is robust and fast, reaching up to 97.32% palm detection rate, 80.4% of which have more than 3 fingers detected on commodity processors.

8

Mitigation Technique for Performance Degradation of Virtual Machine Owing to GPU Pass-Through in Fog Computing

Kang, Jihun, Yu, Heonchang

[Kisti 연계] 한국통신학회 Journal of communications and networks Vol.20 No.3 2018 pp.257-265

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

As the size of data increases and computation becomes complicated in fog computing environments, the need for high-performance computation is increasing. One of the most popular ways to improve the performance of a virtual machine (VM) is to allocate a graphic processing unit (GPU) to the VM for supporting general purpose computing on graphic processing unit (GPGPU) operations. The direct pass-through, often used for GPUs in VMs, is popular in the cloud because VMs can use the full functionality of the GPU and experience virtually no performance degradation owing to virtualization. Direct pass-through is very useful for improving the performance of VMs. However, since the GPU usage time is not considered in the VM scheduler that operates based on the central processing unit (CPU) usage time of the VM, the VM performing the GPGPU operation degrades the performance of other VMs. In this paper, we analyze the effect of the VM performing the GPGPU operation (GPGPU-intensive VM) on other VMs through experiments. Then, we propose a method to mitigate the performance degradation of other VMs by dynamically allocating the resource usage time of the VM and preventing the priority preemption of the GPGPU-intensive VM.

9

볼런티어 컴퓨팅 환경에서 성능간섭 최소화와 연산 효율성 증대를 위한 CPU/GPU 컴퓨팅 자원 최적화 기법

박봉우, 송충건, 유헌창

[Kisti 연계] 한국정보처리학회 정보처리학회논문지/컴퓨터 및 통신 시스템 Vol.6 No.12 2017 pp.479-486

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

볼런티어 컴퓨팅(Volunteer Computing)은 많은 노드들의 유휴자원을 이용하여 연산을 수행하는 새로운 컴퓨팅 패러다임이다. 볼런티어 컴퓨팅 수행을 위해 운영하는 클라이언트 어플리케이션은 사용자의 설정 정보에 의해 동작 방식이 결정된다. 이상적인 동작을 위해서는 시스템 특징과 다른 어플리케이션의 동작 방식에 최적화된 설정이 요구된다. 본 연구에서는 유휴 자원 정보를 주기적으로 CPU와 GPU의 사용 비율을 분석하고 최적화된 옵션을 정해 동적으로 적용하는 관리자를 개발하였다. 또한 CPU 자원의 높은 활용도를 위해 태스크 스케일링을 진행하고 CPU코어를 주기적으로 재 할당 하여 CPU자원이 균등하게 사용되게 하였다. 제시하는 기법을 통해 기존의 볼런티어 컴퓨팅보다 높은 태스크 연산 능력을 보였으며 성능간섭 또한 최소화 시켰다. 볼런티어 컴퓨팅을 진행하는데 있어 볼런티어들이 더 높은 컴퓨팅 자원을 제공할 수 있게 될 것으로 예상한다.

Volunteer computing is a new computing paradigm that performs operations on idle resources of many nodes. The operation method of the client application for the execution of the volunteer computing is determined by the setting information of the user. Ideal operation requires optimized settings for system features and operating methods of other applications. In this paper, we analyze the usage ratio of CPU and GPU periodically, and develop a manager that dynamically applies optimized options. Through our proposed mechanism, the performance of the task computing is higher than that of the existing Volunteer Computing, and the performance interference is minimized. It is expected that volunteers will be able to provide higher computing resources for Volunteer Computing Project.

10

볼런티어 컴퓨팅 환경에서 성능간섭 최소화와 연산 효율성 증대를 위한 CPU/GPU 컴퓨팅 자원 최적화 기법

박봉우, 송충건, 유헌창

[NRF 연계] 한국정보처리학회 KIPS Transactions on Computer and Communication Systems Vol.6 No.12 2017.12 pp.479-486

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

볼런티어 컴퓨팅(Volunteer Computing)은 많은 노드들의 유휴자원을 이용하여 연산을 수행하는 새로운 컴퓨팅 패러다임이다. 볼런티어 컴퓨팅 수행을 위해 운영하는 클라이언트 어플리케이션은 사용자의 설정 정보에 의해 동작 방식이 결정된다. 이상적인 동작을 위해서는 시스템 특징과 다른 어플리케이션의 동작 방식에 최적화된 설정이 요구된다. 본 연구에서는 유휴 자원 정보를 주기적으로 CPU와 GPU의 사용 비율을 분석하고 최적화된 옵션을 정해 동적으로 적용하는 관리자를 개발하였다. 또한 CPU 자원의 높은 활용도를 위해 태스크 스케일링을 진행하고 CPU코어를 주기적으로 재 할당 하여 CPU자원이 균등하게 사용되게 하였다. 제시하는 기법을 통해 기존의 볼런티어 컴퓨팅보다 높은 태스크 연산 능력을 보였으며 성능간섭 또한 최소화 시켰다. 볼런티어 컴퓨팅을 진행하는데 있어 볼런티어들이 더 높은 컴퓨팅자원을 제공할 수 있게 될 것으로 예상한다.

Volunteer computing is a new computing paradigm that performs operations on idle resources of many nodes. The operation method of the client application for the execution of the volunteer computing is determined by the setting information of the user. Ideal operation requires optimized settings for system features and operating methods of other applications. In this paper, we analyze the usage ratio of CPU and GPU periodically, and develop a manager that dynamically applies optimized options. Through our proposed mechanism, the performance of the task computing is higher than that of the existing Volunteer Computing, and the performance interference is minimized. It is expected that volunteers will be able to provide higher computing resources for Volunteer Computing Project.

11

유한요소 비압축성 유동장 해석을 위한 이중공액구배법의 GPU 기반 연산에 대한 연구

윤종선, 전병진, 정혜동, 최형권

[Kisti 연계] 대한기계학회 대한기계학회논문집B Vol.40 No.9 2016 pp.597-604

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

본 연구에서는 GPU를 이용한 비압축성 유동장의 병렬연산을 위하여, P2P1 유한요소를 이용한 분리 알고리즘 내의 행렬 해법인 이중공액구배법(Bi-Conjugate Gradient)의 CUDA 기반 알고리즘을 개발하였다. 개발된 알고리즘을 이용해 비대칭 협착관 유동을 해석하고, 단일 CPU와의 계산시간을 비교하여 GPU 병렬 연산의 성능 향상을 측정하였다. 또한, 비대칭 협착관 유동 문제와 다른 행렬 패턴을 가지는 유체구조 상호작용 문제에 대하여 이중공액구배법 내의 희소 행렬과 벡터의 곱에 대한 GPU의 병렬성능을 확인하였다. 개발된 코드는 희소 행렬의 1개의 행과 벡터의 내적을 병렬 연산하는 커널(Kernel)로 구성되며, 최적화는 병렬 감소 연산(Parallel Reduction), 메모리 코얼레싱(Coalescing) 효과를 이용하여 구현하였다. 또한, 커널 생성 시 워프(Warp)의 크기에 따른 성능 차이를 확인하였다. 표준예제들에 대한 GPU 병렬연산속도는 CPU 대비 약 7배 이상 향상됨을 확인하였다.

A parallel algorithm of bi-conjugate gradient method was developed based on CUDA for parallel computation of the incompressible Navier-Stokes equations. The governing equations were discretized using splitting P2P1 finite element method. Asymmetric stenotic flow problem was solved to validate the proposed algorithm, and then the parallel performance of the GPU was examined by measuring the elapsed times. Further, the GPU performance for sparse matrix-vector multiplication was also investigated with a matrix of fluid-structure interaction problem. A kernel was generated to simultaneously compute the inner product of each row of sparse matrix and a vector. In addition, the kernel was optimized to improve the performance by using both parallel reduction and memory coalescing. In the kernel construction, the effect of warp on the parallel performance of the present CUDA was also examined. The present GPU computation was more than 7 times faster than the single CPU by double precision.

12

액체 시뮬레이션의 얇은 특징을 빠르게 표현하기 위한 CPU와 GPU 이기종 컴퓨팅 기술

김종현

[Kisti 연계] 한국컴퓨터그래픽스학회 컴퓨터그래픽스학회논문지 Vol.24 No.2 2018 pp.11-20

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

우리는 유체의 얇은 막을 명시적으로 표현하고 보존할 수 있는 CPU-GPU 이기종 컴퓨팅 기반의 유체 시뮬레이션 기법을 소개한다. 본 논문에서 가장 큰 기여는 얇은 유체표면에서 쪼개지거나 밀도가 높은 지점에서 붕괴되어 유체표면에 나타나는 Hole을 방지하는 입자 기반 프레임워크를 GPU를 활용한다는 것이다. 유체표면을 추적하는 기존의 방법과는 달리, 제안된 프레임워크는 CPU-GPU 프레임워크상에서 수치적 확산이나 꼬임문제 없이 안정적으로 토폴로지 변화를 처리할 수 있다. 얇은 표면의 특징은 이방성 커널(Anisotropic kernel)과 주성분 분석(Principal component analysis; PCA)을 GPU상에서 수행하여 유체의 방향성을 빠르게 찾고, 새로운 유체입자의 위치를 결정하기 위해 계산하는, 후보위치 추출 과정의 효율성을 CPU-GPU 이기종 컴퓨팅 기술 기반으로 빠르게 계산한다. 제안된 알고리즘은 직관적으로 구현되며, 병렬화가 쉽고 시각적으로 디테일한 액체의 얇은 표면을 빠르게 애니메이션 할 수 있다.

We propose a new method particle-based method that explicitly preserves thin liquid sheets for animating liquids on CPU-GPU heterogeneous computing framework. Our primary contribution is a particle-based framework that splits at thin points and collapses at dense points to prevent the breakup of liquid on GPU. In contrast to existing surface tracking methods, the our method does not suffer from numerical diffusion or tangles, and robustly handles topology changes on CPU-GPU framework. The thin features are detected by examining stretches of distributions of neighboring particles by performing PCA(Principle component analysis), which is used to reconstruct thin surfaces with anisotropic kernels. The efficiency of the candidate position extraction process to calculate the position of the fluid particle was rapidly improved based on the CPU-GPU heterogeneous computing techniques. Proposed algorithm is intuitively implemented, easy to parallelize and capable of producing quickly detailed thin liquid animations.

13

국방시스템 내에서의 GPU 기반 병렬처리 방법에 대한 연구

이정웅, 홍예은, 장원재, 김상준, 이윤정, 지승배, 박지현

[NRF 연계] 한국지식정보기술학회 (사)한국지식정보기술학회논문지 Vol.12 No.5 2017.10 pp.661-675

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

2020년 중반까지 한국군은 미군 및 나토 표준 선진 전술데이터링크와 한국군 고유의 전술데이터링크들을 통합시켜 네트워크 중심전(NCW: Network Centric Warfare) 환경을 구축할 계획이다. NCW환경에서 감시 및 정찰체계, 요격체계는 전술데이터링크를 통신 인프라로 활용하여 지휘통제체계에 통합된다. 이렇게 시스템 간 통합이 이루어지면 교환되어야 할 자료의 양과 실시간 처리를 위해 필요한 컴퓨터 자원은 극적으로 증가하게 된다. 그러나, 이러한 문제점을 현재의 CPU 기반의 컴퓨팅 아키텍처로는 쉽게 해결하지 못한다. 왜냐하면, CPU는 태생적으로 병렬처리 전용 장치가 아니며 일반적으로 비용이 많이 들고 전문 프로그래머에게도 CPU를 이용한 병렬처리는 매우 어려운 문제이기 때문이다. 다행히, 최근 수백/수천 개의 코어를 갖는 고속 수학연산 전용 GPU가 급격하게 발전하였고, 그리드-블록-쓰레드라고 하는 병렬처리 전용 아키텍처와 개발자를 위한 툴킷을 제공함으로 민수시장에서 유전자분석, 유체역학, 암호학 등에 많이 사용되고 있다. 본 논문은 거대한 국방시스템에서 높은 컴퓨팅 능력을 요구하는 영역을 보다 상세하게 식별하고 GPU의 특징을 적용할 수 있는 방법을 예제와 실험을 통해 제시함으로써 갈수록 높아지는 대용량 고속 처리 요구사항에 대응하고자 한다.

By the mid of 2020, Korean military forces have planned to built the network centric warfare(NCW) environment by integrating advanced US/NATO standardized tactical data links and Korean unique data links. In this NCW environment, sensors, reconnaissance and weapon systems will be integrated with command and control systems utilizing tactical data links These inter-systems integrations bring out the dramatic growth of exchanging data and computing resources for real time processing. However, these issues could not be easily resolved with current CPU based computing architectures. Because, CPU is not dedicated parallel processing device, it is usually very expensive and multi-thread programming using CPU is very difficult even for expert programmers. By the way, the high-speed arithmetic dedicated GPUs(Graphic Processing Unit) with hundreds or thousands cores are being developed rapidly and applied commercially in the area of genetic analysis, hydrodynamics and cryptography in these days. It also provides grid-block-thread architectures for parallel data processing and software development kits(SDK) for developers to exchange data and functions between hosts systems and GPUs at ease. In a huge military system, there are lots of high computing power required areas such as receiving and transmitting tactical messages with specific rules, data fusions and management, threat evaluation, weapon assignment and drawing situational display. This study will identify those areas in detail and suggest GPU based parallel processing ideas which can be adaptable with several examples and experiments.

14

GPU-기반 MPM 최대 유량 계산

서영선, 나현숙

[NRF 연계] 한국지식정보기술학회 (사)한국지식정보기술학회논문지 Vol.18 No.2 2023.04 pp.377-388

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

최대유량 계산은 대표적인 그래프 최적화문제로서, 교통, 통신, 전기 네트워크, 병렬기기 스케쥴링, 이미지 프로세싱 등에서 활용되고 있는 문제이다. 최대유량 계산은 높은 시간복잡도가 불가피하기 때문에 그래프 크기가 커질수록 효율성 향상은 중요한 이슈이다. 하지만 현재까지 개발된 소수의 GPU 기반 병렬 처리 연구들조차 로컬 연산 기반의 Push-Relabel 알고리즘 및 휴리스틱 개발에만 집중되어 왔다. 본 논문은 대표적인 유량 증가 알고리즘인 MPM 알고리즘의 병렬 구현 기법을 제안한다. Solomon이 구현한 GPU 기반 MPM 알고리즘을 개선하기 위해 두 가지 병렬 처리 기법-워프(Warp) 단위 구현 기법과 레벨별 정점 리스트를 활용한 CPU 컨트롤의 효율적 감소-을 구현했으며, 이를 통해 대부분의 입력 데이터에서 성능이 크게 향상되었음을 보인다.

The maximum flow problem is a problem of obtaining the maximum flow amount that can be sent from a start point to an end point in a flow network given capacity for each edge. In many application areas such as transportation, communication, electric networks, parallel device scheduling and image processing, many problems can be modeled as optimization problems in flow networks. Thus the maximum flow problem is a representative graph optimization problem and is used as a subroutine in various minimum cost maximum flow problems. Since the calculation of the maximum flow inevitably requires high time-complexity, efficiency improvement becomes more and more important issue as the graph size increases and the graph structure becomes more complex. However, even few GPU-based parallel processing studies developed so far have focused only on the development of local-computation-based Push-Relabel algorithm and its heuristics. To our best knowledge, the only GPU-based study on augmenting flow approaches is the Solomon’s implementation of MPM algorithm. Therefore we propose two parallel computing techniques for optimizing the GPU-based MPM algorithm implemented by Solomon: implementation technique based on WARP unit for graph algorithms and CPU control reduction using a vertex list per level. By performance comparison on 13 types of experimental graph data sets, we empirically prove that the proposed parallel processing techniques improve the Solomon’s MPM implementation significantly.

15

GPU-기반 Push-Relabel 최대 유량 계산

서영선, 나현숙

[NRF 연계] 한국지식정보기술학회 (사)한국지식정보기술학회논문지 Vol.18 No.5 2023.10 pp.1387-1400

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

그래프 이론에서 유량 네트워크란 각 간선에 용량이 주어진 방향 그래프를 말하는데, 각 간선 위의 유량은 용량을 넘어서는 안된다. 최대 유량 문제는 유량 네트워크의 시점에서 종점까지 보낼 수 있는 최대 유량을 구하는 문제로서, Push-Relabel 알고리즘은 가장 효율적이고 병렬처리에 적합한 접근법으로서 연구되어 왔다. 특히 최근 개발된 Kara와 Özturan의 CPU 멀티코어 기반 그래프 색칠 Push-Relabel 병렬 알고리즘은 그래프 색칠로 구한 비인접 정점집합(독립집합, Independent Set)에서 Push 연산으로 동시에 유량을 흘려보내면 병렬 처리로 인한 경쟁 상태가 최소화되어 현재까지 개발된 어떤 알고리즘보다도 더 효율적임이 입증된 바 있다. 본 논문에서는 이 CPU 멀티코어 기반 알고리즘을 GPU 기반으로 병렬 처리하는 효율적 기법들을 제안했다. 제안된 세 가지 기법들-정점별 워프 할당, Grid 단위 동기화, 거대 정점의 별도 처리-는 분기가 많고 복잡한 그래프 알고리즘에서 병렬 처리로 인해 발생하는 호스트-디바이스 간의 실행 오버헤드 및 지연시간을 효율적으로 해결한다. 그래프 색칠 루틴으로, Kara와 Özturan이 사용한 탐욕적 순차 알고리즘을 Gebremedhin과 Manne의 병렬 알고리즘으로 대체하는데, 이는 근사값(색칠 수)은 더 나쁠 수 있으나 수행시간이 더 짧다. 다양한 실험 데이터에서의 성능 비교를 통해 본 논문의 GPU 기반 구현이 Kara와 Özturan의 구현보다 더 효율적임을 보이고, 거대 정점의 별도 처리 및 그래프 색칠 루틴의 GPU 기반 병렬 처리의 유의미성도 확인한다.

In graph theory, flow network is a directed graph with edge having capacity, meaning that the amount of flow on an edge cannot exceed its capacity. Maximum flow problem is the problem of finding the maximum value of flow that can be sent from a starting point to a target point in a flow network. Push-Relabel algorithm is one of the most efficient and popular algorithms for the maximum flow problem and is regarded as the most suitable approach for parallel processing. Recently, Kara and Ozturan developed a graph-coloring-based Push-Relabel parallel algorithm and empirically showed that their algorithm is more efficient than any algorithms developed so far. The key idea is to avoid conflicts and synchronization problems due to simultaneous flow-pushing at vertices, by using sets of non-adjacent vertices (independent sets) obtained by graph coloring. In this paper, we propose efficient methods for GPU-based parallel processing of their algorithm. The proposed techniques-warp assignment per vertex, processing separately of huge-degree vertices, and synchronization in grid units-efficiently resolve the execution-overhead between host and device and latency problem, caused by parallel processing in complex graph algorithms with many branches. As a graph-coloring routine, we replace the greedy sequential algorithm used by Kara and Ozturan with the graph coloring parallel algorithm of Gebremedhin and Manne which might give a worse approximation value (number of colors) but in shorter execution time. By the performance comparison in various experimental data, we show that our GPU-based algorithm is more efficient than that of Kara and Ozturan, and confirm the significance of exceptional handling of huge-degree vertices and of using the GPU-based parallel graph coloring routine.

16

HPC 환경에서 Athena++ 시뮬레이션 코드 GPU 병렬화 및 성능 최적화 연구

정현미, 이현조, 정기문, 채철주

[Kisti 연계] 한국스마트미디어학회 스마트미디어저널 Vol.14 No.6 2025 pp.67-75

※ 협약을 통해 무료로 제공되는 자료로, 원문이용 방식은 연계기관의 정책을 따르고 있습니다.

원문보기

본 논문에서는 자기유체역학 시뮬레이션 코드인 Athena++의 핫스팟을 식별하고, 고성능컴퓨팅 환경에서의 연산 가속을 위한 병렬처리 최적화 기법을 제안한다. 코드 프로파일링 도구(gprof, valgrind, vtune)를 활용하여 주요 연산 핫스팟은 Hydro::RiemannSolver 부분임을 확인하였으며, 이를 대상으로 CUDA 기반 GPU 병렬화를 수행하였다. 제안 방법의 성능 평가는 Google Colab의 A100 GPU 환경에서 수행되었으며, 단일 연산 사이클 기준 평균 실행 시간이 기존 CPU 대비 약 25배 이상 향상되었고, 반복 연산 구조의 병렬처리를 통해 연산 효율이 크게 개선되었음을 확인하였다. 이러한 결과는 이기종 CPU-GPU 환경에서의 병렬화가 고성능 시뮬레이션 코드의 실질적인 성능 향상에 크게 기여할 수 있음을 시사한다. 또한, 차세대 컴퓨팅 디바이스(CXL, DPU 등)에 적합한 아키텍처 설계와 데이터 흐름 최적화 전략이 향후 HPC 응용 프로그램 성능 개선의 핵심 요소가 될 것임을 확인할 수 있다.

This paper identifies performance hotspots in the magnetohydrodynamics (MHD) simulation code Athena++ and proposes parallel optimization techniques for computational acceleration in high-performance computing (HPC) environments. Through code profiling tools such as gprof, valgrind, and vtune, the primary computational hotspot was found to be the Hydro::RiemannSolver module. Performance evaluation was conducted in the Google Colab environment using the A100 GPU. The results demonstrated over a 25-fold improvement in average execution time per computation cycle compared to the CPU implementation, confirming substantial enhancement in computational efficiency through parallel processing of repetitive structures. These findings suggest that parallelization in heterogeneous CPU-GPU environments can significantly improve the performance of high-fidelity simulation codes. Moreover, architecture design and data flow optimization tailored for next-generation computing devices such as CXL and DPUs are expected to play a critical role in future HPC application performance improvement.

 
페이지 저장