ebook img

Accelerating MATLAB Performance: 1001 Tips to Speed Up MATLAB Programs PDF

768 Pages·2014·144.769 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Accelerating MATLAB Performance: 1001 Tips to Speed Up MATLAB Programs

Computer Science & Engineering A A very interesting new book on MATLAB® performance … covering basic tools and an Accelerating MATLAB® c appropriate range of specific programming techniques. The book seems to take a whole- c system approach … helping readers understand the big picture of how to get better e Performance performance. l e —Michelle Hirsch, Ph.D., Head of MATLAB® Product Management r The MATLAB programming environment is often perceived as a platform suitable for a prototyping and modeling but not for “serious” applications. One of the main complaints t 1001 tips to speed up MATLAB programs i is that MATLAB is just too slow. Accelerating MATLAB Performance aims to correct n this perception by describing multiple ways to greatly improve MATLAB program speed. g The book: M • Demonstrates how to profile MATLAB code for performance and resource usage, enabling users to focus on the program’s actual hotspots A • Considers tradeoffs in performance tuning, horizontal vs. vertical scalability, latency T vs. throughput, and perceived vs. actual performance L A • Explains generic speedup techniques used throughout the software industry and their adaptation for MATLAB, plus methods specific to MATLAB B • Analyzes the effects of various data types and processing functions ® • Covers vectorization, parallelization (implicit and explicit), distributed computing, P optimization, memory management, chunking, and caching e • Explains MATLAB’s memory model and shows how to profile memory usage and r optimize code to reduce memory allocations and data fetches f o • Describes the use of GPU, MEX, FPGA, and other forms of compiled code r • Details acceleration techniques for GUI, graphics, I/O, Simulink®, object-oriented m MATLAB, MATLAB startup, and deployed applications • Discusses a wide variety of MathWorks and third-party functions, utilities, libraries, a and toolboxes that can help to improve performance n c Ideal for novices and professionals alike, the book leaves no stone unturned. It covers e all aspects of MATLAB, taking a comprehensive approach to boosting MATLAB perfor- mance. It is packed with thousands of helpful tips, code examples, and online references. Supported by an active website, the book will help readers rapidly attain significant re- ductions in development costs and program run times. Y a Yair Altman, author of the popular UndocumentedMatlab.com website, is well respected i r by the MATLAB community as a leading expert on advanced MATLAB programming. In A over 20 years of professional software development, Yair has developed systems using lt m two dozen programming languages, a dozen platforms, and countless MATLAB releases. Yair Altman a n K21680 www.crcpress.com K21680_cover.indd 1 11/10/14 1:22 PM Accelerating MATLAB® Performance 1001 tips to speed up MATLAB programs Accelerating MATLAB® Performance 1001 tips to speed up MATLAB programs Yair Altman MATLAB® and Simulink® are trademarks of The MathWorks, Inc. and are used with permission. The MathWorks does not warrant the accuracy of the text or exercises in this book. This book’s use or discussion of MATLAB® and Simulink® software or related products does not constitute endorsement or sponsorship by The MathWorks of a particular peda- gogical approach or particular use of the MATLAB® and Simulink® software. CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2015 by Taylor & Francis Group, LLC CRC Press is an imprint of Taylor & Francis Group, an Informa business No claim to original U.S. Government works Version Date: 20141031 International Standard Book Number-13: 978-1-4822-1130-6 (eBook - PDF) This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the valid- ity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint. Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or uti- lized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopy- ing, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. For permission to photocopy or use material electronically from this work, please access www.copyright.com (http:// www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged. Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe. Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com and the CRC Press Web site at http://www.crcpress.com To Tovi, Gali, Liat, and Lavi Contents at a Glance Preface ...........................................................................................................................................xix Author ..........................................................................................................................................xxv 1. Introduction to Performance Tuning ..................................................................................1 2. Profiling MATLAB® Performance ....................................................................................25 3. Standard Performance-Tuning Techniques ....................................................................59 4. MATLAB®-Specific Techniques ......................................................................................135 6. Explicit Parallelization Using MathWorks Toolboxes ................................................285 7. Explicit Parallelization by Other Means........................................................................353 8. Using Compiled Code ........................................................................................................389 9. Memory-Related Techniques ...........................................................................................459 10. Graphics and GUI ...............................................................................................................525 11. I/O Techniques ....................................................................................................................593 Appendix A: Additional Resources .......................................................................................631 Appendix B: Performance Tuning Checklist .......................................................................643 References and Notes ................................................................................................................645 vii

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.