Programming Models, Languages and APIs
An Overview: Models and Languages for Parallel Computation, by David B. Skillicorn , Domenico Talia
APIs
Cooperative Data Sharing (CDS)
Data Reorganisation
GPUs
CUDA
General
What is CUDA
CUDA GPUs
CUDA FAQ
Porting CUDA to OpenCL
CUDA Documentation
CUDA C Programming Guide
(
PDF
)
CUDA-GDB
(
PDF
)
CUDA Runtime API
(
PDF
)
Nsight Eclipse Edition Getting Started Guide
(
PDF
)
Profiler
(
PDF
)
CUDA Toolkit
CUDA Downloads
CUDA Toolkit Archive
CUDA Toolkit 4.2
CUDA Tools & Ecosystem
Languages & APIs
CUDA LLVM Compiler
OpenCL
NVIDIA System Management Interface (nvidia-smi)
Performance Analysis Tools
Profiler User's Guide
Visual Profiler
GPU Technology Conference
GTC Learning Center
GTC On-Demand
Optimizing Application Performance with CUDA Profiling Tools
, David Goodwin, GTC 2012
Performance Optimization Using the NVIDIA Visual Profiler
, Sanjiv Satoor, GTC Asia 2011
NVIDIA Developer Blog
Introductions
An Even Easier Introduction to CUDA
Grid-Stride Loops
An Easy Introduction to CUDA C and C++
Other
Programming Tensor Cores in CUDA 9
Unified Memory in CUDA 6
Wikipedia
GPUs supported
OpenCL
Events
IWOCL - OpenCL Conference, Workshops and Community
IWOCL 2016 Sessions
General
Wikipedia
Learning
Book
The OpenCL Programming Book
FREE HTML version
Short Introductions
Getting started with OpenCL and GPU Computing - Erik Smistad
CodePlex - OpenCL Tutorials 1 - Quickstart
Simple Introductions
Dr. Dobb's - A Gentle Introduction to OpenCL
OpenCL - Parallel Computing on the GPU and CPU - Aaftab Munshi, SIGGRAPH2008
Tutorials
Hands On OpenCL - An open source two-day lecture course for teaching and learning OpenCL
Libraries
clFFT
Documentation
Google Groups
Installation instructions for clFFT
Releases
Wiki
Building with CMake
Client program & performance
Performance scripts
OpenCL Fast Fourier Transform - Ruobing Li
Paper
Source code
OpenCL_FFT
Fitting FFT onto the G80 Architecture
OpenCL - Parallel Computing on the GPU and CPU
Lists of Resources
Libraries and Toolkits
Tools, SDKs & Libraries
Specification
Khronos OpenCL API Registry
OpenCL 2.2 Specification
OpenCL 2.1 Specification
OpenCL 2.0 Specification
OpenCL 1.2 Specification
OpenCL 1.1 Specification
OpenCL 1.0 Specification
SPIR - Standard Portable Intermediate Representation
FAQ
Wikipedia
Tools
Debugging
CodeXL
Profiling
Radeon Compute Profiler (RCP)
Radeon GPU Analyzer (RGA)
CodeXL
Visualising OpenCL Timelines with NVVP
OpenACC
Wikipedia
OpenHMPP
Wikipedia
HPC++
Fast Messages (FM)
JavaSpaces
JavaSpaces Specification
MapReduce
Apache Hadoop
Introduction to Parallel Programming and MapReduce
MapReduce: A major step backwards
MapReduce Online
HOP - Hadoop Online Prototype
MPI
The MPI Forum
MPI Documents
MPI Forum Meetings
General Information
MPI Home Page, Argonne
Historical Perspective
MPI Is 25 Years Old!
How to Replace MPI as the Programming Model of the Future
Implementations
Adaptive Message Passing Interface (AMPI)
LAM/MPI
MP-MPICH
MPICH
MPICH2
MPI/Pro
MPI/SX
MPI-2 C++ Bindings
Multithreaded MPICH
PaTENT MPI 4.0
WMPI
The WINPAR Project
MPI under Windows NT
Current status of available Environments (July '98)
Further Investigations (Sept. '98)
Books
Using MPI: Portable Parallel Programming with the Message-Passing Interface
Using MPI-2: Advanced Features of the Message-Passing Interface
I/O
Integrated Computing & Communications Scalable I/O Project
ROMIO
Extensions to MPI
Java
Development Routes for Message Passing Parallelism in Java
mpiJava
MATLAB
CMTM - Cornell Mutitask Toolbox for MATLAB
Object Oriented
MPI++
mpi++
OOMPI
Real Time
MPI/RT
Inertia
Test Suites
LLNL I/O test program
Topics
Task Farming & the Message Passing Interface
Tutorials
A List of Tutorials
Beginners Guide to MPI Message Passing Interface - JICS
MPI-2 by Bill Saphir
Open MP
cOMPunity
PVM
PVM and MPI: A Comparison of Features
Running MATLAB programs in parallel with PVM
VSIPL - Vector Signal Image Processing Library
Languages
Data Parallel Haskell
HPF
ADAPTOR (HPF Compilation System)
shpf: a Subset High Performance Fortran compilation system
Tutorials
High Performance Fortran MiniCourse
HPJava
Linda
FAQ
Manual
Tutorial
MPC++
Multilisp
The future construct
(
PostScript
)
NESL
Wikipedia
Occam
Fred Barnes' occam tutorial
WoTUG occam pages
UPC
ZPL
Models
Action Calculi
CCS
Introduction to a Calculus of Communicating Systems
The Edinburgh Concurrency Workbench
What is CCS and CWB?
CSP
Communicating Sequential Processes for Java (JCSP)
Pi-Calculus
Book: The pi-calculus: a Theory of Mobile Processes
Calculi for Mobile Processes
Pi-Calculus Links
The Polyadic pi-Calculus: A Tutorial
Last updated on
by
Ian Glendinning