KernelTuner/kernel_tuner

Kernel Tuner

What it solves

Kernel Tuner는 GPU 커널을 독립적으로 벤치마크하고 최적화하기 위해 설계된 외부 도구입니다. GPU 코드의 최대 성능을 달성하기 위해 수동으로 시행착오를 거치는 과정을 제거하여, 개발자가 다양한 하드웨어와 프로그래밍 언어에 걸쳐 커널에 대한 최적의 파라미터를 찾을 수 있도록 합니다.

How it works

이 도구는 GPU 커널을 가능한 파라미터(예: 블록 크기)의 탐색 공간으로 취급합니다. 그런 다음 20개 이상의 최적화 알고리즘 중 하나를 사용하여 이러한 파라미터를 검색하여 최고의 성능을 내는 구성을 찾습니다. 광범위한 변경 없이 기존 코드에 통합할 수 있으며 CUDA, HIP, OpenCL, OpenACC, OpenMP를 포함한 여러 GPU 프로그래밍 언어를 지원합니다.

Who it’s for

고성능 GPU 애플리케이션을 작성하고 속도, 에너지 효율성 또는 정확도(혼합 정밀도)를 위해 커널을 최적화해야 하는 개발자와 연구자.

Highlights

  • Multi-language support: CUDA, HIP, OpenCL, OpenACC, OpenMP와 함께 작동합니다.
  • Broad optimization goals: 실행 시간, 에너지 소비(전력 제한 및 클록 주파수 튜닝을 통해) 및 정확도를 위한 튜닝을 지원합니다.
  • Extensive algorithm library: 튜닝 프로세스를 가속화하기 위해 20개 이상의 다양한 최적화 알고리즘을 포함합니다.
  • Verification: 최적화된 커널이 올바른 상태를 유지하는지 확인하기 위한 내장된 출력 검증 기능이 포함되어 있습니다.
  • Flexible integration: 어떤 호스트 프로그래밍 언어로 작성된 애플리케이션과도 함께 사용할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트