Virtual Machine Support for Many-Core Architectures: Decoupling Abstract from Concrete Concurrency Models

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Notes on slide 1

    Talk presents the idea and goal of my PhD researchPoints to try discussion:Evaluation work, better to use JVM or LuaOther stuff to be evaluated?Targeted research platform: TILE6430min -> 20min slides + 10min discussion

    What we see with JVM and CLR:Run on various platforms (especially JVM)Are platform for wide range of different languages (hundreds, maybe even thousands)Let me explain this statementCommon VMs support threading exclusivelyLanguages: no direct support for other models  extra effortsVM: implementation on many-core systems cannot benefit from higherlevel constructs similarities

    Additional VMs which could be suitable?

    I would like to discussion following thingsSuitability of chosen VMsValid reasons to chose JVM over something else? I.e. reasons to not use Lua?-Other platforms then TILE64 or CellBE, which might be interesting?Tradeoffs which should be investigatedThe final goal for my PhD is to cover the concurrency part of ISA/VM design as a cornerstone for multi-paradigm VMs

    Favorites, Groups & Events

    Virtual Machine Support for Many-Core Architectures: Decoupling Abstract from Concrete Concurrency Models - Presentation Transcript

    1. Virtual Machine Support for Many-Core Architectures
      Decoupling Abstract from Concrete Concurrency Models
      Stefan Marr
      VrijeUniversiteitBrussel
      PLACES Workshop, 22nd March 2009, York, UK
    2. Agenda
      Motivation
      Concurrency Support for VM Instruction Sets
      Methodology
      Combining Different Models
      Investigate Tradeoffs
      Research Platform
      3/21/09
      2
      VM Support forMany-CoreArchitectures
    3. The Free Lunch Is Over
      Many Core ≠ Many Core
      Homogeneous vs. heterogeneous designs
      Different memory and cache patterns/partitions
      Different concrete concurrency models
      3/21/09
      3
      1. Motivation
      Cell Broadband Engine
      - 1 PPE, 8 SPE
      - bus interconnect
      Intel Larrabee
      - up to 48 cores (IA32)
      - bus interconnect, virtual shared memory
      Tilera TILE64
      - 64 cores (MIPS)
      - up to 866 MHz
      - virtual shared memory
    4. Abstract Concurrency Models
      Broad range of programming models
      Shared memory with locking is error-prone/hard
      STM and actors still not mainstream
      Combinations and new approaches expected
      3/21/09
      4
      1. Motivation
    5. Virtual Machines as Abstraction Layer
      3/21/09
      5
      1. Motivation
      C#
      Prolog, …
      JVM/CLR/…
      Today, concurrency support is very limited!
    6. Concurrency Support for VM Instruction Sets
      3/21/09
      6
    7. Methodology
      To develop instruction set with concurrency support
      Combination of concurrency models
      Guidelines for design decision, tradeoffs
      Instruction set design
      Application area
      General purpose/multi-langVMs like JVM/CLR
      Special purpose VMs like DalvikVM
      3/21/09
      7
    8. Combining Different Models
      3/21/09
      8
      2. Concurrency Support for VM Instruction Sets
      • Consider abstract models separately
      • Distil basic concepts/instructions
      • Analyze design space for ISA
      • Stepwise integration
      • Based on existing ideas
    9. Tradeoffs to be Considered
      Model combinations
      Different types/approaches of integration
      Instruction set size
      Design space with respect to #instructions
      Instruction set type
      Opcode vs. higher level representation
      …?
      3/21/09
      9
      2. Concurrency Support for VM Instruction Sets
    10. Research Platform
      Requirements for an appropriate VM
      Portable, support for Linux and MIPS
      Available STM and Actors languages/libraries
      Unused instructions in bytecode/opcode set
      Easy to adapt just-in-time compiler
      3/21/09
      10
    11. Tilera TILE64â„¢
      3/21/09
      11
      3. Research Platform
      • 64 cores, up to 866 MHz
      • MIPS derived 32-bit VLIW ISA
      • L1 cache/core: 8KB instructions, 8KB data
      • L2 cache/core: 64KB
      • 4 DDR2 RAM controller
    12. Choosing a VM as Research Platform
      3/21/09
      12
      3. Research Platform
    13. Discussion
      3/21/09
      13
      VM Support forMany-CoreArchitectures
      Methodology
      Tradeoffs
      Concurrency Model Integration
      Research Platform
      Instruction Set Design

    + Stefan MarrStefan Marr, 3 months ago

    custom

    275 views, 0 favs, 0 embeds more stats

    The upcoming many-core architectures require softwa more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 275
      • 275 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 1
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories