Online only

Using Concurrency and Parallelism Effectively II

No reward points for this product.


₹ 0.00

CSE-88

In the second part of Using Concurrency and Parallelism Effectively we look at how parallelism can be exploited in a variety of modern computing system environments. These include networked and distributed systems, clusters of workstations and, of course multi-core processors.

More details

10 Items

Book Type Ebook

In the second part of Using Concurrency and Parallelism Effectively we look at how parallelism can be exploited in a variety of modern computing system environments. These include networked and distributed systems, clusters of workstations and, of course multi-core processors. Multi-core processors have now become ubiquitous and it is nigh on impossible to buy any form of off-the-shelf computing system that does not contain a multi-core processor. One key advantage of using a system based upon the Java Virtual Machine is that we can make use of multi-core processors without any additional effort because the parallel constructs used in this book are able to make immediate and effective use of multi-core processors without any additional effort on the part of the programmer other than ensuring that their code contains sufficient parallel components to utilise the cores. The crucial advantage of the underlying JCSP package is that the definition of the processes does not change as we move from an interleaved concurrent implementation to truly parallel system in which processes are run of different cores or processors over a network. All that changes is the manner in which the processes are invoked.

Content

  1. Communication over Networks: Process Parallelism
    1. Network Nodes and Channel Numbers
    2. Multiple Writers to One Reader
    3. A Single Writer Connected to Multiple Readers
    4. Networked Dining Philosophers
    5. Running the CREW Database in a Network
    6. Summary
  2. Dynamic Process Networks: A Print Server
    1. Print Spooler Data Objects
    2. The PrintUser Process
    3. The PrintSpooler Process
    4. Invoking The PrintSpooler Node
    5. Invoking A PrintUser Node
    6. Summary
  3. More Testing: Non-terminating Processes
    1. The Test-Network
    2. The Process Network Under Test
    3. Running The Test
    4. Summary
  4. Mobile Agents: Going for a Trip
    1. Mobile Agent Interface
    2. A First Parallel Agent System
    3. Running the Agent on a Network of Nodes
    4. Result Returning Agent
    5. An Agent with Forward and Back Channels
    6. Let’s Go On A trip
    7. Summary
  5. Mobile Processes: Ubiquitous Access
    1. The Travellers’ Meeting System
    2. The Service Architecture
    3. Universal Client
    4. The Access Server
    5. Group Location Service
    6. Running the System
    7. Commentary
  6. Redirecting Channels: A Self-Monitoring Process Ring
    1. Architectural Overview
    2. The Receiver process
    3. The Prompter Process
    4. The Queue Process
    5. The State Manager Process
    6. The Stop Agent
    7. The Restart Agent
    8. The Ring Agent Element Process
    9. Running A Node
    10. Observing The System’s Operation
    11. Summary
    12. Challenges
  7. Mobility: Process Discovery
    1. The Adaptive Agent
    2. The Node Process
    3. The Data Generator Process
    4. The Gatherer Process
    5. Definition of the Data Processing Processes
    6. Running the System
    7. Typical Output From the Gatherer Process
    8. Summary
    9. Challenge
  8. Automatic Class Loading – Process Farms
    1. Data Parallel Architectures
    2. Task Parallel Architectures
    3. Generic Architectures
    4. Architectural Implementation
    5. Summary
  9. Programming High Performance Clusters
    1. Architectural Overview
    2. The Host and Node Scripts
    3. An Application – Montecarlo Pi
    4. Summary
  10. Big Data – Solution Scaling
    1. Concordance – A Typical Problem
    2. Concordance Data Structures
    3. The Algorithm
    4. Analysis of Total Time Results
    5. Analysis of Algorithm Phases
    6. Dealing with Larger Data Sets
    7. Implementation of the Scalable Architecture
    8. Performance Analysis of the Distributed System
    9. Summary
  11. Concluding Remarks
    1. The Initial Challenge – A Review
    2. Final Thoughts
  12. References
30 other products in the same category: