ros-acceleration / community

ROS 2 Hardware Acceleration Working Group community governance model & list of projects
60 stars 9 forks source link

Merge first hardware accelerators (kernels) into upstream packages #21

Open vmayoral opened 2 years ago

vmayoral commented 2 years ago

Follows from https://github.com/ros-acceleration/community/issues/9 and https://github.com/ros-acceleration/community/issues/20.

Goal of this ticket is to merge upstream acceleration kernels in two forms a) binaries (bitstream) and b) source code, so that users can leverage them directly from their computational graphs in a simplified manner.

Candidate: image_pipeline

vmayoral commented 2 years ago

Reporting progress on this end, most efforts have concentrated so far in pushing first upstream to the ROS 2 buildfarm the core packages of the ROS 2 hardware acceleration architecture so that other ROS stacks (e.g. image_pipeline) can depend on those for introducing acceleration capabilities:


       ROS 2 stack                    Hardware Acceleration Architecture @ ROS 2 stack

    +-------------+             +---------------------------+
    |             |             |   acceleration_examples   |
    | user land   |  +-------------------+-----------+----------------+--------------------------------+
    |             |  |       Drivers     |     Libraries              |           Cloud                |
    +-------------+  +--------------+----+---------+-----------------------------------+---------------+
    |             |  |   ament_sol1 | ament_soln   |                  |                |               |
    |             |  +--------------+--------------+------------------+  accel_fw_sol1 | accel_fw_soln +
    |  tooling    |  |     ament_acceleration   | colcon_acceleration |                |               |
    |             |  +---------------------------------------------------------------------------------+
    |             |  |      build system        |   meta build        |            firmware            |
    +-------------+  +--------------------------+---------------------+--------------------------------+
    |     rcl     |             ^                      ^                            ^
    +-------------+             |                      |                            |
    |     rmw     |             |                      |                            |
    +-------------+             |                      |                            |
    | rmw_adapter |          Pillar I              Pillar II                    Pillar III
    +-------------+

The following tickets track the progress of the release into Rolling (and soon to come, Humble):