A Survey of Machine Learning Methods Applied to Computer Architecture - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

A Survey of Machine Learning Methods Applied to Computer Architecture

Description:

'Machine learning is the subfield of artificial intelligence ... J. Eliot B. Moss, Paul E. Utgoff et al. Schedule small blocks of code. Features: (P; Ii ; Ij) ... – PowerPoint PPT presentation

Number of Views:139
Avg rating:3.0/5.0
Slides: 13
Provided by: bal2
Category:

less

Transcript and Presenter's Notes

Title: A Survey of Machine Learning Methods Applied to Computer Architecture


1
A Survey of Machine Learning Methods Applied to
Computer Architecture
  • Paul Lewis
  • Balaji Lakshminarayanan

2
What is Machine learning ?
  • Machine learning is the subfield of
    artificial intelligence that is concerned with
    the design and development of algorithms that
    allow machines to improve their performance over
    time (to learn) based on data Wikipedia
  • Major focus  Automatically produce (induce)
    models, such as rules and patterns, from data.

3
Taxonomy of ML algorithms
  • Supervised learning
  • Training inputs are available with
    appropriate labels.
  • Need to learn the input-output mapping
    function.
  • May be difficult to get properly labeled data in
    many scenarios
  • Performance may degrade if training inputs
    contain wrong labels
  • Unsupervised learning
  • Labeled examples are not available.
  • Group inputs based on relative similarities
  • Easier to get input data
  • However performance may not be as good as
    Supervised learning
  • Reinforcement learning
  • Algorithm learns a policy
  • Every action has some impact in the environment
  • Feedback of environment guides the learning
    algorithm

4
ML for Computer Architecture
  • Four broad areas where ML can be applied
  • Dynamic resource alocation
  • Design space exploration
  • Learning Heuristics for Instruction Scheduling
  • Reduce Simulation time to estimate performance
  • Re configurable computing / Adaptive resource
    allocation on Multi-core processors

5
Learning Heuristics for Basic Block Instruction
Scheduling
  • The basic block instruction scheduling problem
  • Find a minimum length schedule for a basic
    blocka straight-line sequence of code with a
    single entry point and a single exit point
  • Subject to precedence, latency, and resource
    constraints
  • Scheduled code may be viewed as Directed Acyclic
    Graph ( DAG )
  • Problem Find the optimal DAG w.r.t some cost
    function ( eg. Minimize Total number of cycles )

6
Learning to Schedule Straight-Line CodeJ. Eliot
B. Moss, Paul E. Utgoff et al
  • Schedule small blocks of code
  • Features (P Ii Ij)
  • P is the partial schedule (the total order of
    what has been scheduled, and the partial order
    remaining), and I is the set of instructions from
    which the selection is to be made.
  • Supervised learning Training examples needed
  • Easier to get examples of small blocks of
    optimally scheduled code than large blocks

7
Automated compiler/architecture co-design (
Michael Boyle)
  • Design/layout of processor
  • Search across massive design space num
    registers, size of caches etc.
  • Mutli-layered ISA, micro-arch, verilog,
    netlist, polygons
  • Architecture strongly dependent on compiler
    performance
  • Ideally predict performance of a yet to be
    built
  • compiler on a yet to be built architecture

8
Automated compiler/architecture co-design (contd)
  • Predict time of new program on architecture
    space i.e. Create a mapping (P, a) ? t
  • Input Architecture Features a, Output time t
  • Run gradient search on the model space to
    sequentially discover better architectures
  • Genetic algorithms to avoid Local minima ?

9
Coordinated Management of Multiple Interacting
Resources in Chip Multiprocessors( Ramazan
Bitirgen, Engin Ipek, Jose F. Martinez )
  • Efficient sharing of system resources is
    critical to obtaining high utilization and
    enforcing system-level performance objectives on
    chip multiprocessors (CMPs).
  • Three critical resources in virtually any CMP
    design
  • (a) shared cache(s)
  • (b) the chips power budget
  • (c) off-chip memory bandwidth.

10
Automated Design of Application-SpecificSuperscal
ar Processors (Tejas Karkhanis)
  • Compare different allocation options
  • - predict each applications performance as a
    function of the resources allocated to it.
  • Pareto-optimal in terms of
  • - Performance
  • - energy consumption
  • - area for the target application program

11
Hardware Reconfiguration
  • It is become more common for systems to have the
    ability to adaptively reconfigure the hardware
    for different workloads
  • Useful for large serves used to webhost
  • Most approaches currently have fixed policy for
    reassigning resources based on workload

12
Architecture Simulation
  • Normal simulations take long time (weeks/months)
  • Machine learning approach analyzes how metrics of
    code change with changes in architecture
  • Does not use metrics of cache size, hit rate,
    CPI, etc.
  • Uses K means clustering
Write a Comment
User Comments (0)
About PowerShow.com