Pro TBB C++ Parallel Programming with Threading Building Blocks
This open access book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). Written by TBB and parallel programming experts, this book reflects their collective decades of experience in developing and teaching parallel programming with TBB, offering their insights in an...
- Autores:
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2019
- Institución:
- Universidad de Bogotá Jorge Tadeo Lozano
- Repositorio:
- Expeditio: repositorio UTadeo
- Idioma:
- eng
- OAI Identifier:
- oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/18127
- Acceso en línea:
- https://directory.doabooks.org/handle/20.500.12854/37534
http://hdl.handle.net/20.500.12010/18127
- Palabra clave:
- Computer science
Programming languages (Electronic computers)
Computer programming
Lenguajes de programación (Computadores electrónicos)
Programación (Computadores electrónicos)
C++ (Lenguaje de programación de computadores)
- Rights
- License
- Abierto (Texto Completo)
id |
UTADEO2_1392f4a3253dc08af0ab121254359665 |
---|---|
oai_identifier_str |
oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/18127 |
network_acronym_str |
UTADEO2 |
network_name_str |
Expeditio: repositorio UTadeo |
repository_id_str |
|
dc.title.spa.fl_str_mv |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
title |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
spellingShingle |
Pro TBB C++ Parallel Programming with Threading Building Blocks Computer science Programming languages (Electronic computers) Computer programming Lenguajes de programación (Computadores electrónicos) Programación (Computadores electrónicos) C++ (Lenguaje de programación de computadores) |
title_short |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
title_full |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
title_fullStr |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
title_full_unstemmed |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
title_sort |
Pro TBB C++ Parallel Programming with Threading Building Blocks |
dc.subject.spa.fl_str_mv |
Computer science Programming languages (Electronic computers) Computer programming |
topic |
Computer science Programming languages (Electronic computers) Computer programming Lenguajes de programación (Computadores electrónicos) Programación (Computadores electrónicos) C++ (Lenguaje de programación de computadores) |
dc.subject.lemb.spa.fl_str_mv |
Lenguajes de programación (Computadores electrónicos) Programación (Computadores electrónicos) C++ (Lenguaje de programación de computadores) |
description |
This open access book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). Written by TBB and parallel programming experts, this book reflects their collective decades of experience in developing and teaching parallel programming with TBB, offering their insights in an approachable manner. Throughout the book the authors present numerous examples and best practices to help you become an effective TBB programmer and leverage the power of parallel systems. Pro TBB starts with the basics, explaining parallel algorithms and C++'s built-in standard template library for parallelism. You'll learn the key concepts of managing memory, working with data structures and how to handle typical issues with synchronization. Later chapters apply these ideas to complex systems to explain performance tradeoffs, mapping common parallel patterns, controlling threads and overhead, and extending TBB to program heterogeneous systems or system-on-chips. What You'll Learn Use Threading Building Blocks to produce code that is portable, simple, scalable, and more understandable Review best practices for parallelizing computationally intensive tasks in your applications Integrate TBB with other threading packages Create scalable, high performance data-parallel programs Work with generic programming to write efficient algorithms Who This Book Is For C++ programmers learning to run applications on multicore systems, as well as C or C++ programmers without much experience with templates. No previous experience with parallel programming or multicore processors is required. |
publishDate |
2019 |
dc.date.created.none.fl_str_mv |
2019 |
dc.date.accessioned.none.fl_str_mv |
2021-03-17T14:16:30Z |
dc.date.available.none.fl_str_mv |
2021-03-17T14:16:30Z |
dc.type.coar.spa.fl_str_mv |
http://purl.org/coar/resource_type/c_7a1f |
format |
http://purl.org/coar/resource_type/c_7a1f |
dc.identifier.isbn.none.fl_str_mv |
978-1-4842-4398-5 |
dc.identifier.other.none.fl_str_mv |
https://directory.doabooks.org/handle/20.500.12854/37534 |
dc.identifier.uri.none.fl_str_mv |
http://hdl.handle.net/20.500.12010/18127 |
dc.identifier.doi.none.fl_str_mv |
10.1007/978-1-4842-4398-5 |
identifier_str_mv |
978-1-4842-4398-5 10.1007/978-1-4842-4398-5 |
url |
https://directory.doabooks.org/handle/20.500.12854/37534 http://hdl.handle.net/20.500.12010/18127 |
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 |
https://creativecommons.org/licenses/by-nc-nd/4.0 |
rights_invalid_str_mv |
Abierto (Texto Completo) https://creativecommons.org/licenses/by-nc-nd/4.0 http://purl.org/coar/access_right/c_abf2 |
dc.format.extent.spa.fl_str_mv |
807 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/18127/1/1007323.pdf https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/18127/2/license.txt https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/18127/3/1007323.pdf.jpg |
bitstream.checksum.fl_str_mv |
b129c54dc5f88983660631026e2529af baba314677a6b940f072575a13bb6906 19562448dafabd0d2ca914a454d2a79d |
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_ |
1818152718407041024 |
spelling |
2021-03-17T14:16:30Z2021-03-17T14:16:30Z2019978-1-4842-4398-5https://directory.doabooks.org/handle/20.500.12854/37534http://hdl.handle.net/20.500.12010/1812710.1007/978-1-4842-4398-5This open access book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). Written by TBB and parallel programming experts, this book reflects their collective decades of experience in developing and teaching parallel programming with TBB, offering their insights in an approachable manner. Throughout the book the authors present numerous examples and best practices to help you become an effective TBB programmer and leverage the power of parallel systems. Pro TBB starts with the basics, explaining parallel algorithms and C++'s built-in standard template library for parallelism. You'll learn the key concepts of managing memory, working with data structures and how to handle typical issues with synchronization. Later chapters apply these ideas to complex systems to explain performance tradeoffs, mapping common parallel patterns, controlling threads and overhead, and extending TBB to program heterogeneous systems or system-on-chips. What You'll Learn Use Threading Building Blocks to produce code that is portable, simple, scalable, and more understandable Review best practices for parallelizing computationally intensive tasks in your applications Integrate TBB with other threading packages Create scalable, high performance data-parallel programs Work with generic programming to write efficient algorithms Who This Book Is For C++ programmers learning to run applications on multicore systems, as well as C or C++ programmers without much experience with templates. No previous experience with parallel programming or multicore processors is required.807 páginasapplication/pdfengSpringer NatureComputer scienceProgramming languages (Electronic computers)Computer programmingLenguajes de programación (Computadores electrónicos)Programación (Computadores electrónicos)C++ (Lenguaje de programación de computadores)Pro TBB C++ Parallel Programming with Threading Building BlocksAbierto (Texto Completo)https://creativecommons.org/licenses/by-nc-nd/4.0http://purl.org/coar/access_right/c_abf2http://purl.org/coar/resource_type/c_7a1fVoss, MichaelAsenjo, RafaelReinders, JamesORIGINAL1007323.pdf1007323.pdfVer documentoapplication/pdf135634058https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/18127/1/1007323.pdfb129c54dc5f88983660631026e2529afMD51open accessLICENSElicense.txtlicense.txttext/plain; charset=utf-82938https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/18127/2/license.txtbaba314677a6b940f072575a13bb6906MD52open accessTHUMBNAIL1007323.pdf.jpg1007323.pdf.jpgIM Thumbnailimage/jpeg20177https://expeditiorepositorio.utadeo.edu.co/bitstream/20.500.12010/18127/3/1007323.pdf.jpg19562448dafabd0d2ca914a454d2a79dMD53open access20.500.12010/18127oai:expeditiorepositorio.utadeo.edu.co:20.500.12010/181272021-03-17 23:01:40.781open accessRepositorio Institucional - Universidad Jorge Tadeo Lozanoexpeditio@utadeo.edu.coQXV0b3Jpem8gYWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBVbml2ZXJzaWRhZCBkZSBCb2dvdMOhIEpvcmdlIFRhZGVvIExvemFubyBwYXJhCnF1ZSBjb24gZmluZXMgYWNhZMOpbWljb3MsIHByZXNlcnZlLCBjb25zZXJ2ZSwgb3JnYW5pY2UsIGVkaXRlIHkgbW9kaWZpcXVlCnRlY25vbMOzZ2ljYW1lbnRlIGVsIGRvY3VtZW50byBhbnRlcmlvcm1lbnRlIGNhcmdhZG8gYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbApFeHBlZGl0aW8KCkV4Y2VwdHVhbmRvIHF1ZSBlbCBkb2N1bWVudG8gc2VhIGNvbmZpZGVuY2lhbCwgYXV0b3Jpem8gYSB1c3VhcmlvcyBpbnRlcm5vcyB5CmV4dGVybm9zIGRlIGxhIEluc3RpdHVjacOzbiBhIGNvbnN1bHRhciB5IHJlcHJvZHVjaXIgZWwgY29udGVuaWRvIGRlbCBkb2N1bWVudG8KcGFyYSBmaW5lcyBhY2Fkw6ltaWNvcyBudW5jYSBwYXJhIHVzb3MgY29tZXJjaWFsZXMsIGN1YW5kbyBtZWRpYW50ZSBsYQpjb3JyZXNwb25kaWVudGUgY2l0YSBiaWJsaW9ncsOhZmljYSBzZSBsZSBkZSBjcsOpZGl0byBhIGxhIG9icmEgeSBzdShzKSBhdXRvcihzKS4KCkV4Y2VwdHVhbmRvIHF1ZSBlbCBkb2N1bWVudG8gc2VhIGNvbmZpZGVuY2lhbCwgYXV0b3Jpem8gYXBsaWNhciBsYSBsaWNlbmNpYSBkZWwKZXN0w6FuZGFyIGludGVybmFjaW9uYWwgQ3JlYXRpdmUgQ29tbW9ucyAoQXR0cmlidXRpb24tTm9uQ29tbWVyY2lhbC1Ob0Rlcml2YXRpdmVzCjQuMCBJbnRlcm5hdGlvbmFsKSBxdWUgaW5kaWNhIHF1ZSBjdWFscXVpZXIgcGVyc29uYSBwdWVkZSB1c2FyIGxhIG9icmEgZGFuZG8KY3LDqWRpdG8gYWwgYXV0b3IsIHNpbiBwb2RlciBjb21lcmNpYXIgY29uIGxhIG9icmEgeSBzaW4gZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMuCgpFbCAobG9zKSBhdXRvcihlcykgY2VydGlmaWNhKG4pIHF1ZSBlbCBkb2N1bWVudG8gbm8gaW5mcmluZ2UgbmkgYXRlbnRhIGNvbnRyYQpkZXJlY2hvcyBpbmR1c3RyaWFsZXMsIHBhdHJpbW9uaWFsZXMsIGludGVsZWN0dWFsZXMsIG1vcmFsZXMgbyBjdWFscXVpZXIgb3RybyBkZQp0ZXJjZXJvcywgYXPDrSBtaXNtbyBkZWNsYXJhbiBxdWUgbGEgVW5pdmVyc2lkYWQgSm9yZ2UgVGFkZW8gTG96YW5vIHNlIGVuY3VlbnRyYQpsaWJyZSBkZSB0b2RhIHJlc3BvbnNhYmlsaWRhZCBjaXZpbCwgYWRtaW5pc3RyYXRpdmEgeS9vIHBlbmFsIHF1ZSBwdWVkYSBkZXJpdmFyc2UKZGUgbGEgcHVibGljYWNpw7NuIGRlbCB0cmFiYWpvIGRlIGdyYWRvIHkvbyB0ZXNpcyBlbiBjYWxpZGFkIGRlIGFjY2VzbyBhYmllcnRvIHBvcgpjdWFscXVpZXIgbWVkaW8uCgpFbiBjdW1wbGltaWVudG8gY29uIGxvIGRpc3B1ZXN0byBlbiBsYSBMZXkgMTU4MSBkZSAyMDEyIHkgZXNwZWNpYWxtZW50ZSBlbiB2aXJ0dWQKZGUgbG8gZGlzcHVlc3RvIGVuIGVsIEFydMOtY3VsbyAxMCBkZWwgRGVjcmV0byAxMzc3IGRlIDIwMTMsIGF1dG9yaXpvIGEgbGEKVW5pdmVyc2lkYWQgSm9yZ2UgVGFkZW8gTG96YW5vIGEgcHJvY2VkZXIgY29uIGVsIHRyYXRhbWllbnRvIGRlIGxvcyBkYXRvcwpwZXJzb25hbGVzIHBhcmEgZmluZXMgYWNhZMOpbWljb3MsIGhpc3TDs3JpY29zLCBlc3RhZMOtc3RpY29zIHkgYWRtaW5pc3RyYXRpdm9zIGRlCmxhIEluc3RpdHVjacOzbi4gRGUgY29uZm9ybWlkYWQgY29uIGxvIGVzdGFibGVjaWRvIGVuIGVsIGFydMOtY3VsbyAzMCBkZSBsYSBMZXkgMjMKZGUgMTk4MiB5IGVsIGFydMOtY3VsbyAxMSBkZSBsYSBEZWNpc2nDs24gQW5kaW5hIDM1MSBkZSAxOTkzLCBhY2xhcmFtb3MgcXVlIOKAnExvcwpkZXJlY2hvcyBtb3JhbGVzIHNvYnJlIGVsIHRyYWJham8gc29uIHByb3BpZWRhZCBkZSBsb3MgYXV0b3Jlc+KAnSwgbG9zIGN1YWxlcyBzb24KaXJyZW51bmNpYWJsZXMsIGltcHJlc2NyaXB0aWJsZXMsIGluZW1iYXJnYWJsZXMgZSBpbmFsaWVuYWJsZXMuCgpDb24gZWwgcmVnaXN0cm8gZW4gbGEgcMOhZ2luYSwgYXV0b3Jpem8gZGUgbWFuZXJhIGV4cHJlc2EgYSBsYSBGVU5EQUNJw5NOIFVOSVZFUlNJREFECkRFIEJPR09Uw4EgSk9SR0UgVEFERU8gTE9aQU5PLCBlbCB0cmF0YW1pZW50byBkZSBtaXMgZGF0b3MgcGVyc29uYWxlcyBwYXJhIHByb2Nlc2FyCm8gY29uc2VydmFyLCBjb24gZmluZXMgZXN0YWTDrXN0aWNvcywgZGUgY29udHJvbCBvIHN1cGVydmlzacOzbiwgYXPDrSBjb21vIHBhcmEgZWwKZW52w61vIGRlIGluZm9ybWFjacOzbiB2w61hIGNvcnJlbyBlbGVjdHLDs25pY28sIGRlbnRybyBkZWwgbWFyY28gZXN0YWJsZWNpZG8gcG9yIGxhCkxleSAxNTgxIGRlIDIwMTIgeSBzdXMgZGVjcmV0b3MgY29tcGxlbWVudGFyaW9zIHNvYnJlIFRyYXRhbWllbnRvIGRlIERhdG9zClBlcnNvbmFsZXMuIEVuIGN1YWxxdWllciBjYXNvLCBlbnRpZW5kbyBxdWUgcG9kcsOpIGhhY2VyIHVzbyBkZWwgZGVyZWNobyBhIGNvbm9jZXIsCmFjdHVhbGl6YXIsIHJlY3RpZmljYXIgbyBzdXByaW1pciBsb3MgZGF0b3MgcGVyc29uYWxlcyBtZWRpYW50ZSBlbCBlbnbDrW8gZGUgdW5hCmNvbXVuaWNhY2nDs24gZXNjcml0YSBhbCBjb3JyZW8gZWxlY3Ryw7NuaWNvIHByb3RlY2Npb25kYXRvc0B1dGFkZW8uZWR1LmNvLgoKTGEgRlVOREFDScOTTiBVTklWRVJTSURBRCBERSBCT0dPVMOBIEpPUkdFIFRBREVPIExPWkFOTyBubyB1dGlsaXphcsOhIGxvcyBkYXRvcwpwZXJzb25hbGVzIHBhcmEgZmluZXMgZGlmZXJlbnRlcyBhIGxvcyBhbnVuY2lhZG9zIHkgZGFyw6EgdW4gdXNvIGFkZWN1YWRvIHkKcmVzcG9uc2FibGUgYSBzdXMgZGF0b3MgcGVyc29uYWxlcyBkZSBhY3VlcmRvIGNvbiBsYSBkaXJlY3RyaXogZGUgUHJvdGVjY2nDs24gZGUKRGF0b3MgUGVyc29uYWxlcyBxdWUgcG9kcsOhIGNvbnN1bHRhciBlbjoKaHR0cDovL3d3dy51dGFkZW8uZWR1LmNvL2VzL2xpbmsvZGVzY3VicmUtbGEtdW5pdmVyc2lkYWQvMi9kb2N1bWVudG9zCg== |