Skip to main content
QUICK REVIEW

[논문 리뷰] GraphCage: Cache Aware Graph Processing on GPUs

Xuhao Chen|arXiv (Cornell University)|2019. 04. 03.
Graph Theory and Algorithms참고 문헌 36인용 수 4
한 줄 요약

GraphCage는 GPU 기반 그래프 처리를 위한 캐시 인지 최적화 프레임워크로, 데이터 국소성을 향상시키고 메모리 지연을 줄이기 위해 처리량 중심의 캐시 블로킹 기법(TOCAB)을 도입한다. CSR 기반 그래프 표현과 함께 GPU의 최종 레벨 캐시(LLC)를 활용하고 로드 밸런싱과 조율함으로써, 수동 최적화된 구현 및 Gunrock, CuSha와 같은 최신 프레임워크보다 2–4배 빠른 성능을 달성하면서도 메모리 사용량을 낮춘다.

ABSTRACT

Efficient Graph processing is challenging because of the irregularity of graph algorithms. Using GPUs to accelerate irregular graph algorithms is even more difficult to be efficient, since GPU's highly structured SIMT architecture is not a natural fit for irregular applications. With lots of previous efforts spent on subtly mapping graph algorithms onto the GPU, the performance of graph processing on GPUs is still highly memory-latency bound, leading to low utilization of compute resources. Random memory accesses generated by the sparse graph data structure are the major causes of this significant memory access latency. Simply applying the conventional cache blocking technique proposed for matrix computation have limited benefit due to the significant overhead on the GPU. We propose GraphCage, a cache centric optimization framework for highly efficient graph processing on GPUs. We first present a throughput-oriented cache blocking scheme (TOCAB) in both push and pull directions. Comparing with conventional cache blocking which suffers repeated accesses when processing large graphs on GPUs, TOCAB is specifically optimized for the GPU architecture to reduce this overhead and improve memory access efficiency. To integrate our scheme into state-of-the-art implementations without significant overhead, we coordinate TOCAB with load balancing strategies by considering the sparsity of subgraphs. To enable cache blocking for traversal-based algorithms, we consider the benefit and overhead in different iterations with different working set sizes, and apply TOCAB for topology-driven kernels in pull direction. Evaluation shows that GraphCage can improve performance by 2 ~ 4x compared to hand optimized implementations and state-of-the-art frameworks (e.g. CuSha and Gunrock), with less memory consumption than CuSha.

연구 동기 및 목표

  • 희박한 그래프 워크로드에서 발생하는 비정규적이고 랜덤한 메모리 접근으로 인한 낮은 데이터 국소성 문제 해결.
  • 기존 GPU 캐시 블로킹 기법의 한계를 극복하기 위해, 과도한 오버헤드와 비효율적 메모리 접근 패턴을 야기하는 문제 해결.
  • 성능 저하 없이 메모리 프로파일 증가 없이 GPU에 최적화된 캐시 블로킹 기법 설계.
  • 반복 과정에서 하위 그래프의 희박성과 워킹 세트 크기가 변하는 것을 고려해 캐시 블로킹과 로드 밸런싱 전략을 통합.
  • 풀 기반 커널에서 동적으로 변화하는 워킹 세트에 대응하기 위해 차별화된 블로킹 전략을 적용해 트래버스 기반 그래프 알고리즘에서 효과적인 캐시 활용 보장.

제안 방법

  • GPU에서 메모리 접근 효율을 향상시키기 위해 희박한 글로벌 메모리 접근을 조밀한 부분 합 접근으로 대체하는 처리량 중심의 캐시 블로킹(TOCAB) 기법 제안.
  • 공유 메모리에 의존하지 않고 GPU의 최종 레벨 캐시(LLC)를 워킹 세트 캐시로 활용하여 과도한 하위 그래프 분할로 인한 오버헤드 방지.
  • 이전 프레임워크인 CuSha에서 사용된 COO 기반 표현 방식과 대비해 CSR(압축 희박 행) 형식을 채택해 글로벌 메모리 사용량 최소화.
  • 하위 그래프의 희박성 분석을 통해 TOCAB와 동적 로드 밸런싱을 조율하여 GPU 워프 간 로드 불균형 최소화.
  • 반복 과정에서 워킹 세트 크기가 크게 변화하는 풀 모드 트래버스 커널에만 TOCAB를 선택적으로 적용해 캐시 이득 극대화.
  • GPU 메모리 계층과 캐시 라인 크기에 맞춰 데이터 접근 패턴을 정렬함으로써 반복적인 캐시 미스를 방지하는 정적 캐시 블로킹 전략 설계.

실험 결과

연구 질문

  • RQ1메모리 프로파일 증가 없이 GPU 기반 그래프 처리에서 캐시 인지 최적화 프레임워크가 데이터 국소성 향상과 메모리 지연 감소에 기여할 수 있는가?
  • RQ2제한된 공유 메모리와 희박 그래프에서 높은 영향을 미치는 랜덤 접근을 고려할 때, 캐시 블로킹이 GPU의 메모리 계층에 효과적으로 적응할 수 있는가?
  • RQ3다양한 희박성과 동적 워킹 세트 크기를 가지는 비정규적 그래프 워크로드에서 캐시 블로킹과 로드 밸런싱을 조율할 경우 성능에 어떤 영향을 미치는가?
  • RQ4기존의 캐시 블로킹 기법과 기존 GPU 그래프 프레임워크에 비해 TOCAB는 성능 향상과 메모리 효율성 측면에서 어떤 차이를 보이는가?
  • RQ5특히 아키텍처 기반 커널에서, TOCAB는 푸시 및 풀 방향 양쪽에 효과적으로 적용될 수 있는가?

주요 결과

  • GraphCage는 다양한 실세계 그래프에서 Gunrock, 최신 기술 수준의 GPU 그래프 처리 프레임워크보다 최대 4배 빠른 성능을 달성한다.
  • GraphCage는 그래프 알고리즘의 수동 최적화된 GPU 구현체 대비 2–4배 성능 향상을 보인다.
  • COO 형식이 아닌 CSR 형식을 사용함으로써 CuSha 대비 메모리 소비를 감소시켰으며, COO의 2.5배 메모리 오버헤드를 피할 수 있었다.
  • TOCAB 기법은 희박한 접근을 조밀한 부분 합 연산으로 변환함으로써 캐시 미스를 크게 감소시키고 메모리 접근 효율을 향상시켰다.
  • TOCAB와 로드 밸런싱의 조율을 통해 희박성과 동적 워킹 세트 크기가 변하는 그래프에서도 효과적인 성능 스케일링이 가능했다.
  • GraphCage는 일반적으로 동기화 용도로만 사용된다고 여겨지는 최종 레벨 캐시(LLC)가 GPU 그래프 처리에서 워킹 세트 캐시로 효과적으로 활용될 수 있음을 입증했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.