Wesley Miaw - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Wesley Miaw

Description:

Microprocessors: Hyper-threading. Web Servers: EquiLoad ... Operating systems treat the hyper-threading processor as two physical processors. ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 30
Provided by: wes66
Category:

less

Transcript and Presenter's Notes

Title: Wesley Miaw


1
A Load Balancing Framework
  • Wesley Miaw
  • University of North Carolina at Chapel Hill

2
Load Balancing
  • Move from big iron to many small cheap resources.
  • Jobs distributed across a pool of resources.
  • Performance minimize delay, maximize resource
    use/efficiency.

3
Load Balancing Applications
  • Microprocessors Hyper-threading
  • Web Servers EquiLoad
  • Grid Computing Partitioning Dynamic Adaptive
    Grid Hierarchies (DAGP)

4
Grid Computing
  • e.g. SETI_at_home
  • Ad hoc, widely distributed, heterogeneous
    resources.
  • Autonomous resource management.
  • Client application submits independent
    computations for processing.

5
Framework
  • Job Partitioning
  • Job Distribution
  • Resource Management
  • Client Interface

6
Job Partitioning
  • Classify jobs into groups by type and quantity of
    resources needed.
  • Goal is to maximize performance when distributing
    jobs.

7
Hyper-threadPartitioning
  • Each thread treated as a job.
  • No job (thread) classification.
  • Threads execute simultaneously on a single
    processor without context-switching.

8
EquiLoad Partitioning
  • Intermediate server forwards requests over a
    cluster.
  • Document size ltgt processing time.
  • Create equal queues at each server.

9
EquiLoad Partitioning
10
DAGP Partitioning
  • Grid computing maps resources onto a coordinate
    space.

11
DAGP Partitioning
  • Partition the space to finish jobs as quickly as
    possible.

12
Framework
  • Job Partitioning
  • Job Distribution
  • Resource Management
  • Client Interface

13
Job Distribution
  • Assign jobs to resources to maximize performance.
  • Use partitioning information to make smart
    decisions.

14
Hyper-thread Distribution
15
EquiLoad Distribution
  • HTTP Requests sent to dispatcher.
  • Dispatcher forwards to correct host.
  • Incorrect forwards redirected to correct host.

16
DAGP Distribution
  • Expose data-parallelism.
  • Minimize communication overhead.
  • Balance load.
  • Minimize repartitioning overhead.

17
Data-Parallelism
  • Perform computations in parallel with respect to
    the data, not the computation.
  • Perform the same operation on two halves of the
    data.
  • Not performing different operations on the data
    simultaneously.

18
DAGP Distribution
19
Framework
  • Job Partitioning
  • Job Distribution
  • Resource Management
  • Client Interface

20
Resource Management
  • Duplicated and additional resources need
    coordination.
  • Manage resources to minimize communication,
    data-transfer, and shared resource overhead.

21
Hyper-thread Resources
  • Shared resources memory bus, caches, execution
    units, branch predictors, queues.
  • Duplicated resources TLBs, instruction pointers,
    processor state.
  • Execution modes MT-mode, ST0-mode, ST1-mode.

22
EquiLoad Resources
23
DAGP Resources
  • No special resource management.
  • Grid computing is a resource management domain.

24
Framework
  • Job Partitioning
  • Job Distribution
  • Resource Management
  • Client Interface

25
Client Interface
  • Simple interfaces are easier to use.
  • Backwards-compatible interfaces can be deployed
    cheaply.

26
Hyper-thread Interface
  • Hardware presents the illusion of two physical
    processors.
  • Operating systems treat the hyper-threading
    processor as two physical processors.
  • New HALT instruction transitions between MT-mode
    and STX-modes.

27
EquiLoad Interface
  • Completely backwards-compatible with web
    browsers.
  • Accept HTTP requests, return HTTP responses.
  • A new interface would never be deployed.

28
DAGP Interface
  • Identifying independent computation blocks is a
    manual process.
  • Distribution of computation blocks may be handled
    by software.
  • Use DAGP on the client to tell the grid where to
    distribute jobs.
  • Use DAGP on the grid to distribute submitted jobs.

29
Framework
  • Job Partitioning
  • Job Distribution
  • Resource Management
  • Client Interface
Write a Comment
User Comments (0)
About PowerShow.com