• Complain

Jung W. Suh - Accelerating MATLAB with GPU Computing: A Primer with Examples

Here you can read online Jung W. Suh - Accelerating MATLAB with GPU Computing: A Primer with Examples full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2013, publisher: Morgan Kaufmann, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

No cover
  • Book:
    Accelerating MATLAB with GPU Computing: A Primer with Examples
  • Author:
  • Publisher:
    Morgan Kaufmann
  • Genre:
  • Year:
    2013
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Accelerating MATLAB with GPU Computing: A Primer with Examples: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Accelerating MATLAB with GPU Computing: A Primer with Examples" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Beyond simulation and algorithm development, many developers increasingly use MATLAB even for product deployment in computationally heavy fields. This often demands that MATLAB codes run faster by leveraging the distributed parallelism of Graphics Processing Units (GPUs). While MATLAB successfully provides high-level functions as a simulation tool for rapid prototyping, the underlying details and knowledge needed for utilizing GPUs make MATLAB users hesitate to step into it. Accelerating MATLAB with GPUs offers a primer on bridging this gap.

Starting with the basics, setting up MATLAB for CUDA (in Windows, Linux and Mac OS X) and profiling, it then guides users through advanced topics such as CUDA libraries. The authors share their experience developing algorithms using MATLAB, C++ and GPUs for huge datasets, modifying MATLAB codes to better utilize the computational power of GPUs, and integrating them into commercial software products. Throughout the book, they demonstrate many example codes that can be used as templates of C-MEX and CUDA codes for readers projects. Download example codes from the publishers website: http://booksite.elsevier.com/9780124080805/

  • Shows how to accelerate MATLAB codes through the GPU for parallel processing, with minimal hardware knowledge
  • Explains the related background on hardware, architecture and programming for ease of use
  • Provides simple worked examples of MATLAB and CUDA C codes as well as templates that can be reused in real-world projects

Jung W. Suh: author's other books


Who wrote Accelerating MATLAB with GPU Computing: A Primer with Examples? Find out the surname, the name of the author of the book and a list of all author's works by series.

Accelerating MATLAB with GPU Computing: A Primer with Examples — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Accelerating MATLAB with GPU Computing: A Primer with Examples" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Accelerating MATLAB with GPU Computing A Primer with Examples Jung W Suh - photo 1
Accelerating MATLAB with GPU Computing
A Primer with Examples

Jung W. Suh

Youngmin Kim

Table of Contents Copyright Acquiring Editor Todd Green Editorial Project - photo 2

Table of Contents
Copyright

Acquiring Editor: Todd Green

Editorial Project Manager: Lindsay Lawrence

Project Manager: Mohana Natarajan

Designer: Matthew Limbert

Morgan Kaufmann is an imprint of Elsevier

225 Wyman Street, Waltham, MA 02451, USA

First edition 2014

Copyright 2014 Elsevier Inc. All rights reserved.

No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means electronic, mechanical, photocopying, recording or otherwise without the prior written permission of the publisher.

Permissions may be sought directly from Elseviers Science & Technology Rights Department in Oxford, UK: phone (+44) (0) 1865 843830; fax (+44) (0) 1865 853333; email: , and selecting Obtaining permission to use Elsevier material.

Notice

No responsibility is assumed by the publisher for any injury and/or damage to persons or property as a matter of products liability, negligence or otherwise, or from any use or operation of any methods, products, instructions or ideas contained in the materialherein. Because of rapid advances in the medical sciences, in particular, independentverification of diagnoses and drug dosages should be made.

British Library Cataloguing-in-Publication Data

A catalogue record for this book is available from the British Library

Library of Congress Cataloging-in-Publication Data

Application Submitted

ISBN: 978-0-12-408080-5

For information on all MK publications visit our web site at www.mkp.com

Printed and bound in USA

14 15 16 17 18 10 9 8 7 6 5 4 3 2 1

Preface MATLAB is a widely used simulation tool for rapid prototyping and - photo 3

Preface

MATLAB is a widely used simulation tool for rapid prototyping and algorithm development. Many laboratories and research institutions face growing demands to run their MATLAB codes faster for computationally heavy projects after simple simulations. Since MATLAB uses a vector/matrix representation of data, which is suitable for parallel processing, it can benefit a lot from GPU acceleration.

Target Readers and Contents

This book is aimed primarily at the graduate students and researchers in the field of engineering, science, and technology who need huge data processing without losing the many benefits of MATLAB. However, MATLAB users come from various backgrounds and do not necessarily have much programming experience. For those whose backgrounds are not from programming, GPU acceleration for MATLAB may distract their algorithm development and introduce unnecessary hassles, even when setting the environment. This book targets the readers who have some or a lot of experience on MATLAB coding but not enough depth in either C coding or the computer architecture for parallelization. So readers can focus more on their research and work by avoiding non-algorithmic hassles in using GPU and CUDA in MATLAB.

As a primer, the book will start with the basics, walking through the process of setting MATLAB for CUDA (in Windows and Mac OSX), creating c-mex and m -file profiling, then guide the users through the expert-level topics such as third-party CUDA libraries. It also provides many practical ways to modify users MATLAB codes to better utilize the immense computational power of graphics processors.

This book guides the reader to dramatically maximize the MATLAB speed using NVIDIAs Graphics Processing Unit (GPU). NVIDIAs Compute Unified Device Architecture (CUDA) is a parallel computing architecture originally designed for computer games but is getting a reputation in the general science and technology fields for its efficient massive computation power. From this book, the reader can take advantage of the parallel processing power of GPU and abundant CUDA scientific libraries for accelerating MATLAB code with no or less effort and time, and bring readers researches and works to a higher level.

Directions of this Book
GPU Utilization Using c-mex Versus Parallel Computing Toolbox

This book deals with Mathworkss Parallel Computing Toolbox in . For the purpose of general speeding up, GPU-utilization through c-mex proves a better approach and provides more flexibility in current situation.

Tutorial Approach Versus Case Study Approach

As the books title says, we take more of a tutorial approach. MATLAB users may come from many different backgrounds, and web resources are scattered over Mathworks, NVIDIA, and private blogs as fragmented information. The tutorial approach from setting the GPU environment to acquiring critical (but compressed) hardware knowledge for GPU would be beneficial to prospective readers over a wide spectrum. However, this book also has two chapters () that include case examples with working codes.

CUDA Versus OpenCL

When we prepared the proposal of this book, we also considered OpenCL as a topic, because the inclusion of OpenCL would attract a wider range of readers. However, while CUDA is more consistent and stable, because it is solely driven by NVIDIA, the current OpenCL has no unified development environment and is still unstable in some areas, because OpenCL is not governed by one company or institution. For this reason, installing, profiling, and debugging OpenCL are not yet standardized. As a primer, this may distract the focus of this book. More importantly, for some reason Mathworks is very conservative in its support of OpenCL, unlike CUDA. Therefore, we decided not to include OpenCL in this edition of our book. However, we will again consider whether to include OpenCL in future editions if increased needs come from market or Mathworks direction changes.

After reading this book, the reader, in no time, will experience an amazing performance boost in utilizing readers MATLAB codes and be better equipped in research to enjoy the useful open-source resources for CUDA. The features this book covers are available on Windows and Mac.

Accelerating MATLAB without GPU

This chapter deals with basic accelerating methods for MATLAB codes in an intrinsic way, which means simple code optimization without using GPU or C-MEX. This chapter covers vectorization for parallel processing, preallocation for efficient memory management, tips to increase your MATLAB codes, and step-by-step examples that show the code improvements.

Keywords

Vectorization; elementwise operation; vector/matrix operation; memory preallocation; sparse matrix form

1.1 Chapter Objectives

In this chapter, we deal with the basic accelerating methods for MATLAB codes in an intrinsic way a simple code optimization without using GPU or C-MEX. You will learn about the following:

The vectorization for parallel processing.

The preallocation for efficient memory management.

Other useful tips to increase your MATLAB codes.

Examples that show the code improvements step by step.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Accelerating MATLAB with GPU Computing: A Primer with Examples»

Look at similar books to Accelerating MATLAB with GPU Computing: A Primer with Examples. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Accelerating MATLAB with GPU Computing: A Primer with Examples»

Discussion, reviews of the book Accelerating MATLAB with GPU Computing: A Primer with Examples and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.