SlideShare a Scribd company logo
Virtual Machine Support for Many-Core ArchitecturesDecoupling Abstract from Concrete Concurrency ModelsStefan MarrVrijeUniversiteitBrusselPLACES Workshop, 22nd March 2009, York, UK
AgendaMotivationConcurrency Support for VM Instruction SetsMethodologyCombining Different ModelsInvestigate TradeoffsResearch Platform3/21/092VM Support forMany-CoreArchitectures
The Free Lunch Is OverMany Core ≠ Many CoreHomogeneous vs. heterogeneous designsDifferent memory and cache patterns/partitionsDifferent concrete concurrency models3/21/0931. MotivationCell Broadband Engine - 1 PPE, 8 SPE - bus interconnectIntel Larrabee - up to 48 cores (IA32) - bus interconnect,    virtual shared memoryTilera TILE64  - 64 cores (MIPS) - up to 866 MHz - virtual shared memory
Abstract Concurrency ModelsBroad range of programming modelsShared memory with locking is error-prone/hardSTM and actors still not mainstreamCombinations and new approaches expected3/21/0941. Motivation
Virtual Machines as Abstraction Layer3/21/0951. MotivationC#Prolog, …JVM/CLR/…Today, concurrency support is very limited!
Concurrency Support for VM Instruction Sets3/21/096
MethodologyTo develop instruction set with concurrency supportCombination of concurrency modelsGuidelines for design decision, tradeoffsInstruction set design Application areaGeneral purpose/multi-langVMs like JVM/CLRSpecial purpose VMs like DalvikVM3/21/097
Combining Different Models3/21/0982. Concurrency Support for VM Instruction SetsConsider abstract models separately
Distil basic concepts/instructions
Analyze design space for ISA
Stepwise integration
Based on existing ideasTradeoffs to be ConsideredModel combinationsDifferent types/approaches of integrationInstruction set sizeDesign space with respect to #instructionsInstruction set typeOpcode vs. higher level representation…?3/21/0992. Concurrency Support for VM Instruction Sets
Research PlatformRequirements for an appropriate VMPortable, support for Linux and MIPSAvailable STM and Actors languages/librariesUnused instructions in bytecode/opcode setEasy to adapt just-in-time compiler3/21/0910

More Related Content

PPTX
MultiLevelGridPresentation
PPT
Cirrostratus first overview
PPT
Storage Design
PDF
00463517b1e90c1e63000000
PDF
Design of bare metal proxy compute node
PDF
Internals of concurent managers
PPTX
Supporting Concurrency Abstractions in High-level Language Virtual Machines
PDF
VLSI- An Automotive Application Perspective
MultiLevelGridPresentation
Cirrostratus first overview
Storage Design
00463517b1e90c1e63000000
Design of bare metal proxy compute node
Internals of concurent managers
Supporting Concurrency Abstractions in High-level Language Virtual Machines
VLSI- An Automotive Application Perspective

Similar to Virtual Machine Support for Many-Core Architectures: Decoupling Abstract from Concrete Concurrency Models (9)

PDF
introduction to virtual machine and awareness
PPT
Unit 5-lecture 5
PDF
27 multicore
PPTX
Intermediate Language Design of High-level Language VMs: Towards Comprehensiv...
PPTX
Multiprocessor.pptx
PPTX
05 instruction set design and architecture
PDF
Os Lamothe
PPTX
Lecture 1-vs.pptx.......................
PPT
Real-Time Scheduling Algorithms
introduction to virtual machine and awareness
Unit 5-lecture 5
27 multicore
Intermediate Language Design of High-level Language VMs: Towards Comprehensiv...
Multiprocessor.pptx
05 instruction set design and architecture
Os Lamothe
Lecture 1-vs.pptx.......................
Real-Time Scheduling Algorithms
Ad

More from Stefan Marr (20)

PPTX
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
PPTX
Seminar on Parallel and Concurrent Programming
PPTX
Optimizing Communicating Event-Loop Languages with Truffle
PPTX
Tracing versus Partial Evaluation: Which Meta-Compilation Approach is Better ...
PPTX
Why Is Concurrent Programming Hard? And What Can We Do about It?
PPTX
Zero-Overhead Metaprogramming: Reflection and Metaobject Protocols Fast and w...
PPTX
Building High-Performance Language Implementations With Low Effort
PPTX
Cloud PARTE: Elastic Complex Event Processing based on Mobile Actors
PDF
Identifying A Unifying Mechanism for the Implementation of Concurrency Abstra...
PDF
Sly and the RoarVM: Parallel Programming with Smalltalk
PDF
Which Problems Does a Multi-Language Virtual Machine Need to Solve in the Mul...
PDF
Sly and the RoarVM: Exploring the Manycore Future of Programming
PDF
PHP.next: Traits
PDF
The Price of the Free Lunch: Programming in the Multicore Era
PDF
Locality and Encapsulation: A Foundation for Concurrency Support in Multi-Lan...
PPTX
Insertion Tree Phasers: Efficient and Scalable Barrier Synchronization for Fi...
PPTX
Encapsulation and Locality: A Foundation for Concurrency Support in Multi-Lan...
PDF
VMADL: An Architecture Definition Language for Variability and Composition ...
PPT
Metaprogrammierung und Reflection
PPT
Traits: A New Language Feature for PHP?
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...
Seminar on Parallel and Concurrent Programming
Optimizing Communicating Event-Loop Languages with Truffle
Tracing versus Partial Evaluation: Which Meta-Compilation Approach is Better ...
Why Is Concurrent Programming Hard? And What Can We Do about It?
Zero-Overhead Metaprogramming: Reflection and Metaobject Protocols Fast and w...
Building High-Performance Language Implementations With Low Effort
Cloud PARTE: Elastic Complex Event Processing based on Mobile Actors
Identifying A Unifying Mechanism for the Implementation of Concurrency Abstra...
Sly and the RoarVM: Parallel Programming with Smalltalk
Which Problems Does a Multi-Language Virtual Machine Need to Solve in the Mul...
Sly and the RoarVM: Exploring the Manycore Future of Programming
PHP.next: Traits
The Price of the Free Lunch: Programming in the Multicore Era
Locality and Encapsulation: A Foundation for Concurrency Support in Multi-Lan...
Insertion Tree Phasers: Efficient and Scalable Barrier Synchronization for Fi...
Encapsulation and Locality: A Foundation for Concurrency Support in Multi-Lan...
VMADL: An Architecture Definition Language for Variability and Composition ...
Metaprogrammierung und Reflection
Traits: A New Language Feature for PHP?
Ad

Recently uploaded (20)

PPTX
Machine Learning_overview_presentation.pptx
PDF
Approach and Philosophy of On baking technology
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Cloud computing and distributed systems.
Machine Learning_overview_presentation.pptx
Approach and Philosophy of On baking technology
20250228 LYD VKU AI Blended-Learning.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Assigned Numbers - 2025 - Bluetooth® Document
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
MYSQL Presentation for SQL database connectivity
Digital-Transformation-Roadmap-for-Companies.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
The AUB Centre for AI in Media Proposal.docx
A comparative analysis of optical character recognition models for extracting...
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Reach Out and Touch Someone: Haptics and Empathic Computing
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Unlocking AI with Model Context Protocol (MCP)
Cloud computing and distributed systems.

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

Editor's Notes

  • #3: 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
  • #6: 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
  • #13: Additional VMs which could be suitable?
  • #14: 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