Find information on common issues.
Ask questions and find answers from other users.
Suggest a new site feature or improvement.
Check on status of your tickets.
A parallel programming model is a set of software technologies to express parallel algorithms and match applications with the underlying parallel systems. It encloses the areas of applications, programming languages, compilers, libraries, communications systems, and parallel I/O. Due to the difficulties in automatic parallelization today, people have to choose a proper parallel programming model or a form of mixture of them to develop their parallel applications on a particular platform.
Learn more about quantum dots from the many resources on this site, listed below. More information on Parallel Programming can be found here.
Mathematica for CUDA and OpenCL Programming
07 Mar 2011 | | Contributor(s):: Ulises Cervantes-Pimentel, Abdul Dakkak
In the latest release of Mathematica 8, a large number of programming tools for GPU computing are available. In this presentation, new tools for CUDA and OpenCL programming will be explored. Several applications, including image processing, medical imaging, multi-gpu, statistics and finance will...
Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 10: Control Flow
01 Sep 2009 | | Contributor(s):: Wen-Mei W Hwu
Control FlowTopics: Terminology Review How Thread Blocks are Partitioned Control Flow Instructions Parallel Reduction A Vector Reduction Example A simple Implementation Vector Reduction With Bank Conflicts Vector Reduction With Branch Divergence Predicted Execution Concept Instruction Prediction...
Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 9: Memory Hardware in G80
30 Aug 2009 | | Contributor(s):: Wen-Mei W Hwu
Memory Hardware in G80Topics: CUDA Device Memory Space Parallel Memory Sharing SM Memory Architecture SM Register File Programmer view of Register File Matrix Multiplication Example More on Dynamic Partitioning ILP vs. TLP Memory Layout of a Matrix in C Constants Shared Memory Parallel Memory...
Illinois ECE 498AL: Programming Massively Parallel Processors, Lecture 6: CUDA Memories - Part 2
20 Aug 2009 | | Contributor(s):: Wen-Mei W Hwu
CUDA Memories Part2Topics: Tiled Multiply Breaking Md and Nd into Tiles Tiled Matrix Multiplication Kernel CUDA Code - Kernel Execution Configuration First Order Size considerations in G80 G80 Shared Memory and Threading Tiling Size Effects Typical Structure of a CUDA ProgramThese lecture were...
The Multicore Era: Crisis or (and?) Opportunity?
27 Mar 2009 | | Contributor(s):: Mithuna Thottethodi
This talk will provide a brief overview of how we got to the multicore era, the implications and challenges for hardware/software developers and users, and some informed speculation on where the trends may be headed.
MPI for the Next Generation of Supercomputing
out of 5 stars
05 Dec 2008 | | Contributor(s):: Andrew Lumsdaine
Despite premature rumours of its demise, MPI continues to be the de facto standard for high-performance parallel computing. Nonetheless, supercomputing software and the high-end ecosystem continue to advance, creating challenges to several aspects of MPI. In this talk we will review the design...
25 Nov 2008 | | Contributor(s):: Seung-Jai Min
This tutorial consists of three parts. First, we will discuss abouthow OpenMP is typically used and explain OpenMP programming model. Second, we will describe important OpenMP constructs and data enviroments. Finally, we will show a simple example to illustrate how OpenMP APIs are used to...
Introduction to Parallel Programming with MPI
24 Nov 2008 | | Contributor(s):: David Seaman
Single-session course illustrating message-passing techniques. The examples include point-to-point and collective communication using blocking and nonblocking transmission. One application illustrates the manager/worker model with buffered communications. Code examples provided in C, C++,...
Software Productivity Tools
This presentation briefly describes the use of tar(1), make(1), the Portable Batch System (PBS), and two version control systems: CVS and subversion.
Introduction to TotalView
This single-session course presents an introduction to the use of the TotalView parallel debugger available on Purdue's Linux systems.
Nanoelectronic Modeling: Multimillion Atom Simulations, Transport, and HPC Scaling to 23,000 Processors
07 Mar 2008 | | Contributor(s):: Gerhard Klimeck
Future field effect transistors will be on the same length scales as “esoteric” devices such as quantum dots, nanowires, ultra-scaled quantum wells, and resonant tunneling diodes. In those structures the behavior of carriers and their interaction with their environment need to be fundamentally...
Challenges and Strategies for High End Computing
20 Dec 2007 | | Contributor(s):: Katherine A. Yelick
This presentation was one of 13 presentations in the one-day forum, "Excellence in Computer Simulation," which brought together a broad set of experts to reflect on the future of computational science and engineering.
Session 3: Discussion
20 Dec 2007 |
Discussion led by Jim Demmel, University of California at Berkeley.
HPCW Introduction to Parallel Programming with MPI
05 Dec 2007 | | Contributor(s):: David Seaman
Single-session courseillustrating message-passing techniques. The examples include point-to-pointand collective communication using blocking and nonblocking transmission. Oneapplication illustrates the manager/worker model with buffered communications.Code examples provided in C, C++, Fortran...
HPCW High-end HPC Architectures
09 Oct 2007 | | Contributor(s):: Mithuna Thottethodi
HPCW Parallel Programming Models
09 Oct 2007 | | Contributor(s):: Sam Midkiff