Multi-processor programming art (revision)

Source: Internet
Author: User
The art of Multiprocessor programming, revised first edition by Herlihy, M .) (US) Shavit (n .) translator: Jin Hai Hu Kan series name: Computer Science Series Press: Machinery Industry Press ISBN: 9787111418580 Release Date: May 2013 published on: 16 open page: 1 release: 1-1 category: computer> Computer Organization and architecture> microprocessor/CPU more about "art of multi-processor programming (revision) the computer book "Art of multi-processor programming (revision)" describes the guiding principles of multi-processor programming in two aspects: principle and practice, it includes the algorithm technologies necessary to compile efficient multi-processor programs. In addition, the appendix provides the background and basic hardware knowledge for programming using other programming language packs (such as the pthreads libraries of C #, C and C ++. The art of multi-processor programming (revised version) is suitable for students and graduate students of computer science and related majors in colleges and universities. It can also be used as a reference book for related technical personnel. The art of multi-processor programming (revision) publisher's words translator's preface teaching suggestion Chapter 1 Introduction 1st shared object and synchronization 11.1 examples of life 41.2.1 mutex characteristics 61.2.2 morality 21.2 producer-consumer question 71.3 reader-writer question 71.4 parallelism dilemma 91.5 Parallelism program Design 111.7 this chapter notes 111.8 exercise 11 first part principle chapter 2nd mutex 142.1 time 14.2.2 critical section 142.3 dual thread solution 162.3.1lockone class 162.3.2locktwo class 172.3.3peterson lock 182.4 filter lock 192.5 fairness 212.6bakery algorithm 212.7 bounded Timestamp 232.8 lower limit of number of storage units 252.9 comments in this chapter 272.10 exercises 28 chapter 3rd concurrent objects 313.1 concurrency and correctness 313.2 sequence objects 333.3 static consistency 343.4 sequence consistency 353.5 linearity 383.5.1 linearity point 383.5.2 evaluation 383.6 formal Definition 383.6.1 linearity 393.6.2 linearity composite 403.6.3 non-blocking feature 403.7 evolution condition 413.8java Memory Model 433.8.1 lock and synchronization block 443.8.2volatile domain 443.8.3final domain 443.9 evaluation 453.10 comments in this chapter 463.11 exercise 46 4th chapter share memory basics 504.1 register space 504.2 register construction 544.2.1mrsw Security register rules Boolean register 554.2.3m-value mrsw Rule Register 564.2.4srsw atomic register 574.2.5mrsw atomic register 604.3 atomic snapshot 624.3.1 accessibility snapshot 634.3.2 No wait for snapshot 644.3.3 correctness proof 664.4 note 674.5 exercise 67 chapter 5th synchronization of atomic operation relative capability 705.1 consistency number 705.2 atomic register 725.3 consistency protocol 745.4fifo queue 745.5 multiple assignment object 775.6 read-Modify-write operation 795.7common2rmw operation 805.8 compareandset () operation 815.9 comments in this chapter 825.10 exercises 83 chapter 6th consistency universality 876.1 introduction 876.2 versatility 886.3 a general lockless construction 886.4 a general wait-free construction 916.5 this chapter comments 956.6 exercise 95 Part 2 practice chapter 2 spin locks and contention 7th actual problems 987.1 test-set locks 987.2 further on TAS-based spin locks 1007.3 exponential retreat 1027.4 queue locks 1047.5.1 array-based locks 1047.5.2clh queue locks 2.167.5.3mcs queue locks 1027.5 time limit queue lock 1107.7 composite lock 1127.8 Level Lock 1187.8.1 Level Lock 1187.8.2 level clh queue lock 1197.9 all locks managed by one lock 1237.10 this chapter notes 1237.11 exercise 124 chapter 8th management process and blocking synchronization 1268.1 introduction 1268.2 tube locks and conditions 1268.2.1 conditions 20178.2.2 wakeup loss problems 1308.3 reader-writer locks 1318.3.1 simple reader-writer locks 1318.3.2 fair reader-writer locks 1328.4 our reentrant locks 1348.5 semaphores 1358.6 comments in this Chapter 1368.7 exercise 136 chapter 9th linked list: lock functions 1399.1 introduction 1399.2 linked list-based set 1409.3 concurrent inference 1419.4 coarse-grained synchronization 1429.5 fine-grained synchronization 1439.6 optimistic synchronization 1469.7 inertia synchronization 1499.8 non-blocking synchronization 1539.9 discussion 1579.10 this chapter notes 1579.11 exercises 158 Chapter 10th Parallelism queue and ABA problems 15910.1 introduction 15910.2 queue 16010.3 Part 1 bounded queue 16010.4 completely unbounded queue 16310.5 lockless unbounded queue 16410.6 memory recovery and ABA problems 16610.7 Dual Data Structure 17010.8 this chapter notes 17210.9 exercises 172 chapter 11th concurrency stack and elimination 17411.1 introduction 17411.2 lockless unbounded stack 17411.3 elimination 17611.4 rollback elimination stack 17611.4.1 lockless switch 17711.4.2 elimination array 17911.5 this chapter notes 18111.6 exercises 181 chapter 12th counting, sorting and distributed collaboration 18412.1 introduction 18412.2 sharing count 18412.3 software portfolio 18512.3.1 overview 18512.3.2 performance and robustness of an extended instance 201712.3.3 19112.4 static consistent pool and counter 19212.5 counting network 19212.5.1 counting network 19312.5.2 double tuning counting network 19412.5.3 performance and assembly line 20112.6 diffraction tree 20112.7 parallel sorting 20412.8 sorting network 20412.9 sample sorting 20712.10 distributed collaboration 20812.11 this chapter notes 20812.12 exercise 209 chapter 13th concurrent hash and Inherent Parallelism 21213.1 introduction 21213.2 closed address hash set 13.2.1 coarse-grained hash set 21413.2.2 spatial hash set 21513.2.3 fine-grained hash set 21713.3 lockless hash set 21913.3.1 recursive and ordered division 21913.3.2bucketlist class alias [T] class 22313.4 open address hash set combine hash 22513.4.2 concurrent cuckoo hash 22613.4.3 spatial shard concurrency cuckoo hash 23013.4.4 fine-grained concurrent cuckoo hash set 23113.5 comments in this chapter 23313.6 exercises 234 chapter 14th table jumping and balanced searching 23514.1 introduction 23514.2 sequence table jumping 23514.3 lock-based and

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.