Toward Techniques for Auto-tuning GPU Algorithms

  • Andrew Davidson
  • John Owens
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7134)


We introduce a variety of techniques toward autotuning data-parallel algorithms on the GPU. Our techniques tune these algorithms independent of hardware architecture, and attempt to select near-optimum parameters. We work towards a general framework for creating auto-tuned data-parallel algorithms, using these techniques for common algorithms with varying characteristics. Our contributions include tuning a set of algorithms with a variety of computational patterns, with the goal in mind of building a general framework from these results. Our tuning strategy focuses first on identifying the computational patterns an algorithm shows, and then reducing our tuning model based on these observed patterns.


GPU Computing Auto-Tuning Algorithms Data-Parallel Programming CUDA 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Chien, L.S.: Hand-Tuned SGEMM On GT200 GPU. Technical Report, Tsing Hua University (2010),
  2. 2.
    Kerr, A., Diamos, G., Yalamanchili, S.: Modeling GPU-CPU Workloads and Systems. In: GPGPU 2010: Proceedings of the 3rd Workshop on General-Purpose Computation on Graphics Processing Units, pp. 31–42. ACM, New York (2010)Google Scholar
  3. 3.
    Li, Y., Dongarra, J., Tomov, S.: A Note on Auto-Tuning GEMM for GPUs. In: Allen, G., Nabrzyski, J., Seidel, E., van Albada, G.D., Dongarra, J., Sloot, P.M.A. (eds.) ICCS 2009. LNCS, vol. 5544, pp. 884–892. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  4. 4.
    Liu, Y., Zhang, E., Shen, X.: A Cross-Input Adaptive Framework for GPU Program Optimizations. In: IPDPS 2009: Proceedings of the 2009 IEEE International Symposium on Parallel and Distributed Processing, pp. 1–10. IEEE Computer Society Press, Washington, DC (2009)CrossRefGoogle Scholar
  5. 5.
    Ryoo, S., Rodrigues, C.I., Stone, S.S., Baghsorkhi, S.S., Ueng, S.Z., Stratton, J.A., Hwu, W.W.: Program Optimization Space Pruning for a Multithreaded GPU. In: CGO 2008: Proceedings of the Sixth Annual IEEE/ACM International Symposium on Code Generation and Optimization, pp. 195–204 (April 2008)Google Scholar
  6. 6.
    Volkov, V., Demmel, J.W.: Benchmarking gpus to tune dense linear algebra. In: SC 2008: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing, pp. 1–11. IEEE Press, Piscataway (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Andrew Davidson
    • 1
  • John Owens
    • 1
  1. 1.University of CaliforniaDavisUSA

Personalised recommendations