Limit search to available items
Book Cover
E-book
Author Ploskas, Nikolaos

Title GPU programming in MATLAB / Nikolaos Ploskas, Nikolaos Samaras
Published Cambridge, MA : Morgan Kaufmann is an imprint of Elsevier, [2016]
©2016

Copies

Description 1 online resource
Contents Front Cover; GPU Programming in MATLAB; Copyright; Dedication; Contents; About the Authors; Foreword; Preface; Chapter 1: Introduction; 1.1 Parallel programming; 1.1.1 Introduction to Parallel Computing; 1.1.2 Classification of Parallel Computers; 1.1.3 Parallel Computers' Memory Architectures; 1.2 GPU programming; 1.3 CUDA architecture; 1.4 Why GPU programming in MATLAB? when to use GPU programming?; 1.5 Our approach: Organization of the book; 1.6 Chapter Review; Chapter 2: Getting started; 2.1 Hardware Requirements; 2.2 Software requirements; 2.2.1 NVIDIA CUDA Toolkit; Windows; Linux
MAC OS2.2.2 MATLAB; Windows; Linux; MAC OS; 2.3 Chapter review; Chapter 3: Parallel Computing Toolbox; 3.1 Product Description and Objectives; 3.2 Parallel for-loops (parfor); Example: Monte Carlo simulation to approximate the area of a figure; 3.3 Single program multiple data (spmd); Example: Monte Carlo simulation to approximate the area of a figure; 3.4 Distributed and codistributed arrays; 3.5 Interactive parallel development (pmode); 3.6 GPU Computing; 3.7 Clusters and Job Scheduling; 3.8 Chapter Review; Chapter 4: Introduction to GPU programming in MATLAB
4.1 GPU Programming Features in MATLAB4.2 GPU arrays; 4.3 Built-in MATLAB functions for GPUS; Example: Image edge detection; 4.4 Element-wise MATLAB code on GPUs; Example: Filter signal using fast convolution; 4.5 Chapter review; Chapter 5: GPU programming on MATLAB toolboxes; 5.1 Communications System Toolbox; Example: Convolutional coding; 5.2 Image Processing Toolbox; Example: Computed tomography image reconstruction; 5.3 Neural Network Toolbox; Example: Neural network training and simulation on chemical dataset; 5.4 Phased Array System Toolbox
Example: Clutter simulation of a radar system5.5 Signal Processing Toolbox; Example: Filter signal using circular convolution; 5.6 Statistics and Machine Learning Toolbox; Example: Estimation of descriptive statistics measures using the Monte Carlo method; 5.7 Chapter Review; Chapter 6: Multiple GPUs; 6.1 Identify and run code on a specific GPU device; 6.2 Examples using multiple GPUs; Example 1: Monte Carlo simulation to approximate the area of a figure; Example 2: Estimation of descriptive statistics measures using the Monte Carlo method; Example 3: Image edge detection on multiple images
6.3 Chapter reviewChapter 7: Run CUDA or PTX code; 7.1 A brief introduction to CUDA C; 7.2 Steps to run CUDA or PTX code on a GPU through MATLAB; 7.3 Example: Vector addition; 7.4 Example: Matrix multiplication; 7.5 Chapter review; Chapter 8: MATLAB MEX functions containing CUDA code; 8.1 A brief introduction to MATLAB MEX files; 8.2 Steps to run MATLAB MEX functions on GPU; 8.3 Example: Vector addition; 8.4 Example: matrix multiplication; 8.5 Chapter review; Chapter 9: CUDA-accelerated libraries; 9.1 Introduction; 9.2 cuBLAS; 9.3 cuFFT; 9.4 cuRAND; 9.5 cuSOLVER; 9.6 cuSPARSE; 9.7 NPP
Summary GPU programming in MATLAB is intended for scientists, engineers, or students who develop or maintain applications in MATLAB and would like to accelerate their codes using GPU programming without losing the many benefits of MATLAB. The book starts with coverage of the Parallel Computing Toolbox and other MATLAB toolboxes for GPU computing, which allow applications to be ported straightforwardly onto GPUs without extensive knowledge of GPU programming. The next part covers built-in, GPU-enabled features of MATLAB, including options to leverage GPUs across multicore or different computer systems. Finally, advanced material includes CUDA code in MATLAB and optimizing existing GPU applications. Throughout the book, examples and source codes illustrate every concept so that readers can immediately apply them to their own development. Provides in-depth, comprehensive coverage of GPUs with MATLAB, including the parallel computing toolbox and built-in features for other MATLAB toolboxes Explains how to accelerate computationally heavy applications in MATLAB without the need to re-write them in another language Presents case studies illustrating key concepts across multiple fields Includes source code, sample datasets, and lecture slides
Bibliography Includes bibliographical references and index
SUBJECT MATLAB. http://id.loc.gov/authorities/names/n92036881
MATLAB. fast (OCoLC)fst01365096
Subject Graphics processing units -- Programming
Parallel processing (Electronic computers)
COMPUTERS -- General.
Parallel processing (Electronic computers)
Form Electronic book
Author Samaras, Nikolaos
ISBN 9780128051337
0128051337