Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL
Learn how to accelerate C++ programs using data parallelism. This open access book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples t...
- Autores:
- Tipo de recurso:
- Book
- Fecha de publicación:
- 2021
- Institución:
- Universidad de Bogotá Jorge Tadeo Lozano
- Repositorio:
- Expeditio: repositorio UTadeo
- Idioma:
- eng
- OAI Identifier:
- oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/17502
- Acceso en línea:
- https://directory.doabooks.org/handle/20.500.12854/30305
http://hdl.handle.net/20.500.12010/17502
- Palabra clave:
- Programming Languages
Compilers, Interpreters
Hardware and Maker
Lenguajes de programación (Computadores electrónicos)
C (Lenguaje de programación de computadores)
Lenguas artificiales
- Rights
- License
- Abierto (Texto Completo)
id |
UTADEO2_323ed9749eefc0bf3ac0ffba6daf1f82 |
---|---|
oai_identifier_str |
oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/17502 |
network_acronym_str |
UTADEO2 |
network_name_str |
Expeditio: repositorio UTadeo |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
title |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
spellingShingle |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL Programming Languages Compilers, Interpreters Hardware and Maker Lenguajes de programación (Computadores electrónicos) C (Lenguaje de programación de computadores) Lenguas artificiales |
title_short |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
title_full |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
title_fullStr |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
title_full_unstemmed |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
title_sort |
Data Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCL |
dc.subject.spa.fl_str_mv |
Programming Languages Compilers, Interpreters Hardware and Maker |
topic |
Programming Languages Compilers, Interpreters Hardware and Maker Lenguajes de programación (Computadores electrónicos) C (Lenguaje de programación de computadores) Lenguas artificiales |
dc.subject.lemb.spa.fl_str_mv |
Lenguajes de programación (Computadores electrónicos) C (Lenguaje de programación de computadores) Lenguas artificiales |
description |
Learn how to accelerate C++ programs using data parallelism. This open access book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics. Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing you from being locked into any particular computing device. Now a single C++ application can use any combination of devices—including GPUs, CPUs, FPGAs and AI ASICs—that are suitable to the problems at hand. This book begins by introducing data parallelism and foundational topics for effective use of the SYCL standard from the Khronos Group and Data Parallel C++ (DPC++), the open source compiler used in this book. Later chapters cover advanced topics including error handling, hardware-specific programming, communication and synchronization, and memory model considerations. Data Parallel C++ provides you with everything needed to use SYCL for programming heterogeneous systems. What You'll Learn Accelerate C++ programs using data-parallel programming Target multiple device types (e.g. CPU, GPU, FPGA) Use SYCL and SYCL compilers Connect with computing’s heterogeneous future via Intel’s oneAPI initiative Who This Book Is For Those new data-parallel programming and computer programmers interested in data-parallel programming using C++. URI |
publishDate |
2021 |
dc.date.accessioned.none.fl_str_mv |
2021-02-19T14:43:19Z |
dc.date.available.none.fl_str_mv |
2021-02-19T14:43:19Z |
dc.date.created.none.fl_str_mv |
2021 |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_2f33 |
format |
http://purl.org/coar/resource_type/c_2f33 |
dc.identifier.isbn.none.fl_str_mv |
978-1-4842-5574-2 |
dc.identifier.other.none.fl_str_mv |
https://directory.doabooks.org/handle/20.500.12854/30305 |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/20.500.12010/17502 |
dc.identifier.doi.none.fl_str_mv |
10.1007/978-1-4842-5574-2 |
identifier_str_mv |
978-1-4842-5574-2 10.1007/978-1-4842-5574-2 |
url |
https://directory.doabooks.org/handle/20.500.12854/30305 http://hdl.handle.net/20.500.12010/17502 |
dc.language.iso.spa.fl_str_mv |
eng |
language |
eng |
dc.rights.coar.fl_str_mv |
http://purl.org/coar/access_right/c_abf2 |
dc.rights.local.spa.fl_str_mv |
Abierto (Texto Completo) |
dc.rights.creativecommons.none.fl_str_mv |
http://creativecommons.org/licenses/by/4.0/ |
rights_invalid_str_mv |
Abierto (Texto Completo) http://creativecommons.org/licenses/by/4.0/ http://purl.org/coar/access_right/c_abf2 |
dc.format.extent.spa.fl_str_mv |
548 páginas |
dc.format.mimetype.spa.fl_str_mv |
application/pdf |
dc.publisher.spa.fl_str_mv |
Springer Nature |
institution |
Universidad de Bogotá Jorge Tadeo Lozano |
bitstream.url.fl_str_mv |
https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/3/2021_Book_DataParallelC.pdf.jpg https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/1/2021_Book_DataParallelC.pdf https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/2/license.txt |
bitstream.checksum.fl_str_mv |
a0f7388b22ef2820d24872da48459efa 50a6a5358d625cfd6f7dd1fac64d9d5c abceeb1c943c50d3343516f9dbfc110f |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositorio Institucional - Universidad Jorge Tadeo Lozano |
repository.mail.fl_str_mv |
expeditio@utadeo.edu.co |
_version_ |
1814213710838759424 |
spelling |
2021-02-19T14:43:19Z2021-02-19T14:43:19Z2021978-1-4842-5574-2https://directory.doabooks.org/handle/20.500.12854/30305http://hdl.handle.net/20.500.12010/1750210.1007/978-1-4842-5574-2Learn how to accelerate C++ programs using data parallelism. This open access book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics. Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing you from being locked into any particular computing device. Now a single C++ application can use any combination of devices—including GPUs, CPUs, FPGAs and AI ASICs—that are suitable to the problems at hand. This book begins by introducing data parallelism and foundational topics for effective use of the SYCL standard from the Khronos Group and Data Parallel C++ (DPC++), the open source compiler used in this book. Later chapters cover advanced topics including error handling, hardware-specific programming, communication and synchronization, and memory model considerations. Data Parallel C++ provides you with everything needed to use SYCL for programming heterogeneous systems. What You'll Learn Accelerate C++ programs using data-parallel programming Target multiple device types (e.g. CPU, GPU, FPGA) Use SYCL and SYCL compilers Connect with computing’s heterogeneous future via Intel’s oneAPI initiative Who This Book Is For Those new data-parallel programming and computer programmers interested in data-parallel programming using C++. URI548 páginasapplication/pdfengSpringer NatureProgramming LanguagesCompilers, InterpretersHardware and MakerLenguajes de programación (Computadores electrónicos)C (Lenguaje de programación de computadores)Lenguas artificialesData Parallel C++ : Mastering DPC++ for Programming of Heterogeneous Systems using C++ and SYCLAbierto (Texto Completo)http://creativecommons.org/licenses/by/4.0/http://purl.org/coar/access_right/c_abf2http://purl.org/coar/resource_type/c_2f33Reinders, JamesAshbaugh, BenBrodman, JamesKinsner, MichaelPennycook, JohnTian, XinminTHUMBNAIL2021_Book_DataParallelC.pdf.jpg2021_Book_DataParallelC.pdf.jpgIM Thumbnailimage/jpeg19556https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/3/2021_Book_DataParallelC.pdf.jpga0f7388b22ef2820d24872da48459efaMD53open accessORIGINAL2021_Book_DataParallelC.pdf2021_Book_DataParallelC.pdfVer documentoapplication/pdf16085130https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/1/2021_Book_DataParallelC.pdf50a6a5358d625cfd6f7dd1fac64d9d5cMD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-82938https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/17502/2/license.txtabceeb1c943c50d3343516f9dbfc110fMD52open access20.500.12010/17502oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/175022021-02-19 09:44:40.209open accessRepositorio Institucional - Universidad Jorge Tadeo Lozanoexpeditio@utadeo.edu.coQXV0b3Jpem8gYWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBVbml2ZXJzaWRhZCBkZSBCb2dvdMOhIEpvcmdlIFRhZGVvIExvemFubyBwYXJhIHF1ZSBjb24gZmluZXMgYWNhZMOpbWljb3MsIHByZXNlcnZlLCBjb25zZXJ2ZSwgb3JnYW5pY2UsIGVkaXRlIHkgbW9kaWZpcXVlIHRlY25vbMOzZ2ljYW1lbnRlIGVsIGRvY3VtZW50byBhbnRlcmlvcm1lbnRlIGNhcmdhZG8gYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBFeHBlZGl0aW8KCkV4Y2VwdHVhbmRvIHF1ZSBlbCBkb2N1bWVudG8gc2VhIGNvbmZpZGVuY2lhbCwgYXV0b3Jpem8gYSB1c3VhcmlvcyBpbnRlcm5vcyB5IGV4dGVybm9zIGRlIGxhIEluc3RpdHVjacOzbiBhIGNvbnN1bHRhciB5IHJlcHJvZHVjaXIgZWwgY29udGVuaWRvIGRlbCBkb2N1bWVudG8gcGFyYSBmaW5lcyBhY2Fkw6ltaWNvcyBudW5jYSBwYXJhIHVzb3MgY29tZXJjaWFsZXMsIGN1YW5kbyBtZWRpYW50ZSBsYSBjb3JyZXNwb25kaWVudGUgY2l0YSBiaWJsaW9ncsOhZmljYSBzZSBsZSBkZSBjcsOpZGl0byBhIGxhIG9icmEgeSBzdShzKSBhdXRvcihzKS4KCkV4Y2VwdHVhbmRvIHF1ZSBlbCBkb2N1bWVudG8gc2VhIGNvbmZpZGVuY2lhbCwgYXV0b3Jpem8gYXBsaWNhciBsYSBsaWNlbmNpYSBkZWwgZXN0w6FuZGFyIGludGVybmFjaW9uYWwgQ3JlYXRpdmUgQ29tbW9ucyAoQXR0cmlidXRpb24tTm9uQ29tbWVyY2lhbC1Ob0Rlcml2YXRpdmVzIDQuMCBJbnRlcm5hdGlvbmFsKSBxdWUgaW5kaWNhIHF1ZSBjdWFscXVpZXIgcGVyc29uYSBwdWVkZSB1c2FyIGxhIG9icmEgZGFuZG8gY3LDqWRpdG8gYWwgYXV0b3IsIHNpbiBwb2RlciBjb21lcmNpYXIgY29uIGxhIG9icmEgeSBzaW4gZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMuCgpFbCAobG9zKSBhdXRvcihlcykgY2VydGlmaWNhKG4pIHF1ZSBlbCBkb2N1bWVudG8gbm8gaW5mcmluZ2UgbmkgYXRlbnRhIGNvbnRyYSBkZXJlY2hvcyBpbmR1c3RyaWFsZXMsIHBhdHJpbW9uaWFsZXMsIGludGVsZWN0dWFsZXMsIG1vcmFsZXMgbyBjdWFscXVpZXIgb3RybyBkZSB0ZXJjZXJvcywgYXPDrSBtaXNtbyBkZWNsYXJhbiBxdWUgbGEgVW5pdmVyc2lkYWQgSm9yZ2UgVGFkZW8gTG96YW5vIHNlIGVuY3VlbnRyYSBsaWJyZSBkZSB0b2RhIHJlc3BvbnNhYmlsaWRhZCBjaXZpbCwgYWRtaW5pc3RyYXRpdmEgeS9vIHBlbmFsIHF1ZSBwdWVkYSBkZXJpdmFyc2UgZGUgbGEgcHVibGljYWNpw7NuIGRlbCB0cmFiYWpvIGRlIGdyYWRvIHkvbyB0ZXNpcyBlbiBjYWxpZGFkIGRlIGFjY2VzbyBhYmllcnRvIHBvciBjdWFscXVpZXIgbWVkaW8uCgpFbiBjdW1wbGltaWVudG8gY29uIGxvIGRpc3B1ZXN0byBlbiBsYSBMZXkgMTU4MSBkZSAyMDEyIHkgZXNwZWNpYWxtZW50ZSBlbiB2aXJ0dWQgZGUgbG8gZGlzcHVlc3RvIGVuIGVsIEFydMOtY3VsbyAxMCBkZWwgRGVjcmV0byAxMzc3IGRlIDIwMTMsIGF1dG9yaXpvIGEgbGEgVW5pdmVyc2lkYWQgSm9yZ2UgVGFkZW8gTG96YW5vIGEgcHJvY2VkZXIgY29uIGVsIHRyYXRhbWllbnRvIGRlIGxvcyBkYXRvcyBwZXJzb25hbGVzIHBhcmEgZmluZXMgYWNhZMOpbWljb3MsIGhpc3TDs3JpY29zLCBlc3RhZMOtc3RpY29zIHkgYWRtaW5pc3RyYXRpdm9zIGRlIGxhIEluc3RpdHVjacOzbi4gRGUgY29uZm9ybWlkYWQgY29uIGxvIGVzdGFibGVjaWRvIGVuIGVsIGFydMOtY3VsbyAzMCBkZSBsYSBMZXkgMjMgZGUgMTk4MiB5IGVsIGFydMOtY3VsbyAxMSBkZSBsYSBEZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLCBhY2xhcmFtb3MgcXVlIOKAnExvcyBkZXJlY2hvcyBtb3JhbGVzIHNvYnJlIGVsIHRyYWJham8gc29uIHByb3BpZWRhZCBkZSBsb3MgYXV0b3Jlc+KAnSwgbG9zIGN1YWxlcyBzb24gaXJyZW51bmNpYWJsZXMsIGltcHJlc2NyaXB0aWJsZXMsIGluZW1iYXJnYWJsZXMgZSBpbmFsaWVuYWJsZXMuCgpDb24gZWwgcmVnaXN0cm8gZW4gbGEgcMOhZ2luYSwgYXV0b3Jpem8gZGUgbWFuZXJhIGV4cHJlc2EgYSBsYSBGVU5EQUNJw5NOIFVOSVZFUlNJREFEIERFIEJPR09Uw4EgSk9SR0UgVEFERU8gTE9aQU5PLCBlbCB0cmF0YW1pZW50byBkZSBtaXMgZGF0b3MgcGVyc29uYWxlcyBwYXJhIHByb2Nlc2FyIG8gY29uc2VydmFyLCBjb24gZmluZXMgZXN0YWTDrXN0aWNvcywgZGUgY29udHJvbCBvIHN1cGVydmlzacOzbiwgYXPDrSBjb21vIHBhcmEgZWwgZW52w61vIGRlIGluZm9ybWFjacOzbiB2w61hIGNvcnJlbyBlbGVjdHLDs25pY28sIGRlbnRybyBkZWwgbWFyY28gZXN0YWJsZWNpZG8gcG9yIGxhIExleSAxNTgxIGRlIDIwMTIgeSBzdXMgZGVjcmV0b3MgY29tcGxlbWVudGFyaW9zIHNvYnJlIFRyYXRhbWllbnRvIGRlIERhdG9zIFBlcnNvbmFsZXMuIEVuIGN1YWxxdWllciBjYXNvLCBlbnRpZW5kbyBxdWUgcG9kcsOpIGhhY2VyIHVzbyBkZWwgZGVyZWNobyBhIGNvbm9jZXIsIGFjdHVhbGl6YXIsIHJlY3RpZmljYXIgbyBzdXByaW1pciBsb3MgZGF0b3MgcGVyc29uYWxlcyBtZWRpYW50ZSBlbCBlbnbDrW8gZGUgdW5hIGNvbXVuaWNhY2nDs24gZXNjcml0YSBhbCBjb3JyZW8gZWxlY3Ryw7NuaWNvIHByb3RlY2Npb25kYXRvc0B1dGFkZW8uZWR1LmNvLgoKTGEgRlVOREFDScOTTiBVTklWRVJTSURBRCBERSBCT0dPVMOBIEpPUkdFIFRBREVPIExPWkFOTyBubyB1dGlsaXphcsOhIGxvcyBkYXRvcyBwZXJzb25hbGVzIHBhcmEgZmluZXMgZGlmZXJlbnRlcyBhIGxvcyBhbnVuY2lhZG9zIHkgZGFyw6EgdW4gdXNvIGFkZWN1YWRvIHkgcmVzcG9uc2FibGUgYSBzdXMgZGF0b3MgcGVyc29uYWxlcyBkZSBhY3VlcmRvIGNvbiBsYSBkaXJlY3RyaXogZGUgUHJvdGVjY2nDs24gZGUgRGF0b3MgUGVyc29uYWxlcyBxdWUgcG9kcsOhIGNvbnN1bHRhciBlbjogaHR0cDovL3d3dy51dGFkZW8uZWR1LmNvL2VzL2xpbmsvZGVzY3VicmUtbGEtdW5pdmVyc2lkYWQvMi9kb2N1bWVudG9zCg== |