The art of concurrency
(eBook)

Book Cover
Average Rating
Published
Beijing ; Cambridge : O'Reilly, ©2009.
Format
eBook
Edition
1st ed.
ISBN
9780596802424, 0596802420, 9780596555788, 0596555784, 0596551150, 9780596551155
Physical Desc
1 online resource (xiii, 285 pages)
Status

Description

Loading Description...

Also in this Series

Checking series information...

More Like This

Loading more titles like this title...

Syndetics Unbound

More Details

Language
English

Notes

Description
If you're looking to take full advantage of multi-core processors with concurrent programming, this practical book provides the knowledge and hands-on experience you need. The Art of Concurrency is one of the few resources to focus on implementing algorithms in the shared-memory model of multi-core processors, rather than just theoretical models or distributed-memory architectures. The book provides detailed explanations and usable samples to help you transform algorithms from serial to parallel code, along with advice and analysis for avoiding mistakes that programmers typically make when first attempting these computations. Written by an Intel engineer with over two decades of parallel and concurrent programming experience, this book will help you:

Language
English.
Local note
O'Reilly,O'Reilly Online Learning: Academic/Public Library Edition

Reviews from GoodReads

Loading GoodReads Reviews.

Citations

APA Citation, 7th Edition (style guide)

Breshears, C. (2009). The art of concurrency . O'Reilly.

Chicago / Turabian - Author Date Citation, 17th Edition (style guide)

Breshears, Clay. 2009. The Art of Concurrency. O'Reilly.

Chicago / Turabian - Humanities (Notes and Bibliography) Citation, 17th Edition (style guide)

Breshears, Clay. The Art of Concurrency O'Reilly, 2009.

MLA Citation, 9th Edition (style guide)

Breshears, Clay. The Art of Concurrency O'Reilly, 2009.

Note! Citations contain only title, author, edition, publisher, and year published. Citations should be used as a guideline and should be double checked for accuracy. Citation formats are based on standards as of August 2021.

Staff View

Grouped Work ID
57a3302d-6594-639b-35f3-75d065c21210-eng
Go To Grouped Work

Grouping Information

Grouped Work ID57a3302d-6594-639b-35f3-75d065c21210-eng
Full titleart of concurrency
Authorbreshears clay
Grouping Categorybook
Last Update2024-04-16 12:23:35PM
Last Indexed2024-04-20 03:14:07AM

Book Cover Information

Image Sourcesyndetics
First LoadedJun 19, 2022
Last UsedApr 19, 2024

Marc Record

First DetectedNov 09, 2022 03:39:13 PM
Last File Modification TimeApr 16, 2024 12:26:08 PM

MARC Record

LEADER07751cam a2200805 a 4500
001ocn456750914
003OCoLC
00520240405112445.0
006m     o  d        
007cr unu||||||||
008091016s2009    njua    o     001 0 eng d
010 |a  2010487098
015 |a GBA8D6778|2 bnb
0167 |a 014845182|2 Uk
019 |a 599810861|a 617957982|a 968980533|a 1064045706|a 1103280100|a 1129374576|a 1153025844|a 1295597027|a 1300628258|a 1302281463|a 1303349263
020 |a 9780596802424
020 |a 0596802420
020 |a 9780596555788
020 |a 0596555784
020 |a 0596551150
020 |a 9780596551155
020 |z 9780596521530
020 |z 0596521537
0291 |a AU@|b 000051461073
0291 |a AU@|b 000067102561
0291 |a DEBSZ|b 355422972
0291 |a HEBIS|b 291494617
035 |a (OCoLC)456750914|z (OCoLC)599810861|z (OCoLC)617957982|z (OCoLC)968980533|z (OCoLC)1064045706|z (OCoLC)1103280100|z (OCoLC)1129374576|z (OCoLC)1153025844|z (OCoLC)1295597027|z (OCoLC)1300628258|z (OCoLC)1302281463|z (OCoLC)1303349263
037 |a CL0500000062|b Safari Books Online
040 |a MNW|b eng|e pn|c MNW|d CUS|d OCLCQ|d UMI|d CEF|d OCLCQ|d DEBSZ|d OCLCQ|d NLE|d OCLCF|d OCLCQ|d IDEBK|d COO|d E7B|d OCLCQ|d AU@|d FEM|d OCLCQ|d WYU|d UAB|d STF|d VT2|d RDF|d UKAHL|d CZL|d LVT|d DST|d OCLCQ|d INARC|d OCLCO|d OCLCL
049 |a TKLA
050 4|a QA76.642|b .B74 2009
08204|a 005.275|2 22
1001 |a Breshears, Clay.
24514|a The art of concurrency /|c Clay Breshears.
250 |a 1st ed.
260 |a Beijing ;|a Cambridge :|b O'Reilly,|c ©2009.
300 |a 1 online resource (xiii, 285 pages)
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
4900 |a Theory in practice
5050 |a Table of Contents; Preface; Why Should You Read This Book?; Who Is This Book For?; What's in This Book?; Conventions Used in This Book; Using Code Examples; Comments and Questions; Safari® Books Online; Acknowledgments; Chapter 1. Want to Go Faster? Raise Your Hands if You Want to Go Faster!; Some Questions You May Have; What Is a Thread Monkey?; Parallelism and Concurrency: What's the Difference?; Why Do I Need to Know This? What's in It for Me?; Isn't Concurrent Programming Hard?; Aren't Threads Dangerous?; Four Steps of a Threading Methodology
5058 |a Step 1. Analysis: Identify Possible ConcurrencyStep 2. Design and Implementation: Threading the Algorithm; Step 3. Test for Correctness: Detecting and Fixing Threading Errors; Step 4. Tune for Performance: Removing Performance Bottlenecks; The testing and tuning cycle; What About Concurrency from Scratch?; Background of Parallel Algorithms; Theoretical Models; Distributed-Memory Programming; Parallel Algorithms Literature; Shared-Memory Programming Versus Distributed-Memory Programming; Common Features; Redundant work; Dividing work; Sharing data; Static/dynamic allocation of work
5058 |a Features Unique to Shared MemoryLocal declarations and thread-local storage; Memory effects; Communication in memory; Mutual exclusion; Producer/consumer; Readers/writer locks; This Book's Approach to Concurrent Programming; Chapter 2. Concurrent or Not Concurrent?; Design Models for Concurrent Algorithms; Task Decomposition; What are the tasks and how are they defined?; What are the dependencies between tasks and how can they be satisfied?; How are the tasks assigned to threads?; Example: numerical integration; Data Decomposition; How should you divide the data into chunks?
5058 |a How can you ensure that the tasks for each chunk have access to all data required for updates?How are the data chunks (and tasks) assigned to threads?; Example: Game of Life on a finite grid; Concurrent Design Models Wrap-Up; What's Not Parallel; Algorithms with State; Recurrences; Induction Variables; Reduction; Loop-Carried Dependence; Not-so-typical loop-carried dependence; Chapter 3. Proving Correctness and Measuring Performance; Verification of Parallel Algorithms; Example: The Critical Section Problem; First Attempt; Second Attempt; Third Attempt; Fourth Attempt; Dekker's Algorithm
5058 |a Case 1Case 2a: T0 is the favored thread; Case 2b: T1 is the favored thread; Case 3; What about indefinite postponement?; What Did You Learn?; There Are No Evil Threads, Just Threads Programmed for Evil; Performance Metrics (How Am I Doing?); Speedup; Amdahl's Law; Gustafson-Barsis's Law; Efficiency; One Final Note on Speedup and Efficiency; Review of the Evolution for Supporting Parallelism in Hardware; Chapter 4. Eight Simple Rules for Designing Multithreaded Applications; Rule 1: Identify Truly Independent Computations; Rule 2: Implement Concurrency at the Highest Level Possible
520 |a If you're looking to take full advantage of multi-core processors with concurrent programming, this practical book provides the knowledge and hands-on experience you need. The Art of Concurrency is one of the few resources to focus on implementing algorithms in the shared-memory model of multi-core processors, rather than just theoretical models or distributed-memory architectures. The book provides detailed explanations and usable samples to help you transform algorithms from serial to parallel code, along with advice and analysis for avoiding mistakes that programmers typically make when first attempting these computations. Written by an Intel engineer with over two decades of parallel and concurrent programming experience, this book will help you:<p Understand parallelism and concurrency Explore differences between programming for shared-memory and distributed-memory Learn guidelines for designing multithreaded applications, including testing and tuning Discover how to make best use of different threading libraries, including Windows threads, POSIX threads, OpenMP, and Intel Threading Building Blocks Explore how to implement concurrent algorithms that involve sorting, searching, graphs, and other practical computations The Art of Concurrency shows you how to keep algorithms scalable to take advantage of new processors with even more cores. For developing parallel code algorithms for concurrent programming, this book is a must.
546 |a English.
5880 |a Print version record.
590 |a O'Reilly|b O'Reilly Online Learning: Academic/Public Library Edition
650 0|a Parallel programming (Computer science)|0 http://id.loc.gov/authorities/subjects/sh85097827
650 0|a Computer programming.|0 http://id.loc.gov/authorities/subjects/sh85107310
650 6|a Programmation (Informatique)
650 6|a Programmation parallèle (Informatique)
650 7|a computer programming.|2 aat
65017|a Parallel programming (Computer science)|2 bisacsh
650 7|a Parallel programming (Computer science)|2 blmlsh
650 7|a Computer programming|2 fast
650 7|a Parallel programming (Computer science)|2 fast
655 4|a Software Development & Engineering; Programming; Programming Languages.
758 |i has work:|a The art of concurrency (Text)|1 https://id.oclc.org/worldcat/entity/E39PCGF8rRbmmqFy7yvdrWp4C3|4 https://id.oclc.org/worldcat/ontology/hasWork
77608|i Print version:|t Art of concurrency.|d Beijing; Cambridge: O'Reilly, ©2009|z 9780596521530|w (OCoLC)263978506
85640|u https://ezproxy.knoxlib.org/login?url=https://learning.oreilly.com/library/view/~/9780596802424/?ar
938 |a Askews and Holts Library Services|b ASKH|n AH29298013
938 |a ebrary|b EBRY|n ebr10762126
938 |a ProQuest MyiLibrary Digital eBook Collection|b IDEB|n cis28417968
938 |a Internet Archive|b INAR|n artofconcurrency0000bres
994 |a 92|b TKL