Everything about Parallel Thread Execution
Low-level parallel thread execution virtual machine and instruction set architecture
Parallel Thread Execution is a low-level parallel thread execution virtual machine and instruction set architecture used in Nvidia's Compute Unified Device Architecture (CUDA) programming environment. The LLVM-based Nvidia CUDA Compiler (NVCC) translates code written in OpenCL C and CUDA C/C++ into PTX instructions, and the graphics driver contains a compiler which translates PTX instructions into executable binary code, which can run on the processing cores of Nvidia graphics processing units (GPUs). Inline PTX assembly can be used in CUDA and OpenCL. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Parallel Thread ExecutionA 5-minute orientation
- Skim a recent paper: A new thread-level speculative automatic parallelization model and library based on duplicate code executionInfluential work since 2022
- Pick up a classic book: Using MPIThe most-reprinted book on the subject
- Read the landmark paper: Coarse-grained thread pipelining: a speculative parallel execution model for shared-memory multiprocessorsCited 13 times
- Go sideways: Nvidia CUDA CompilerA closely related topic
- Go sideways: CUDAA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Coarse-grained thread pipelining: a speculative parallel execution model for shared-memory multiprocessors
Massively Parallel Rule-Based Interpreter Execution on GPUs Using Thread Compaction
Evaluation of Thread Scalability and Compiler Optimization in Parallel Job Execution Using Unity’s Job System
🆕 Influential since 2022
📚 Books worth reading
Using MPIWilliam Gropp, Ewing Lusk · 1994
Pthreads programmingBradford Nichols, Dick Buttlar · 1996
The Conspirators HierarchyJohn Coleman · 1992
Treaty Occupationay ToxicologySuelen Queiroz · 2010
Parallel Programming in C with MPI and OpenMPMichael J. Quinn · 2003
Programming Massively Parallel ProcessorsDavid Kirk, Wen-Mei W. Hwu · 2010
C# 4.0 in a nutshellJoseph Albahari · 2010
C# 4.0 unleashedBart De Smet · 2011
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Nvidia CUDA Compiler Nvidia CUDA Compiler (NVCC) is a compiler by Nvidia intended for use with CUDA. It is proprietary software. CUDA code runs on both the central processing…
- CUDA CUDA (Compute Unified Device Architecture) is a proprietary parallel computing platform and application programming interface (API) developed by Nvidia…
- Fermi (microarchitecture) Fermi is the codename for a graphics processing unit (GPU) microarchitecture developed by Nvidia, released to retail in April 2010 as the successor to…
- ROCm ROCm is an Advanced Micro Devices (AMD) software stack for graphics processing unit (GPU) programming. ROCm spans several domains, including general-purpose…
- Thread block (CUDA programming) A thread block is a programming abstraction that represents a group of threads that can be executed serially or in parallel. For better process and data…
- Kepler (microarchitecture) Kepler is the codename for a GPU microarchitecture developed by Nvidia, first introduced at retail in April 2012, as the successor to the Fermi microarchitectur…
- Single instruction, multiple data Single instruction, multiple data (SIMD) is a type of parallel computing (processing) in Flynn's taxonomy. SIMD describes computers with multiple processing…
- OpenCL OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units…