ebook img

Multicore Computing: Algorithms, Architectures, and Applications PDF

451 Pages·2013·11.71 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 Multicore Computing: Algorithms, Architectures, and Applications

Computer Science/Computer Engineering/Computing M Chapman & Hall/CRC Chapman & Hall/CRC Computer & Information Science Series Computer & Information Science Series u l t Multicore Computing: Algorithms, Architectures, and Applications i focuses on the architectures, algorithms, and applications of multicore Multicore c computing. It will help you understand the intricacies of these architectures o and prepare you to design efficient multicore algorithms. r Contributors at the forefront of the field cover the memory hierarchy for e multicore and manycore processors, the caching strategy Flexible Set Computing Balancing, the main features of the latest SPARC architecture specifi- C cation, the Cilk and Cilk++ programming languages, the numerical soft- ware library Parallel Linear Algebra Software for Multicore Architectures o (PLASMA), and the exact multipattern string matching algorithm of Aho- m Corasick. They also describe the architecture and programming model of Algorithms, Architectures, the NVIDIA Tesla GPU, discuss scheduling directed acyclic graphs onto multi/manycore processors, and evaluate design trade-offs among Intel p and Applications and AMD multicore processors, IBM Cell Broadband Engine, and NVIDIA u GPUs. In addition, the book explains how to design algorithms for the Cell Broadband Engine and how to use the backprojection algorithm for gen- t i erating images from synthetic aperture radar data. n Features g • Equips you with the foundation to design efficient multicore algorithms Edited by • Addresses challenges in parallel computing Sanguthevar Rajasekaran R • Covers many techniques, tools, and algorithms for solving big data A a problems, including PLASMA, Cilk, the Aho-Corasick algorithm, h ja m s Lance Fiondella sorting algorithms, a modularized scheduling method, and the e e k backprojection algorithm d a , r Mohamed Ahmed • Describes various architectures, such as SPARC and the NVIDIA a a n n Tesla GPU d , F Reda A. Ammar • Includes numerous applications and extensive experimental results A i o m n m d e a l r l K12518 a , K12518_Cover.indd 1 11/13/13 9:21 AM Multicore Computing Algorithms, Architectures, and Applications CHAPMAN & HALL/CRC COMPUTER and INFORMATION SCIENCE SERIES Series Editor: Sartaj Sahni PUBLISHED TITLES HANDBOOK OF PARALLEL COMPUTING: MODELS, ALGORITHMS AND APPLICATIONS ADVERSARIAL REASONING: COMPUTATIONAL Sanguthevar Rajasekaran and John Reif APPROACHES TO READING THE OPPONENT’S MIND HANDBOOK OF REAL-TIME AND EMBEDDED SYSTEMS Alexander Kott and William M. McEneaney Insup Lee, Joseph Y-T. Leung, and Sang H. Son DELAUNAY MESH GENERATION HANDBOOK OF SCHEDULING: ALGORITHMS, MODELS, AND Siu-Wing Cheng, Tamal Krishna Dey, and PERFORMANCE ANALYSIS Jonathan Richard Shewchuk Joseph Y.-T. Leung DISTRIBUTED SENSOR NETWORKS, SECOND EDITION HIGH PERFORMANCE COMPUTING IN REMOTE SENSING S. Sitharama Iyengar and Richard R. Brooks Antonio J. Plaza and Chein-I Chang DISTRIBUTED SYSTEMS: AN ALGORITHMIC APPROACH HUMAN ACTIVITY RECOGNITION: USING WEARABLE SENSORS Sukumar Ghosh AND SMARTPHONES ENERGY-AWARE MEMORY MANAGEMENT FOR EMBEDDED Miguel A. Labrador and Oscar D. Lara Yejas MULTIMEDIA SYSTEMS: A COMPUTER-AIDED DESIGN APPROACH INTRODUCTION TO NETWORK SECURITY Florin Balasa and Dhiraj K. Pradhan Douglas Jacobson ENERGY EFFICIENT HARDWARE-SOFTWARE LOCATION-BASED INFORMATION SYSTEMS: CO-SYNTHESIS USING RECONFIGURABLE HARDWARE DEVELOPING REAL-TIME TRACKING APPLICATIONS Jingzhao Ou and Viktor K. Prasanna Miguel A. Labrador, Alfredo J. Pérez, and Pedro M. Wightman FUNDAMENTALS OF NATURAL COMPUTING: BASIC CONCEPTS, METHODS IN ALGORITHMIC ANALYSIS ALGORITHMS, AND APPLICATIONS Vladimir A. Dobrushkin Leandro Nunes de Castro MULTICORE COMPUTING: ALGORITHMS, ARCHITECTURES, HANDBOOK OF ALGORITHMS FOR WIRELESS NETWORKING AND AND APPLICATIONS MOBILE COMPUTING Sanguthevar Rajasekaran, Lance Fiondella, Mohamed Ahmed, Azzedine Boukerche and Reda A. Ammar HANDBOOK OF APPROXIMATION ALGORITHMS PERFORMANCE ANALYSIS OF QUEUING AND COMPUTER AND METAHEURISTICS NETWORKS Teofilo F. Gonzalez G. R. Dattatreya HANDBOOK OF BIOINSPIRED ALGORITHMS THE PRACTICAL HANDBOOK OF INTERNET COMPUTING AND APPLICATIONS Munindar P. Singh Stephan Olariu and Albert Y. Zomaya SCALABLE AND SECURE INTERNET SERVICES AND ARCHITECTURE HANDBOOK OF COMPUTATIONAL MOLECULAR BIOLOGY Cheng-Zhong Xu Srinivas Aluru SOFTWARE APPLICATION DEVELOPMENT: A VISUAL C++®, MFC, HANDBOOK OF DATA STRUCTURES AND APPLICATIONS AND STL TUTORIAL Dinesh P. Mehta and Sartaj Sahni Bud Fox, Zhang Wenzu, and Tan May Ling HANDBOOK OF DYNAMIC SYSTEM MODELING SPECULATIVE EXECUTION IN HIGH PERFORMANCE COMPUTER Paul A. Fishwick ARCHITECTURES HANDBOOK OF ENERGY-AWARE AND GREEN COMPUTING David Kaeli and Pen-Chung Yew Ishfaq Ahmad and Sanjay Ranka VEHICULAR NETWORKS: FROM THEORY TO PRACTICE Stephan Olariu and Michele C. Weigle Multicore Computing Algorithms, Architectures, and Applications Edited by Sanguthevar Rajasekaran Lance Fiondella Mohamed Ahmed Reda A. Ammar CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2014 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: 20130808 International Standard Book Number-13: 978-1-4398-5435-8 (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 validity 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, transmit- ted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, 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 Dedication To my teachers, Esakki Rajan, P.S. Srinivasn, V. Krishnan, and John H. Reif —Sanguthevar Rajasekaran To my son, Advika —Lance Fiondella To my wife, Noha Nabawi my parents, and my advisors Professors Sanguthevar Rajasekaran and Reda Ammar —Mohamed F. Ahmed To my family, Tahany Fergany, Rabab Ammar, Doaa Ammar and Mohamed Ammar —Reda A. Ammar ( ; - : ) An indestructible and impeccable treasure to one is learning; all the other things are not wealth. Thiruvalluvar (circa 100 B.C.) (Thirukkural; Section - Wealth; Chapter 40 - Education) Contents Preface xvii Acknowledgements xxi List of Contributing Editors xxiii List of Contributing Authors xxv 1 MemoryHierarchyforMulticoreandMany-CoreProcessors 1 Mohamed Zahran and Bushra Ahsan 1.1 Design Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1.1 Latency and Bandwidth . . . . . . . . . . . . . . . . . 5 1.1.2 Power Consumption . . . . . . . . . . . . . . . . . . . 6 1.2 Physical Memory . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Cache Hierarchy Organization . . . . . . . . . . . . . . . . . 8 1.3.1 Caches versus Cores . . . . . . . . . . . . . . . . . . . 9 1.3.1.1 Technological and usage factors . . . . . . . 9 1.3.1.2 Application-related factors . . . . . . . . . . 9 1.3.2 Private, Shared, and Cooperative Caching . . . . . . . 11 1.3.3 Nonuniform Cache Architecture (NUCA) . . . . . . . 13 1.4 Cache Hierarchy Sharing . . . . . . . . . . . . . . . . . . . . 16 1.4.1 At What Level to Share Caches? . . . . . . . . . . . . 17 1.4.2 Cache-Sharing Management . . . . . . . . . . . . . . . 18 1.4.2.1 Fairness . . . . . . . . . . . . . . . . . . . . . 18 1.4.2.2 Quality of Service (QoS) . . . . . . . . . . . 20 1.4.3 Configurable Caches . . . . . . . . . . . . . . . . . . . 21 1.5 Cache Hierarchy Optimization . . . . . . . . . . . . . . . . . 23 1.5.1 Multilevel Inclusion . . . . . . . . . . . . . . . . . . . 23 1.5.2 Global Placement. . . . . . . . . . . . . . . . . . . . . 25 1.6 Cache Coherence . . . . . . . . . . . . . . . . . . . . . . . . . 28 1.6.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.6.2 Protocols for Traditional Multiprocessors . . . . . . . 31 1.6.3 Protocols for Multicore Systems . . . . . . . . . . . . 32 1.7 Support for Memory Consistency Models . . . . . . . . . . . 36 1.8 Cache Hierarchy in Light of New Technologies . . . . . . . . 37 1.9 Concluding Remarks . . . . . . . . . . . . . . . . . . . . . . 37 vii viii 2 FSB: A Flexible Set-Balancing Strategy for Last-Level Caches 45 Mohammad Hammoud, Sangyeun Cho, and Rami Melhem 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.2 Motivation and Background . . . . . . . . . . . . . . . . . . 48 2.2.1 Baseline Architecture . . . . . . . . . . . . . . . . . . 48 2.2.2 A Caching Problem . . . . . . . . . . . . . . . . . . . 49 2.2.3 Dynamic Set-Balancing Cache and Inherent Shortcom- ings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.2.4 Our Solution . . . . . . . . . . . . . . . . . . . . . . . 52 2.3 Flexible Set Balancing . . . . . . . . . . . . . . . . . . . . . . 54 2.3.1 Retention Limits . . . . . . . . . . . . . . . . . . . . . 54 2.3.2 Retention Policy . . . . . . . . . . . . . . . . . . . . . 55 2.3.3 Lookup Policy . . . . . . . . . . . . . . . . . . . . . . 57 2.3.4 FSB Cost . . . . . . . . . . . . . . . . . . . . . . . . . 57 2.4 Quantitative Evaluation . . . . . . . . . . . . . . . . . . . . . 58 2.4.1 Methodology . . . . . . . . . . . . . . . . . . . . . . . 58 2.4.2 Comparing FSB against Shared Baseline . . . . . . . . 59 2.4.3 Sensitivity to Different Pressure Functions . . . . . . . 62 2.4.4 Sensitivity to LPL and HPL. . . . . . . . . . . . . . . 63 2.4.5 Impact of Increasing Cache Size and Associativity . . 64 2.4.6 FSB versus Victim Caching . . . . . . . . . . . . . . . 66 2.4.7 FSB versus DSBC and V-WAY . . . . . . . . . . . . . 66 2.5 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . 67 2.6 Conclusions and Future Work . . . . . . . . . . . . . . . . . 69 3 The SPARC Processor Architecture 73 Simone Secchi, Antonino Tumeo, and Oreste Villa 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.2 The SPARC Instruction-Set Architecture . . . . . . . . . . . 75 3.2.1 Registers and Register Windowing . . . . . . . . . . . 76 3.3 Memory Access . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.3.1 MMU Requirements . . . . . . . . . . . . . . . . . . . 79 3.3.2 Memory Models . . . . . . . . . . . . . . . . . . . . . 79 3.3.3 The MEMBAR instruction . . . . . . . . . . . . . . . 81 3.4 Synchronization . . . . . . . . . . . . . . . . . . . . . . . . . 81 3.5 The NIAGARA Processor Architecture . . . . . . . . . . . . 82 3.6 Core Microarchitecture . . . . . . . . . . . . . . . . . . . . . 84 3.7 Core Interconnection . . . . . . . . . . . . . . . . . . . . . . 86 3.8 Memory Subsystem . . . . . . . . . . . . . . . . . . . . . . . 86 3.8.1 Cache-Coherence Protocol . . . . . . . . . . . . . . . . 87 3.8.1.1 Example 1 . . . . . . . . . . . . . . . . . . . 87 3.8.1.2 Example 2 . . . . . . . . . . . . . . . . . . . 88 3.9 Niagara Evolutions . . . . . . . . . . . . . . . . . . . . . . . 88

Description:
Every area of science and engineering today has to process voluminous data sets. Using exact, or even approximate, algorithms to solve intractable problems in critical areas, such as computational biology, takes time that is exponential in some of the underlying parameters. Parallel computing addres
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.