Multicore Association
Encyclopedia
The Multicore Association, founded in 2005, is a member-funded, non-profit, industry
Computer industry
Computer industry is a collective term used to describe the whole range of businesses involved in developing computer software, designing computer hardware and computer networking infrastructures, the manufacture of computer components and the provision of information technology services.-See...

 consortium
Consortium
A consortium is an association of two or more individuals, companies, organizations or governments with the objective of participating in a common activity or pooling their resources for achieving a common goal....

 focused on the creation of open standard
Open standard
An open standard is a standard that is publicly available and has various rights to use associated with it, and may also have various properties of how it was designed . There is no single definition and interpretations vary with usage....

 APIs, specifications, and guidelines that will allow system developers and programmers to adopt multicore
Multi-core (computing)
A multi-core processor is a single computing component with two or more independent actual processors , which are the units that read and execute program instructions...

 technology into their applications
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...

 more readily .

The consortium
Consortium
A consortium is an association of two or more individuals, companies, organizations or governments with the objective of participating in a common activity or pooling their resources for achieving a common goal....

 provides a neutral forum for vendors and developers who are interested in, working with, and/or proliferating multicore
Multicore
Multicore may refer to:* Multi-core processor ** Multicore Association, founded in 2005, a non-profit, industry consortium focused on multicore technology* multicore cable, a generic term for an electrical cable that has multiple cores...

-related products, including processors, infrastructure, devices, software, and applications. Its members represent vendors of processors
Central processing unit
The central processing unit is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system. The CPU plays a role somewhat analogous to the brain in the computer. The term has been in...

, operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s, compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

s, development
Software development process
A software development process, also known as a software development life cycle , is a structure imposed on the development of a software product. Similar terms include software life cycle and software process. It is often considered a subset of systems development life cycle...

 tools, debugger
Debugger
A debugger or debugging tool is a computer program that is used to test and debug other programs . The code to be examined might alternatively be running on an instruction set simulator , a technique that allows great power in its ability to halt when specific conditions are encountered but which...

s, ESL
Enterprise Service Layer
The Enterprise Service Layer is the highest level of abstraction in a SOA architecture.An API defined at ESL can cross domain boundaries; it calls directly the Domain Service Layer, which in turn interacts with the Application Service Layer or the RDBMS Service Layer.Since the ESL is the API of...

/EDA tools, and simulators; and application and system developers
Software developer
A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, developing, and testing software. A software developer may take part in design, computer programming, or software project management...

.

The consortium
Consortium
A consortium is an association of two or more individuals, companies, organizations or governments with the objective of participating in a common activity or pooling their resources for achieving a common goal....

’s president is Markus Levy, who is also president of EEMBC
EEMBC
EEMBC, the Embedded Microprocessor Benchmark Consortium, is a non-profit organization formed in 1997 with the aim of developing meaningful performance benchmarks for the hardware and software used in embedded systems...

, the Embedded Microprocessor Benchmark Consortium.

Completed Projects

In 2008, the Multicore Communications API working group released the consortium's first specification, referred to as MCAPI
MCAPI
The Multicore Communications API is the first specification to be produced by the Multicore Association. MCAPI provides a standardized API for communication and synchronization between closely distributed embedded systems.-Overview:MCAPI is a language-independent, processor and operating system...

. MCAPI™ is a message-passing API that captures the basic elements of communication and synchronization that are required for closely distributed (multiple cores on a chip and/or chips on a circuit board) embedded systems. The target systems for MCAPI™ span multiple dimensions of heterogeneity (e.g., core heterogeneity, interconnect fabric heterogeneity, memory heterogeneity, operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

 heterogeneity, software toolchain
Toolchain
In software, a toolchain is the set of programming tools that are used to create a product...

 heterogeneity, and programming language heterogeneity).

In 2011, the MCAPI working group released MCAPI 2.0. The enhanced version adds new features, such as domains for routing purposes. MCAPI Version 2.0 adds a level of hierarchy into that network of nodes through the introduction of “domains.” Domains can be used in a variety of implementation-specific ways, such as for representing all the cores on a given chip or for dividing a topology into public and secure areas. MCAPI 2.0 also adds three new types of initialization parameters (node attributes, implementation-specific configurations, implementation information such as the initial network topology or the MCAPI version being executed). The MCAPI WG is chaired by Sven Brehmer.
In 2011, the Multicore Resource Management API working group released its first specification, referred to as MRAPI. MRAPI is an industry-standard API that specifies essential application-level resource management capabilities. Multicore applications require this API to allow coordinated concurrent access to system resources in situations where: (1) there are not enough resources to dedicate to individual tasks or processers, and/or (2) the Run time (program lifecycle phase) system does not provide a uniformly accessible mechanism for coordinating resource sharing. This API is applicable to both SMP and AMP embedded multicore implementations (whereby AMP refers to heterogeneous both in terms of software and hardware). MRAPI (in conjunction with other Multicore Association APIs) can serve as a valuable tool for implementing applications, as well as for implementing such full-featured resource managers and other types of layered services. The MRAPI WG was chaired by Jim Holt.

Active Working Groups

  • The Tools Infrastructure (TIWG) working group is defining a common data format and creating standards-based mechanisms to share data across diverse and non-interoperable development tools, specifically related to the interfaces between profiling (computer programming) and analysis/visualization tools. The TIWG is also collaborating with the CE Linux Forum
    CE Linux Forum
    The Consumer Electronics Linux Forum is a non-profit organization that works to advance Linux as an open source platform for consumer electronics devices...

     on a reference implementation for a de-facto trace data format standard that TIWG will define. TIWG is working on specification of multicore clocks to enable correlation (covers voltage and frequency scaling, multicore, multiple time sources) that will apply to many different types of tracing (OS and application instrumentation, hardware instruction and data, simulators/virtual platforms, and logic/bus/protocol analyzers). This working group is chaired by Russell Klein of Mentor Graphics
    Mentor Graphics
    Mentor Graphics, Inc is a US-based multinational corporation dealing in electronic design automation for electrical engineering and electronics, as of 2004, ranked third in the EDA industry it helped create...

     and Aaron Spear of VMware
    VMware
    VMware, Inc. is a company providing virtualization software founded in 1998 and based in Palo Alto, California, USA. The company was acquired by EMC Corporation in 2004, and operates as a separate software subsidiary ....

    .

  • The Multicore Task Management API (MTAPI) working group is defining a standard specification for an application program interface (API) that supports the coordination of tasks on embedded parallel systems with homogeneous and heterogeneous cores. Core features of MTAPI are runtime scheduling and mapping of tasks to processor cores. Due to its dynamic behavior, MTAPI is intended for optimizing throughput on multicore-systems, allowing the software developer to improve the task scheduling strategy for latency and fairness. This working group is chaired by Urs Gleim of Siemens
    Siemens
    Siemens may refer toSiemens, a German family name carried by generations of telecommunications industrialists, including:* Werner von Siemens , inventor, founder of Siemens AG...

    .

  • The Multicore Communications API (MCAPI) working group is currently adding more features and functions to expand the usefulness of MCAPI for Version 2.x. The working group has formed two subgroups. One is working on 'zero copy' functionality, including bidirectional interaction between 'application and application' using shared memory and bidirectional interaction between 'application and driver', which is being led by Sven Brehmer of PolyCore Software. A second subgroup is focused on interoperability, which is being led by Tammy Leino of Mentor Graphics
    Mentor Graphics
    Mentor Graphics, Inc is a US-based multinational corporation dealing in electronic design automation for electrical engineering and electronics, as of 2004, ranked third in the EDA industry it helped create...

    .

  • The Multicore Programming Practices (MPP) working group has a goal to develop a multicore
    Multi-core (computing)
    A multi-core processor is a single computing component with two or more independent actual processors , which are the units that read and execute program instructions...

     software programming guide for the industry that will aid in improving consistency and understanding of multicore
    Multi-core (computing)
    A multi-core processor is a single computing component with two or more independent actual processors , which are the units that read and execute program instructions...

     programming issues. Initially the group is working on best practices leveraging the C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

    /C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

     language to generate a guide of genuine value to engineers who are approaching multicore
    Multicore
    Multicore may refer to:* Multi-core processor ** Multicore Association, founded in 2005, a non-profit, industry consortium focused on multicore technology* multicore cable, a generic term for an electrical cable that has multiple cores...

     programming. This working group is chaired by David Stewart of CriticalBlue.

  • The Virtualization working group will focus on defining and optimizing a set of paravirtualization
    Paravirtualization
    In computing, paravirtualization is a virtualization technique that presents a software interface to virtual machines that is similar but not identical to that of the underlying hardware....

     information and functions to communicate with an Embedded Hypervisor
    Embedded Hypervisor
    Software virtualization has been a major topic in the enterprise space for quite some time, but has become an important technology for embedded systems only in the last few years. The application of the technology to the enterprise space has been well described elsewhere by companies such as...

    . The working group will also focus on a system to categorize the various virtualization features and functionality including within multicore processors. This working group is chaired by Rajan Goyal of Cavium Networks
    Cavium Networks
    Cavium is a San Jose, California-based company specializing in ARM-based and MIPS-based network, video and security processors. Cavium offers processor and board level products targeting routers, switches, appliances, storage and servers.-Major acquisitions::...

     and Surender Kumar of Nokia Siemens Networks
    Nokia Siemens Networks
    Nokia Siemens Networks is a global data networking and telecommunications equipment company headquartered in Espoo, Finland. It is a joint venture between Nokia of Finland and Siemens of Germany...

    .

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK