PofoliaPofolia ile paylaşıldı

· 2012

GPU kodlarına hedeflenen üst düzey bir dilin otomatik ayarlanması

Auto-tuning a high-level language targeted to GPU codes

Scott Grauer-Gray, Lifan Xu, Robert Searles, Sudhee Ayalasomayajula ve diğerleri

Kısa özet

Otomatik ayarlama, HMPP üst düzey dilinden üretilen GPU çekirdeklerinin performansını önemli ölçüde artırarak, elle kodlanmış CUDA/OpenCL ile eşleşiyor veya aşıyor.

Yapay zekâ ile başlık ve abstract'tan üretildi; tam metin okunmaz.

Ana noktalar

  • Otomatik ayarlama, üst düzey HMPP dilinde yazılmış GPU çekirdeklerinin performansını iyileştirir.
  • Otomatik ayarlama süreci döngü permütasyonu, döngü açma, döşeme ve paralelleştirme stratejilerini inceledi.
  • Otomatik ayarlanmış HMPP uygulamaları, varsayılan HMPP sürümlerinden önemli ölçüde daha hızlıydı.
  • Otomatik ayarlanmış HMPP kodunun performansı, manuel olarak kodlanmış CUDA/OpenCL uygulamalarının performansına ulaştı veya aştı.

Yapay zekâ ile başlık ve abstract'tan üretildi; tam metin okunmaz.

Özet (abstract)

Determining the best set of optimizations to apply to a kernel to be executed on the graphics processing unit (GPU) is a challenging problem. There are large sets of possible optimization configurations that can be applied, and many applications have multiple kernels. Each kernel may require a specific configuration to achieve the best performance, and moving an application to new hardware often requires a new optimization configuration for each kernel. In this work, we apply optimizations to GPU code using HMPP, a high-level directive-based language and source-to-source compiler that can generate CUDA / OpenCL code. However, programming with high-level languages may mean a loss of performance compared to using low-level languages. Our work shows that it is possible to improve the performance of a high-level language by using auto-tuning. We perform auto-tuning on a large optimization space on GPU kernels, focusing on loop permutation, loop unrolling, tiling, and specifying which loop(s) to parallelize, and show results on convolution kernels, codes in the PolyBench suite, and an implementation of belief propagation for stereo vision. The results show that our auto-tuned HMPP-generated implementations are significantly faster than the default HMPP implementation and can meet or exceed the performance of manually coded CUDA / OpenCL implementations.

Yazarların özeti; kaynağından alınmıştır., 2012 · DOI ↗

ÇıkarımlarPremium
Makaleye SorÜcretsiz hesapla

Ücretsiz hesapla devam et

Makaleye Sor ile bu makaleye günde 3 soru ücretsiz; makaleyi kaydet, kaynakçasını al, ilgi alanına göre her gün yeni özetler. Çıkarımlar Premium.

Web'de ücretsiz devam et

Google ya da Apple hesabınla giriş; kart istemez. Bu makaleye geri dönersin.

Telefonda:

Alan: Donanım ve Mimari

Hardware and ArchitectureComputer Science