|
![]() |
|||
|
||||
OverviewMulti-Threaded Object-Oriented MPI-Based Message Passing Interface: The ARCH Library presents ARCH, a library built as an extension to MPI. ARCH relies on a small set of programming abstractions that allow the writing of well-structured multi-threaded parallel codes according to the object-oriented programming style. ARCH has been written with C++. The book describes the built-in classes, and illustrates their use through several template application cases in several fields of interest: Distributed Algorithms (global completion detection, distributed process serialization), Parallel Combinatorial Optimization (A* procedure), Parallel Image-Processing (segmentation by region growing). It shows how new application-level distributed data types - such as a distributed tree and a distributed graph - can be derived from the built-in classes. A feature of interest to readers is that both the library and the application codes used for illustration purposes are available via the Internet. The material can be downloaded for installation and personal parallel code development on the reader's computer system. ARCH can be run on Unix/Linux as well as Windows NT-based platforms. Current installations include the IBM-SP2, the CRAY-T3E, the Intel Paragon, PC-networks under Linux or Windows NT. Multi-Threaded Object-Oriented MPI-Based Message Passing Interface: The ARCH Library is aimed at scientists who need to implement parallel/distributed algorithms requiring complicated local and/or distributed control structures. It can also benefit parallel/distributed program developers who wish to write codes in the object-oriented style. The author has been using ARCH for several years as a medium to teach parallel and network programming. Teachers can employ the library for the same purpose while students can use it for training. Although ARCH has been used so far in an academic environment, it will be an effective tool for professionals as well. Multi-Threaded Object-Oriented MPI-Based Message Passing Interface: The ARCH Library is suitable as a secondary text for a graduate level course on Data Communications and Networks, Programming Languages, Algorithms and Computational Theory and Distributed Computing and as a reference for researchers and practitioners in industry. Full Product DetailsAuthor: Jean-Marc AdamoPublisher: Springer-Verlag New York Inc. Imprint: Springer-Verlag New York Inc. Edition: Softcover reprint of the original 1st ed. 1998 Volume: 446 Dimensions: Width: 15.50cm , Height: 1.00cm , Length: 23.50cm Weight: 0.320kg ISBN: 9781461376408ISBN 10: 1461376408 Pages: 185 Publication Date: 29 October 2012 Audience: Professional and scholarly , Professional & Vocational Format: Paperback Publisher's Status: Active Availability: Manufactured on demand ![]() We will order this item for you from a manufactured on demand supplier. Table of Contents1. Introduction.- 1.1. The MPI Library.- 1.2. Arch.- 1.3. An Overview of Arch.- 2. Threads-Concurrency.- 2.1. Threads.- 2.2. S_Threads.- 2.3. Communication between Son and Father.- 2.4. State-Transition Diagram.- 2.5. ARCH Program Organization.- 3. Synchronous Point-To-Point Communication.- 3.1. Channel Class Organization.- 3.2. Local Channels.- 3.3. Inter-Process Channels.- 3.4. Non-deterministic Many Way Reception.- 3.5. Atomicity.- 4. Asynchronous Point-To-Point Communication.- 4.1. Asynchronous Versus Synchronous.- 4.2. Channels for Asynchronous Point-to-Point Communication.- 4.3. Asynchronous Communication Functions.- 5. Global Data-One-Sided Communication.- 5.1. Motivation.- 5.2. Outline.- 5.3. The Class Global.- 5.4. Example.- 6. Global Completion Detection.- 6.1. Problem Setting.- 6.2. Detecting Completion via Counting.- 6.3. Implementing Counters Algorithm.- 6.4. ARCH Implementation of Counters Algorithm.- 7. Distributed Mutual Exclusion.- 7.1. Problem Setting.- 7.2. Algorithm For Distributed Mutual Exclusion.- 7.3. ARCH-based Implementation.- 8. Parallel A* Algorithm.- 8.1. Sequential A* Algorithm.- 8.2. A* Parallel Implementation.- 9. Global Pointers-Spread Arrays.- 9.1. Global Pointers.- 9.2. Spread Arrays.- 10. Image Segmentation.- 10.1. Region Growing: Sequential Algorithm.- 10.2. Parallel Region Growing.- 10.3. Experimental Results.- References.ReviewsAuthor InformationTab Content 6Author Website:Countries AvailableAll regions |