서브메뉴
검색
Hardware-Software Codesign for Accelerating Graph Neural Networks on FPGA
Hardware-Software Codesign for Accelerating Graph Neural Networks on FPGA
상세정보
- 자료유형
- 학위논문 서양
- 최종처리일시
- 20250211152728
- ISBN
- 9798383689035
- DDC
- 621.3
- 저자명
- Zhang, Bingyi.
- 서명/저자
- Hardware-Software Codesign for Accelerating Graph Neural Networks on FPGA
- 발행사항
- [Sl] : University of Southern California, 2024
- 발행사항
- Ann Arbor : ProQuest Dissertations & Theses, 2024
- 형태사항
- 156 p
- 주기사항
- Source: Dissertations Abstracts International, Volume: 86-02, Section: B.
- 주기사항
- Advisor: Prasanna, Viktor.
- 학위논문주기
- Thesis (Ph.D.)--University of Southern California, 2024.
- 초록/해제
- 요약Graph Neural Networks (GNNs) have revolutionized many real-world applications where data can be represented as graphs. These applications include recommendation systems, social networks, traffic prediction, computer vision tasks (e.g., the tasks in autonomous driving), etc. Many applications require high-performance execution (e.g., low latency or high throughput) of GNNs. To this end, several state-of-the-art libraries (e.g., PyTorch Geometric and Deep Graph Library) have been developed for executing GNNs on general-purpose processors, including CPUs and GPGPUs. However, current GNN libraries on general-purpose processors achieve sub-optimal performance due to several challenges: 1. Irregular data structures: graphs in real-world applications are highly unstructured, with uneven degree distribution. Such irregularity leads to complex data access patterns. 2. Heterogeneous computation kernels: GNNs involve both sparse computation kernels (e.g., sparse-dense matrix multiplication) and dense computation kernels (dense-dense matrix multiplication). While general-purpose processors are efficient for dense computations, their data path and memory hierarchy are inefficient for sparse computations. 3. Dynamic data sparsity: In many applications, the graph connectivity and the data sparsity of vertex features are unknown before executing the GNN model. Therefore, a GNN system needs to deal with the data sparsity of the graphs dynamically. Such dynamic data sparsity makes it difficult for the compiler and runtime system to generate an optimal execution scheme for GNNs. 4. Mixture of models: Some GNN-based applications use the combined strength of different machine learning models. For example, GNN-based computer vision tasks utilize a mixture of convolutional neural networks (CNNs) and GNN models. Such a combination leads to complex data flow.In this dissertation, we address the above challenges through novel hardware-software codesigns on Field Programmable Gate Array (FPGA). First, to address the challenges of irregular data structures and heterogeneous computation kernels, we develop a hardware-software codesign on FPGA for GNN inference, named GraphAGILE. GraphAGILE incorporates a compiler and an accelerator design on FPGA. For a given input GNN model and an input graph, the compiler translates them into the intermediate representation (IR). Then, the compiler performs several compiler optimizations and generates a sequence of instructions for hardware execution. The hardware accelerator on FPGA executes various computation kernels through flexible customized data paths and memory organization. Second, we propose Dynasparse, an efficient codesign of runtime system and hardware to exploit the dynamic sparsity in GNN inference. The hardware design of Dynasparse has a flexible data path to execute the computation kernels of various data sparsity. The runtime system utilizes a theoretical performance model to dynamically map a GNN computation kernel to the computation primitive based on data sparsity. Third, we propose GCV-Turbo, a hardware-software codesign accelerating GNN-based computer vision (CV) tasks. GNN-based CV tasks involve a mixture of GNN layers and CNN layers. To this end, GCV-Turbo incorporates novel compiler optimizations to orchestrate the dataflow of two types of models. GCV-Turbo further incorporates novel hardware mechanisms to facilitate efficient data layout transformation between different layers. Our implementations based on our codesign methodology achieve superior performance on various GNN-based applications.
- 일반주제명
- Computer engineering
- 일반주제명
- Computer science
- 키워드
- Compiler
- 키워드
- Runtime
- 기타저자
- University of Southern California Computer Engineering
- 기본자료저록
- Dissertations Abstracts International. 86-02B.
- 전자적 위치 및 접속
- 로그인 후 원문을 볼 수 있습니다.
MARC
008250123s2024 us c eng d■001000017163591
■00520250211152728
■006m o d
■007cr#unu||||||||
■020 ▼a9798383689035
■035 ▼a(MiAaPQ)AAI31490494
■040 ▼aMiAaPQ▼cMiAaPQ
■0820 ▼a621.3
■1001 ▼aZhang, Bingyi.
■24510▼aHardware-Software Codesign for Accelerating Graph Neural Networks on FPGA
■260 ▼a[Sl]▼bUniversity of Southern California▼c2024
■260 1▼aAnn Arbor▼bProQuest Dissertations & Theses▼c2024
■300 ▼a156 p
■500 ▼aSource: Dissertations Abstracts International, Volume: 86-02, Section: B.
■500 ▼aAdvisor: Prasanna, Viktor.
■5021 ▼aThesis (Ph.D.)--University of Southern California, 2024.
■520 ▼aGraph Neural Networks (GNNs) have revolutionized many real-world applications where data can be represented as graphs. These applications include recommendation systems, social networks, traffic prediction, computer vision tasks (e.g., the tasks in autonomous driving), etc. Many applications require high-performance execution (e.g., low latency or high throughput) of GNNs. To this end, several state-of-the-art libraries (e.g., PyTorch Geometric and Deep Graph Library) have been developed for executing GNNs on general-purpose processors, including CPUs and GPGPUs. However, current GNN libraries on general-purpose processors achieve sub-optimal performance due to several challenges: 1. Irregular data structures: graphs in real-world applications are highly unstructured, with uneven degree distribution. Such irregularity leads to complex data access patterns. 2. Heterogeneous computation kernels: GNNs involve both sparse computation kernels (e.g., sparse-dense matrix multiplication) and dense computation kernels (dense-dense matrix multiplication). While general-purpose processors are efficient for dense computations, their data path and memory hierarchy are inefficient for sparse computations. 3. Dynamic data sparsity: In many applications, the graph connectivity and the data sparsity of vertex features are unknown before executing the GNN model. Therefore, a GNN system needs to deal with the data sparsity of the graphs dynamically. Such dynamic data sparsity makes it difficult for the compiler and runtime system to generate an optimal execution scheme for GNNs. 4. Mixture of models: Some GNN-based applications use the combined strength of different machine learning models. For example, GNN-based computer vision tasks utilize a mixture of convolutional neural networks (CNNs) and GNN models. Such a combination leads to complex data flow.In this dissertation, we address the above challenges through novel hardware-software codesigns on Field Programmable Gate Array (FPGA). First, to address the challenges of irregular data structures and heterogeneous computation kernels, we develop a hardware-software codesign on FPGA for GNN inference, named GraphAGILE. GraphAGILE incorporates a compiler and an accelerator design on FPGA. For a given input GNN model and an input graph, the compiler translates them into the intermediate representation (IR). Then, the compiler performs several compiler optimizations and generates a sequence of instructions for hardware execution. The hardware accelerator on FPGA executes various computation kernels through flexible customized data paths and memory organization. Second, we propose Dynasparse, an efficient codesign of runtime system and hardware to exploit the dynamic sparsity in GNN inference. The hardware design of Dynasparse has a flexible data path to execute the computation kernels of various data sparsity. The runtime system utilizes a theoretical performance model to dynamically map a GNN computation kernel to the computation primitive based on data sparsity. Third, we propose GCV-Turbo, a hardware-software codesign accelerating GNN-based computer vision (CV) tasks. GNN-based CV tasks involve a mixture of GNN layers and CNN layers. To this end, GCV-Turbo incorporates novel compiler optimizations to orchestrate the dataflow of two types of models. GCV-Turbo further incorporates novel hardware mechanisms to facilitate efficient data layout transformation between different layers. Our implementations based on our codesign methodology achieve superior performance on various GNN-based applications.
■590 ▼aSchool code: 0208.
■650 4▼aComputer engineering
■650 4▼aComputer science
■653 ▼aCompiler
■653 ▼aComputer architecture
■653 ▼aGraph Neural Network
■653 ▼aRuntime
■653 ▼aAutonomous driving
■690 ▼a0464
■690 ▼a0984
■71020▼aUniversity of Southern California▼bComputer Engineering.
■7730 ▼tDissertations Abstracts International▼g86-02B.
■790 ▼a0208
■791 ▼aPh.D.
■792 ▼a2024
■793 ▼aEnglish
■85640▼uhttp://www.riss.kr/pdu/ddodLink.do?id=T17163591▼nKERIS▼z이 자료의 원문은 한국교육학술정보원에서 제공합니다.


