Buch, Englisch, Band 27, 244 Seiten, Format (B × H): 160 mm x 241 mm, Gewicht: 1220 g
Reihe: The Springer International Series in Engineering and Computer Science
Buch, Englisch, Band 27, 244 Seiten, Format (B × H): 160 mm x 241 mm, Gewicht: 1220 g
Reihe: The Springer International Series in Engineering and Computer Science
ISBN: 978-0-89838-235-8
Verlag: Springer US
Concurrent data structures simplify the development of concurrent programs by encapsulating commonly used mechanisms for synchronization and commu nication into data structures. This thesis develops a notation for describing concurrent data structures, presents examples of concurrent data structures, and describes an architecture to support concurrent data structures. Concurrent Smalltalk (CST), a derivative of Smalltalk-80 with extensions for concurrency, is developed to describe concurrent data structures. CST allows the programmer to specify objects that are distributed over the nodes of a concurrent computer. These distributed objects have many constituent objects and thus can process many messages simultaneously. They are the foundation upon which concurrent data structures are built. The balanced cube is a concurrent data structure for ordered sets. The set is distributed by a balanced recursive partition that maps to the subcubes of a binary 7lrcube using a Gray code. A search algorithm, VW search, based on the distance properties of the Gray code, searches a balanced cube in O(log N) time. Because it does not have the root bottleneck that limits all tree-based data structures to 0(1) concurrency, the balanced cube achieves 0C.:N) con currency. Considering graphs as concurrent data structures, graph algorithms are pre sented for the shortest path problem, the max-flow problem, and graph parti tioning. These algorithms introduce new synchronization techniques to achieve better performance than existing algorithms.
Zielgruppe
Research
Autoren/Hrsg.
Fachgebiete
- Mathematik | Informatik EDV | Informatik Daten / Datenbanken Automatische Datenerfassung, Datenanalyse
- Mathematik | Informatik EDV | Informatik Technische Informatik Hochleistungsrechnen, Supercomputer
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Funktionale, Logische, Parallele und Visuelle Programmierung
- Technische Wissenschaften Elektronik | Nachrichtentechnik Elektronik Bauelemente, Schaltkreise
- Technische Wissenschaften Elektronik | Nachrichtentechnik Elektronik Mikroprozessoren
Weitere Infos & Material
1 Introduction.- 1.1 Original Results.- 1.2 Motivation.- 1.3 Background.- 1.4 Concurrent Computers.- 1.5 Summary.- 2 Concurrent Smalltalk.- 2.1 Object-Oriented Programming.- 2.2 Distributed Objects.- 2.3 Concurrency.- 2.4 Locks.- 2.5 Blocks.- 2.6 Performance Metrics.- 2.7 Summary.- 3 The Balanced Cube.- 3.1 Data Structure.- 3.2 Search.- 3.3 Insert.- 3.4 Delete.- 3.5 Balance.- 3.6 Extension to B-Cubes.- 3.7 Experimental Results.- 3.8 Applications.- 3.9 Summary.- 4 Graph Algorithms.- 4.1 Nomenclature.- 4.2 Shortest Path Problems.- 4.3 The Max-Flow Problem.- 4.4 Graph Partitioning.- 4.5 Summary.- 5 Architecture.- 5.1 Characteristics of Concurrent Algorithms.- 5.2 Technology.- 5.3 Concurrent Computer Interconnection Networks.- 5.4 A Message-Driven Processor.- 5.5 Object Experts.- 5.6 Summary.- 6 Conclusion.- A Summary of Concurrent Smalltalk.- B Unordered Sets.- B.1 Dictionaries.- B.2 Union-Find Sets.- C On-Chip Wire Delay.