• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Multiple processor (ppt 2010)
 

Multiple processor (ppt 2010)

on

  • 3,427 views

Modern Operating System

Modern Operating System

Statistics

Views

Total Views
3,427
Views on SlideShare
3,427
Embed Views
0

Actions

Likes
3
Downloads
144
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Multiple processor (ppt 2010) Multiple processor (ppt 2010) Presentation Transcript

    • Multiple Processor System
      Prepared by:
      Arth B. Ramada
      Cristy R. Peralta
      Free Powerpoint Templates
    • Introduction
      • The computer industry has been driven by an endless quest for more and more computing power.
      • Making computer this small may be possible, but then we hit another fundamental problem:
      HEAT DISSIPATION
      • The faster the computer runs, the more heat it generates
      • The smaller the computer, the harder it is to get rid of this heat.
    • Introduction
      • One approach to greater speed is through massively parallel computers.
      • A system consisting of 1000 computers spread all over the world is no different than one consisting of 1000 computers in a single room. Although the delay and other technical characteristics are different.
    • Multiprocessor Systems
      ( a ) Shared-memory multiprocessor
      ( b ) Message-passing multicomputer
      ( c ) Wide area distributed system
    • MULTIPROCESSOR
      Definition:
      • A computer system in which two or more CPUs share full access to a common RAM
      • The CPU can write some value into the memory and then read the word back and get a different value.
    • MULTIPROCESSORS:
      MULTIPROCESSOR HARDWARE
      • UMA (Uniform Memory Access) Multiprocessors
      • UMA Bus-Based SMP Architecture
      • UMA Multiprocessors using Crossbar Switches
      • UMA Multiprocessors using Multistage Switching Networks
      • NUMA (NonUniform Memory Access) Multiprocessor
    • MULTIPROCESSORS:
      UMA Bus-Based SMP Architectures
      ( a ) without caching
      ( b ) with caching
      ( c ) with caching and private memories
    • MULTIPROCESSORS:
      UMA Bus-Based SMP Architectures
      • Two or more CPUs and one or more memory modules all use the same BUS communication.
      • If the bus is busy when a CPU wants to read or write on memory, the CPU just waits until the bus becomes idle.
    • MULTIPROCESSORS:
      UMA Bus-Based SMP Architectures
      • There will be much less bus traffic, and the system can support more CPUs.
      • If the CPU attempts to write a word that is in one or more remote caches, the BUS hardware detects the write and puts a signal on the informing all other caches of the write
    • MULTIPROCESSORS:
      UMA Bus-Based SMP Architectures
      • The compiler should place all the program text, strings, constants and other read-only data & local variables in the private memories
      • The shared memory is then only used for writable shared variables.
    • MULTIPROCESSORS:
      UMA Multiprocessors using Crossbar Switches
      • CROSSPOINT – is a small switch that can be electrically opened or closed.
    • MULTIPROCESSORS:
      UMA Multiprocessors using Crossbar Switches
      • The nicest properties of the crossbar switch is that it is a NONBLOCKING NETWORK.
      “No CPU is ever denied the connections its needs”
      • The worst properties of the crossbar switch is the fact that the number of crosspoints grows (n2).
    • MULTIPROCESSORS:
      UMA Multiprocessors using Multistage Switching Network
      2x2 switch
      Message format
      • Message Format
      • Module  It tell which memory to use.
      • Address  It specifies an address within a module
      • Opcode  Gives the operation, READ or WRITE
      • Value  Contain an operand.
    • MULTIPROCESSORS:
      UMA Multiprocessors using Multistage Switching Network
      Omega Switching Network
      Number of Stages = (Log2n)
      Number of Switches per Stage =(n/2),
      Total Switches = (n/2)Log2n
    • MULTIPROCESSORS:
      NUMA Multiprocessors
      NUMA Machines 3 Key Characteristics:
      There is a single address visible to all CPUs
      Access to remote memory is via LOAD and STORE instructions
      Access to REMOTE MEMORY is slower than access to LOCAL MEMORY
      NC-NUMA (No Caching) - access time to remote memory is not hidden
      CC-NUMA (Cache-Coherent) – caches are present.
    • MULTIPROCESSORS:
      NUMA Multiprocessors
      Directory-Based Multiprocessor - It Maintain a database telling where each cache is and what its status is.
    • MULTIPROCESSORS:
      Multiprocessor Operating System
      Types
      Each CPU Has Its Own Operation System
      The memory divide into as many partition as there are CPUs and give each CPU its own private memory and its own private copy of Operating System
    • MULTIPROCESSORS:
      Multiprocessor Operating System
      Types
      Master-Slave Multiprocessors
      There is one copy of the operating system and its table are present to CPU1.
      All system calls are redirected to CPU1
    • MULTIPROCESSORS:
      Multiprocessor Operating System
      Types
      Symmetric Multiprocessors (SMP)
      There is one copy of the OS in memory but any CPU can run it.
      If the two CPU simultaneously picking the same process to run the same memory page. It associate a MUTEX(Lock) with OS.
    • MULTIPROCESSORS:
      Multiprocessor Synchronization
      TSL (Test and Set Lock) Instruction – TSL instruction must first lock the bus, preventing other CPUs from accessing, then both memory accesses, then unlock the bus
    • MULTIPROCESSORS:
      Multiprocessor Synchronization
      Use of Multiple Locks to avoid cache trashing
    • MULTIPROCESSORS:
      Multiprocessor Scheduling
      TIME SHARING
      The simplest scheduling algorithm for dealing unrelated process is to have a single system wide data structure for ready process
    • MULTIPROCESSORS:
      Multiprocessor Scheduling
      Space Sharing
      This approach used when the processes are related to one another.
      Scheduling multiple threads at the same time across multiple CPUs
    • MULTIPROCESSORS:
      Multiprocessor Scheduling
      Communication between two threads belonging to Process A that are running out of phase.
    • MULTIPROCESSORS:
      Multiprocessor Scheduling
      Gang Scheduling
      Group of related threads are scheduled as a unit (gang)
      All member of a gang run simultaneously on different time shared CPU
      All gang members start and end their time slices together.
    • MULTICOMPUTERS
      Definition:
      • Are tightly-coupled CPUs that do not share memory (each one has its Memory)
      • These systems are also known by a variety of other names, cluster computers and COWS (Cluster of Workstations).
    • MULTICOMPUTERS:
      MULTICOMPUTER HARDWARE
      Interconnection Topologies
      Single Switch
      RING
      GRID
      Double Torus
      CUBE
      4D Hypercube
    • MULTICOMPUTERS:
      MULTICOMPUTER HARDWARE
      Packet – a message that is broken up (either by a user software or a network face.
      Store-and-forward packet switching
    • MULTICOMPUTERS:
      MULTICOMPUTER HARDWARE
      Network Interface Board in a multicomputer
    • MULTICOMPUTERS:
      Low-Level Communication Software
      Node to Network Communication
      Use send & receive rings to coordinates main CPU with on-board CPU
      When a sender has new packet to send, it first checks to see if there is an available slot in the send ring. If not, it must wait, to prevent overrun.
    • MULTICOMPUTERS:
      Blocking versus Nonblocking Calls
      Blocking Calls
      – when a process call sends, it specifies a destination and a buffer to send that destination. While the message has been completely, the sending process is blocked.
      NonBlocking Calls
      – If send is nonblocking, it returns control immediately, before the message is sent.
    • MULTICOMPUTERS:
      Remote Procedure Call
      The program must be bound with a small library procedure called the CLIENT STUB (represent the client procedure)
      The server is bound with a procedure called SERVER STUB.
    • MULTICOMPUTERS:
      Distributed Shared Memory
      Various layers where shared memory:
      (a) – The Hardware
      (b) – The Operating System
      (c) – User-level Software
    • MULTICOMPUTERS:
      Distributed Shared Memory
      Replication
      (a) Pages distributed on 4 machines
      (b) CPU 0 reads page 10
      (c) CPU 1 reads page 10
    • MULTICOMPUTERS:
      Distributed Shared Memory
      False Sharing
      • Too large an effective page size introduces a new problem.
      • The problem here is that although the variable are unrelated, they appear by accident on the same page, so when a process uses one of them, it also gets the other.
    • End of the first half