Using Shared Memory in CUDA C/C++ | NVIDIA Technical Blog
In the previous post, I looked at how global memory accesses by a group of threads can be coalesced into a single transaction, and how alignment and stride affect coalescing for various generations of…
Using Shared Memory in CUDA C/C++ | NVIDIA Technical Blog Technical Blog Subscribe Related Resources Models / Libraries / Frameworks English 中文 Using Shared Memory in CUDA C/C++ Jan 28, 2013 By Mark Harris Like Discuss (36) L T F R E AI-Generated Summary Like Dislike Shared memory is a fast, on-chip memory in CUDA that is allocated per thread block and can be used to facilitate global memory coalescing and enable thread cooperation. To avoid race conditions when sharing data between threads, CUDA provides a barrier synchronization primitive, __syncthreads(), which ensures that all threads in a
related reading
- How to Optimize a CUDA Matmul Kernel for cuBLAS-like Performance: a Worklogsiboehm.com
- CUDA C++ Programming Guide (Legacy) — CUDA C++ Programming Guidedocs.nvidia.com
- An Even Easier Introduction to CUDA (Updated) | NVIDIA Technical Blogdeveloper.nvidia.com
- An Easy Introduction to CUDA C and C++developer.nvidia.com
- Inside NVIDIA GPUs: Anatomy of high performance matmul kernels - Aleksa Gordićaleksagordic.com
- What happens when you run a CUDA kernelfergusfinn.com
- Mini Project: GPU Accelerated Matrix Multiplication (almost) like cuBLAS0mean1sigma.com
- CUDA Programming Guide — CUDA Programming Guidedocs.nvidia.com
- Writing CUDA Kernels - Numba 0+untagged.622.gaacf444.dirty documentationnumba.readthedocs.io
- C++11 Memory Modelpeople.cs.pitt.edu
- Matrix Multiplication CUDA - ECA - GPU 2018-2019ecatue.gitlab.io
- Worklog: Optimising GEMM on NVIDIA H100 for cuBLAS-like Performance (WIP) – Hamza's Bloghamzaelshafie.bearblog.dev