Optimization Techniques for GPU Programming
54
TL;DR: In this article , a survey discusses various optimization techniques found in 450 articles published in the last 14 years and analyzes the optimizations from different perspectives which shows that the various optimizations are highly interrelated, explaining the need for techniques such as auto-tuning.
read more
Abstract: In the past decade, Graphics Processing Units have played an important role in the field of high-performance computing and they still advance new fields such as IoT, autonomous vehicles, and exascale computing. It is therefore important to understand how to extract performance from these processors, something that is not trivial. This survey discusses various optimization techniques found in 450 articles published in the last 14 years. We analyze the optimizations from different perspectives which shows that the various optimizations are highly interrelated, explaining the need for techniques such as auto-tuning.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
ACC Saturator: Automatic Kernel Optimization for Directive-Based GPU Code
TL;DR: In this paper , the authors propose equality saturation to optimize sequential codes utilized in directive-based programming for GPUs, which simultaneously realizes less computation, less memory access, and high memory throughput.
Efficient GPU acceleration for phase unwrapping algorithm
Yuhang Li,Sen Han,Xueyuan Li,Chunfen Xu +3 more
- 29 Nov 2023
TL;DR: This study uses CPU-GPU heterogeneous computing to parallelize and accelerate the Goldstein phase unwrapping algorithm while maintaining acceptable numerical error limits and achieves a 60x speed increase in the overall process compared to the CPU version.
Descend: A Safe GPU Systems Programming Language
TL;DR: Descend as mentioned in this paper is a safe GPU system programming language based on the Rust type system that allows safe CPU and GPU memory management by tracking Ownership and Lifetimes, and extended borrow checking ensures that execution resources safely access memory regions without data races.
LiDAR Sensor Simulation in Unity: Real-Time Performance for Autonomous Systems and Virtual Environments
Mahesh Kumar Gaddam,Sonu Kapoor,Jagadeesh Vedula,Mehul Manu,Maryam Ahmad Usmani,Sultonmakhmud Polvanov +5 more
- 04 Jul 2025
TL;DR: This paper proposes a GPU-implemented LiDAR sensor simulation environment in Unity, achieving real-time performance with 4-10x point cloud generation efficiency and 1M points/second frame rates, suitable for autonomous systems, robotics, and virtual reality applications.
GSParLib: A multi-level programming interface unifying OpenCL and CUDA for expressing stream and data parallelism
Dinei A. Rockenbach,Gabriell Araujo,Dalvan Griebler,Luiz Gustavo Fernandes +3 more
References
Deep learning
TL;DR: Deep learning is making major advances in solving problems that have resisted the best attempts of the artificial intelligence community for many years, and will have many more successes in the near future because it requires very little engineering by hand and can easily take advantage of increases in the amount of available computation and data.
67K
A Proof for the Queuing Formula: L = λW
TL;DR: In this paper, it was shown that if the three means are finite and the corresponding stochastic processes strictly stationary, and if the arrival process is metrically transitive with nonzero mean, then L = λW.
2.7K
Roofline: an insightful visual performance model for multicore architectures
TL;DR: The Roofline model offers insight on how to improve the performance of software and hardware in the rapidly changing world of connected devices.
NVIDIA Tesla: A Unified Graphics and Computing Architecture
TL;DR: To enable flexible, programmable graphics and high-performance computing, NVIDIA has developed the Tesla scalable unified graphics and parallel computing architecture, which is massively multithreaded and programmable in C or via graphics APIs.
Halide: a language and compiler for optimizing parallelism, locality, and recomputation in image processing pipelines
Jonathan Ragan-Kelley,Connelly Barnes,Andrew Adams,Sylvain Paris,Frédo Durand,Saman Amarasinghe +5 more
- 16 Jun 2013
TL;DR: A systematic model of the tradeoff space fundamental to stencil pipelines is presented, a schedule representation which describes concrete points in this space for each stage in an image processing pipeline, and an optimizing compiler for the Halide image processing language that synthesizes high performance implementations from a Halide algorithm and a schedule are presented.
1.2K