Instructor Example: Optimizing CUDA for GPU Architecture part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
This module, designed for instructors to use as an example, explains how to take advantage of the CUDA GPU architecture to provide maximum speedup for your CUDA applications using a Mandelbrot set generator as an example.
WMR Exemplar: LastFM million-song dataset part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
This module demonstrates how hadoop and WMR can be used to analyze the lastFM million song dataset. It incorporates several advanced hadoop techniques such as job chaining and multiple input.
WMR Exemplar: UK Traffic Incidents part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
Using data published by the United Kingdom department of Transportation about traffic incidents, students can explore and perform analyses using map-reduce techniques.
WMR Exemplar: Flickster network data part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
The exercises in this module use a network of friendships on the social movie recommendation site Flixster. Students will use it to learn how to analyze networks and chain jobs, using the WebMapReduce interface.
Visualize Numerical Integration part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
This is an activity with working code supplied that enables students to see how various forms of the data decomposition pattern map processing units to computations.
Concept: Data Decomposition Pattern part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
This module consists of reading material and code examples that depict the data decomposition pattern in parallel programming, using a small-sized example of vector addition (sometimes called the "Hello, World" of parallel programming.
Pandemic Exemplar part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
Sequential and parallel versions of a Monte Carlo simulation of the spread of infectious disease are presented in detail. Students can run the code and examine performance of sequential and parallel versions.
Distributed Computing Fundamentals part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
Message Passing Interface (MPI) is a programming model widely used for parallel programming in a cluster. Using MPI, programmers can design methods to divide large data and perform the same computing task on segments of it and then and distribute those tasks to multiple processing units within the cluster. In this module, we will learn important and common MPI functions as well as techniques used in 'distributed memory' programming on clusters of networked computers.
Heterogeneous Computing part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
Message Passing Interface (MPI) is a programming model widely used for parallel programming in a cluster. NVIDIA®'s CUDA, a parallel computing platform and programming model, uses GPU for parallel computation problems. This module will explore ways to combine these two parallel computing platforms to make parallel computation more efficient.
GPU Programming part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
In this module, we will learn how to create programs that intensionally use GPU to execute. To be more specific, we will learn how to solve parallel problems more efficiently by writing programs in CUDA C Programming Language and then executes them on GPUs based on CUDA architecture.
Parallel Sorting part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
This module, targeted for algorithms and data structures courses, examines the theoretical PRAM model and its use when designing a parallel version of the mergesort algorithm.
Multicore Programming with OpenMP part of Parallel Computing in the Computer Science Curriculum:Modules:Modules Mini-collection
In this lab, we will create a program that intentionally uses multi-core parallelism, upload and run it on the MTL, and explore the issues in parallelism and concurrency that arise. This module uses OpenMP.