MCA Standards For Closely Distributed Multicore



Similar documents
Making Multicore Work and Measuring its Benefits. Markus Levy, president EEMBC and Multicore Association

2.1 What are distributed systems? What are systems? Different kind of systems How to distribute systems? 2.2 Communication concepts

Real-Time Operating Systems for MPSoCs

Principles and characteristics of distributed systems and environments

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Driving force. What future software needs. Potential research topics

Middleware. Peter Marwedel TU Dortmund, Informatik 12 Germany. technische universität dortmund. fakultät für informatik informatik 12

12/8/2010. Koen De Bosschere Ghent University Belgium JVM. Process. .NET Virtualization. Virtualization types. Xen. Paravirtualization.

Symmetric Multiprocessing

Distributed Systems LEEC (2005/06 2º Sem.)

System Software and TinyAUTOSAR

How To Virtualize A Storage Area Network (San) With Virtualization

Service Oriented Architecture and the DBA Kathy Komer Aetna Inc. New England DB2 Users Group. Tuesday June 12 1:00-2:15

Seven Challenges of Embedded Software Development

Write a technical report Present your results Write a workshop/conference paper (optional) Could be a real system, simulation and/or theoretical

How Solace Message Routers Reduce the Cost of IT Infrastructure

Data Centric Systems (DCS)

Cluster, Grid, Cloud Concepts

High Performance Computing. Course Notes HPC Fundamentals

Manjrasoft Market Oriented Cloud Computing Platform

Operating System Support for Multiprocessor Systems-on-Chip

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Radware ADC-VX Solution. The Agility of Virtual; The Predictability of Physical

Enea Hypervisor : Facilitating Multicore Migration with the Enea Hypervisor

The Design and Implementation of Scalable Parallel Haskell

Data Center and Cloud Computing Market Landscape and Challenges

BLM 413E - Parallel Programming Lecture 3

Chapter 3. Database Environment - Objectives. Multi-user DBMS Architectures. Teleprocessing. File-Server

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

COM 444 Cloud Computing

Distribution transparency. Degree of transparency. Openness of distributed systems

Virtual Platforms Addressing challenges in telecom product development

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

BSC vision on Big Data and extreme scale computing

Windows Server Virtualization An Overview

Networking Virtualization Using FPGAs

From Ethernet Ubiquity to Ethernet Convergence: The Emergence of the Converged Network Interface Controller

Hardware Acceleration for Just-In-Time Compilation on Heterogeneous Embedded Systems

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

CASE STUDY: Oracle TimesTen In-Memory Database and Shared Disk HA Implementation at Instance level. -ORACLE TIMESTEN 11gR1

Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs. Jim Ready September 18, 2012

David Rioja Redondo Telecommunication Engineer Englobe Technologies and Systems

Servervirualisierung mit Citrix XenServer

Client/Server Computing Distributed Processing, Client/Server, and Clusters

A Survey on Availability and Scalability Requirements in Middleware Service Platform

Advanced Core Operating System (ACOS): Experience the Performance

Xeon+FPGA Platform for the Data Center

Integrated Development of Distributed Real-Time Applications with Asynchronous Communication

Cray Gemini Interconnect. Technical University of Munich Parallel Programming Class of SS14 Denys Sobchyshak

EECS 750: Advanced Operating Systems. 01/28 /2015 Heechul Yun

Multi-core Curriculum Development at Georgia Tech: Experience and Future Steps

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

High Performance or Cycle Accuracy?

Solution Brief Availability and Recovery Options: Microsoft Exchange Solutions on VMware

Deeply Embedded Real-Time Hypervisors for the Automotive Domain Dr. Gary Morgan, ETAS/ESC

Control 2004, University of Bath, UK, September 2004

LS DYNA Performance Benchmarks and Profiling. January 2009

Operating Systems 4 th Class

March 2008 Grant Halverson CEO, GFG Group. Regional Processing Models

Software-Defined Networks Powered by VellOS

Seeking Opportunities for Hardware Acceleration in Big Data Analytics

1. PUBLISHABLE SUMMARY

Software Stacks for Mixed-critical Applications: Consolidating IEEE AVB and Time-triggered Ethernet in Next-generation Automotive Electronics

Embedded Systems: map to FPGA, GPU, CPU?

Complete Integrated Development Platform Copyright Atmel Corporation

Automation, Efficiency and Scalability in Securities Back Office Processing An implementer's view

CHAPTER 1 INTRODUCTION

Introduction to grid technologies, parallel and cloud computing. Alaa Osama Allam Saida Saad Mohamed Mohamed Ibrahim Gaber

Windows Server on WAAS: Reduce Branch-Office Cost and Complexity with WAN Optimization and Secure, Reliable Local IT Services

Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices

NVIDIA CUDA Software and GPU Parallel Computing Architecture. David B. Kirk, Chief Scientist

Next Generation Operating Systems

Contents. Chapter 1. Introduction

Computer Science. About PaaS Security. Donghoon Kim Henry E. Schaffer Mladen A. Vouk

GEDAE TM - A Graphical Programming and Autocode Generation Tool for Signal Processor Applications

Client/Server and Distributed Computing

Chapter 1: Distributed Systems: What is a distributed system? Fall 2008 Jussi Kangasharju

How To Create A Concurrent Cloud Computing System

LinuxWorld Conference & Expo Server Farms and XML Web Services

Software and the Concurrency Revolution

Distributed Operating Systems

GPU System Architecture. Alan Gray EPCC The University of Edinburgh

Agenda. Michele Taliercio, Il circuito Integrato, Novembre 2001

Business integrated Communication Solution Release 2.2

FPGA area allocation for parallel C applications

Resource Utilization of Middleware Components in Embedded Systems

Full and Para Virtualization

Rational Telecom Cloud Positioning

INTERNET OF THE THINGS (IoT): An introduction to wireless sensor networking middleware

GPU Computing - CUDA

Manjrasoft Market Oriented Cloud Computing Platform

Reducing Cost and Complexity with Industrial System Consolidation

Programming models for heterogeneous computing. Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga

Introducing PgOpenCL A New PostgreSQL Procedural Language Unlocking the Power of the GPU! By Tim Child

Chapter 1: Introduction. What is an Operating System?

Java and the Internet of Things

FPGA Accelerator Virtualization in an OpenPOWER cloud. Fei Chen, Yonghua Lin IBM China Research Lab

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

Figure 1: Illustration of service management conceptual framework

Transcription:

MCA Standards For Closely Distributed Multicore

Sven Brehmer Multicore Association, cofounder, board member, and MCAPI WG Chair CEO of PolyCore Software 2

Embedded Systems Spans the computing industry Telecom & datacom Consumer electronics A&D Automotive Industrial Comes in many shapes and forms Resource limitations Real-time requirements Increasingly contains multicore

Multicore drivers Performance Concurrency Acceleration Power consumption Multiple processors at lower clock rates Consolidation System => board => chip Combination of products 4

Unlimited variety Multicore Challenges Cores/chip, accelerators, operating systems, transports/interconnects, memory architectures Programming Models Messaging passing, new paradigms Portability and scalability Concurrency and parallelization granularity Virtualization? PolyCore Software - 2013

The Multicore Association Established in 2005 Mission: Improve time to market through the use of industry standards International membership encompasses Asia, Europe, North America Committee-based standards development 6

MCA Strategic Roadmap MCA Foundation APIs Communications (MCAPI) - Lightweight messaging Resource Management (MRAPI) - Basic synchronization - Shared/Distributed Memory - System Metadata Task Management (MTAPI) - Task lifecycle - Task placement - Task priority SW/HW Interface for Multicore/Manycore (SHIM) -XML HW description from SW perspective

MxAPIs Target Domain Embedded multi-processing that requires task to task communication Closely distributed systems and/or tightly coupled Heterogeneous & homogeneous systems Cores, interconnects, memory architectures, OSes Scalable: 1 1000 s of cores Allow implementations with significantly lower latency, overhead & memory footprint Provides incremental migration path for application codes Supports multiple levels of parallelism 8

Working Groups Communications API MCAPI, 2.0 Programming Practices MPP, 1.0 Resource Management MRAPI, 1.0 Software-Hardware Interface - SHIM Task Management MTAPI, 1.0 Tools Infrastructure - TIWG Multicore Virtualization - MVWG 9

System Developer is Primary Beneficiary Better ease of use and increased availability of products Simplified development and management of multicore software A more consistent interface and documentation between hardware and software vendors Quicker time to market Software re-use More vendor choice

Secondary Beneficiaries Tool vendors Reduced cost for tool support Increased tool availability Processor and/or chip company Higher application performance achievable Reduced support burden through standardization Easier upgrade path for customers OS and middleware vendor A uniform foundation for present/future products Abstracts platform capabilities; helps auto-configuration Larger potential market

MCAPI Addressing the Need Multicore evolution requires message passing Messages, Packet & Scalar channels Basic topology discovery Inherent synchronization SMP/AMP Standardized programming model works with any C compiler

MRAPI Conceptual Architecture Basic synchronization mutexes, semaphores Shared/remote memory System metadata provides hardware information Synchronization Node 1 OS A Core 0 Node 2 OS B Core 1... Node N Core N M R A P I Memory System Metadata

Tasks in Heterogeneous Systems Domain Node Node Node Node MTAPI application MTAPI tasks MTAPI tasks tasks MTAPI tasks MTAPI runtime system (optionally MCAPI / MRAPI) sched. / lib. OS 1 OS 2 DSP CPU core CPU core CPU core CPU core GPU memory memory memory Tasks execute a job, implemented by an action function, on a local or remote node Task can be started individually or via queues (to influence the scheduling behavior) Arguments are copied to the remote node Results are copied back to the node that started the task 14

SHIM Multicore Tools SHIM Multicore HW Multicore tools, as well as OS/middleware, help applications run optimally on multicore chips while hiding the hardware specifics However, the tools must understand the hardware specifics SHIM provides tools with the specific multicore hardware description in a standardized, open XML model

Tools Abstraction, automation & portability Wizards provide guidance MCAPI inserted into application under programmer direction // Worker node gets data mcapi_msg_recv( recv_endpoint, buffer, buffer size, receive count, status); if (status!= MCAPI_SUCCESS) { handle error; } // Worker operates on data // Worker node sends results mcapi_msg_send( send_endpoint, recv_endpoint, buffer, buffer size, priority, status); if (status!= MCAPI_SUCCESS) { } handle error; PolyCore Software - 2013

Multicore Association Board Members Multicore Association Working Group Members Multicore Association University Members 17

Questions Contact info: sven.brehmer@polycoresoftware.com 18