Robotic Processing Unit (RPU) meta-ticket
vmayoral opened this issue · comments
NOTE: This ticket has moved to https://github.com/ros-acceleration/robotic_processing_unit.
This ticket tracks the progress of the Robotic Processing Unit (RPU
) subproject of the ROS 2 Hardware Acceleration Working Group. Content will be updated over time. In time, a repository will branch out of this effort containing additional resources. Expectation however should be for the discussion to remain in here for organizational purposes. You can send feedback about this subproject via this form.
The Robotic Processing Unit (RPU
)
Definition: A robot-specific processing unit that maps ROS and robot computational graphs efficiently to underlying compute resources including CPUs, FPGAs and GPUs to obtain best performance.
Vision
The vision is that RPU
s will empower robots with the ability to react faster (lower latency, higher throughput), consume less power, and deliver additional real-time capabilities with their custom compute architectures that fit best the usual robotics pipelines. This includes tasks across sensing, perception, mapping, localization, motion control, low-level control and actuation.
Antigoal
The initial objective of this subproject is not to design a new physical device. Instead, existing off-the-shelf hardware acceleration development platforms will be used to prototype a robot-specific processing unit that performs best when it comes to ROS 2 and robot computational graphs.
Sponsorship
The project is open to sponsorships and collaborations. For sponsoring the Robotic Processing Unit (RPU
) contact here.
Milestones
Milestone 1: first demonstrators - raise awareness
- Robotic Processing Unit (
RPU
) project announcement - RFC to receive feedback and interest https://forms.gle/d4rCCoLpx9ciPiau9
- Use cases driving the architecture and the development
- Perception (
image_pipeline
and friends)-
perception_2nodes
-
perception_3nodes
- Maybe consider a more elaborated graph with multi-processing paths involving more complex CV crunching, e.g. HOG (Histogram of Oriented Gradients)?
-
-
Navigation-
Still in dicussions, open to feedback.
-
- Perception (
- Partition work into demonstrators, prioritize and execute
- Disclose an initial hardware reference design of the Robotic Processing Unit https://github.com/ros-acceleration/robotic_processing_unit
- Disclose benchmarking results and discuss (connected to #10)
Updated the comment above with advances regarding the use cases, particularly on perception. Still discussing and narrowing down things for Navigation. Expecting to group together a reduced group during Q3 and start splitting work for demonstrators and a joint publication/dissemination effort.
Moving this meta-ticket to https://github.com/ros-acceleration/robotic_processing_unit.