HPP Project Home Page
Project Purpose
The Heterogeneous Platform Project (HPP) works on technologies for use between different CPU types or different OS types. It is closely associated with the OpenAMP community project.
NOTE: The HPP project has been closed. This page/space is being kept for historical purposes until at least 2025/12/31.
Project Details
Project | Heterogeneous Platform (HPP) |
Project Contact | Bill Mills - bill.mills@linaro.org |
Project Lead | @Bill Mills |
Project Manager | Mikael Rolfhamre - mikael.rolfhamre@linaro.org |
Segment Group | LEDGE SG |
Jira board | Jira is closed. See the archive page |
Source Repository | |
Presentations and blogs | The OpenAMP 23.10 release & demo images are available. See the latest Virtio plans on the Monthly update pages. |
Documentation/ wiki pages | |
Project mail list | |
Meetings |
|
Meeting Notes |
On this page |
---|
Child Pages |
Overview
The Heterogeneous Platform Project (HPP) works on technologies for use between different CPU types or different OS types. Current technologies include:
Remoteproc & Rpmsg
Virtio between two cores that do not share a hypervisor
System Devicetree
QEMU as a development platform for these systems
The Technologies above should provide value in lots of use cases including:
Linux + RTOS (or no OS)
RTOS + RTOS
Linux + Linux (future)
Inside a container or as a hypervisor guest
In co-operation with secure world components as needed
HPP is a Linaro project but it is also closely associated with the OpenAMP community project (also hosted at Linaro). HPP will be used for Linaro members to collectively decide how to use Linaro resources in OpenAMP and for non-OpenAMP aligned work. HPP will focus on the Arm ecosystem.
Non-OpenAMP work
Although OpenAMP has a broad scope, there may be topics in HPP that go beyond or ahead of where OpenAMP is focused. One example of such work could be:
Better QEMU emulation of server class SOCs and boards (SCP or BMC, etc)
Out of Scope
This project (and OpenAMP) focus on two or more general purpose CPUs in communication. The following scenarios are out of scope for now:
CPU to GPU
CPU to Hardware accelerator
The GPU ecosystem is a rich one on its own and has many technologies to leverage their capabilities. GPU technologies focus on graphics and compute offload and are not a good fit for other tasks like peripheral emulation or real-time control offload. Most GPU technologies are heavy weight and would not scale down well to a MCU control processor.
However, OpenAMP technologies may provide a low-level foundation for GPU technologies in some cases. This has been done with remoteproc & rpmsg underneath OpenCL for use with a DSP core as one example.
Likewise CPU to Hardware accelerator interfaces are primarily focused on compute offload and can range from very abstract to very specific and tightly CPU bound.
Future work in the GPU and HW areas is not forbidden and can re-evaluated when it makes sense. However the primary focus will remain on the CPU to CPU arena.
OpenAMP and HPP Background Presentations
Roadmap
N/A