Data Parallel C++ Programming Accelerated Systems Using C++ and SYCL /

"This book, now in is second edition, is the premier resource to learn SYCL 2020 and is the ONLY book you need to become part of this community." Erik Lindahl, GROMACS and Stockholm University Learn how to accelerate C++ programs using data parallelism and SYCL. This open access book enabl...

Täydet tiedot

Tallennettuna:
Bibliografiset tiedot
Päätekijät: Reinders, James (Tekijä), Ashbaugh, Ben (Tekijä), Brodman, James (Tekijä), Kinsner, Michael (Tekijä), Pennycook, John (Tekijä), Tian, Xinmin (Tekijä)
Yhteisötekijä: SpringerLink (Online service)
Aineistotyyppi: Elektroninen E-kirja
Kieli:englanti
Julkaistu: Berkeley, CA : Apress : Imprint: Apress, 2023.
Painos:2nd ed. 2023.
Aiheet:
Linkit:Link to Metadata
Tagit: Lisää tagi
Ei tageja, Lisää ensimmäinen tagi!

MARC

LEADER 00000nam a22000005i 4500
001 978-1-4842-9691-2
003 DE-He213
005 20231003180929.0
007 cr nn 008mamaa
008 231003s2023 xxu| s |||| 0|eng d
020 |a 9781484296912  |9 978-1-4842-9691-2 
024 7 |a 10.1007/978-1-4842-9691-2  |2 doi 
050 4 |a QA76.76.C65 
072 7 |a UMC  |2 bicssc 
072 7 |a COM051010  |2 bisacsh 
072 7 |a UMC  |2 thema 
082 0 4 |a 005.45  |2 23 
100 1 |a Reinders, James.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
245 1 0 |a Data Parallel C++  |h [electronic resource] :  |b Programming Accelerated Systems Using C++ and SYCL /  |c by James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John Pennycook, Xinmin Tian. 
250 |a 2nd ed. 2023. 
264 1 |a Berkeley, CA :  |b Apress :  |b Imprint: Apress,  |c 2023. 
300 |a XXX, 630 p. 329 illus., 294 illus. in color.  |b online resource. 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
347 |a text file  |b PDF  |2 rda 
505 0 |a Chapter 1: Introduction -- Chapter 2: Where Code Executes -- Chapter 3: Data Management and Ordering the Uses of Data -- Chapter 4: Expressing Parallelism -- Chapter 5: Error Handling -- Chapter 6: Unified Shared Memory -- Chapter 7: Buffers -- Chapter 8: Scheduling Kernels and Data Movement -- Chapter 9: Local Memory and Work-group Barriers -- Chapter 10: Defining Kernels -- Chapter 11: Vector and Math Arrays -- Chapter 12: Device Information and Kernel Specialization -- Chapter 13: Practical Tips -- Chapter 14: Common Parallel Patterns -- Chapter 15: Programming for GPUs -- Chapter 16: Programming for CPUs -- Chapter 17: Programming for FFGAs -- Chapter 18: Libraries -- Chapter 19: Memory Model and Atomics -- Chapter 20: Backend Interoperability -- Chapter 21: Migrating CUDA Code -- Epilogue. 
506 0 |a Open Access 
520 |a "This book, now in is second edition, is the premier resource to learn SYCL 2020 and is the ONLY book you need to become part of this community." Erik Lindahl, GROMACS and Stockholm University Learn how to accelerate C++ programs using data parallelism and SYCL. This open access book enables C++ programmers to be at the forefront of this exciting and important development that is helping to push computing to new levels. This updated second edition is full of practical advice, detailed explanations, and code examples to illustrate key topics. SYCL enables access to parallel resources in modern accelerated heterogeneous systems. Now, a single C++ application can use any combination of devices-including GPUs, CPUs, FPGAs, and ASICs-that are suitable to the problems at hand. This book teaches data-parallel programming using C++ with SYCL and walks through everything needed to program accelerated systems. The book begins by introducing data parallelism and foundational topics for effective use of SYCL. Later chapters cover advanced topics, including error handling, hardware-specific programming, communication and synchronization, and memory model considerations. All source code for the examples used in this book is freely available on GitHub. The examples are written in modern SYCL and are regularly updated to ensure compatibility with multiple compilers. You Will Learn How to: Accelerate C++ programs using data-parallel programming Use SYCL and C++ compilers that support SYCL Write portable code for accelerators that is vendor and device agnostic Optimize code to improve performance for specific accelerators Be poised to benefit as new accelerators appear from many vendors. 
650 0 |a Compilers (Computer programs). 
650 0 |a Makerspaces. 
650 1 4 |a Compilers and Interpreters. 
650 2 4 |a Maker. 
700 1 |a Ashbaugh, Ben.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
700 1 |a Brodman, James.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
700 1 |a Kinsner, Michael.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
700 1 |a Pennycook, John.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
700 1 |a Tian, Xinmin.  |e author.  |4 aut  |4 http://id.loc.gov/vocabulary/relators/aut 
710 2 |a SpringerLink (Online service) 
773 0 |t Springer Nature eBook 
776 0 8 |i Printed edition:  |z 9781484296905 
776 0 8 |i Printed edition:  |z 9781484296929 
856 4 0 |u https://doi.org/10.1007/978-1-4842-9691-2  |z Link to Metadata 
912 |a ZDB-2-CWD 
912 |a ZDB-2-SXPC 
912 |a ZDB-2-SOB 
950 |a Professional and Applied Computing (SpringerNature-12059) 
950 |a Professional and Applied Computing (R0) (SpringerNature-43716)