Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

REP-2008 - ROS 2 Hardware Acceleration Architecture and Conventions #324

Merged
merged 25 commits into from
Dec 15, 2022

Commits on Aug 24, 2021

  1. Initial draft of REP-2008

    ROS 2 Hardware Acceleration Architecture and Conventions
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Aug 24, 2021
    Configuration menu
    Copy the full SHA
    75dd482 View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2021

  1. Update rep-2008.rst

    vmayoral authored Sep 2, 2021
    Configuration menu
    Copy the full SHA
    4126aa2 View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2021

  1. Update rep-2008.rst

    Co-authored-by: Greg Balke <11024792+gbalke@users.noreply.github.com>
    vmayoral and gbalke authored Oct 1, 2021
    Configuration menu
    Copy the full SHA
    86f2d77 View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2022

  1. Add VSCode meta-data to .gitignore

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Mar 31, 2022
    Configuration menu
    Copy the full SHA
    24bb8e4 View commit details
    Browse the repository at this point in the history
  2. Remove acceleration_firmware common firmware front-end

    Refer to ros-acceleration/acceleration_firmware#1.
    
    Shortly, the rationale of having was to provide
    a mechanism to splitting vendors across firmware
    packages while keeping a common front-end. After
    looking at it critically, there's currently no
    strong argument to keep this abstract layer at this
    level since this same behavior can be obtained through
    colcon-hardware-acceleration extensions so for now,
    we've decided to remove this layer from the architecture.
    
    In the future, if needed, acceleration_firmware will be
    re-added and should include vendor-common scripts to
    deploy and manage firmware
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Mar 31, 2022
    Configuration menu
    Copy the full SHA
    611d0e3 View commit details
    Browse the repository at this point in the history
  3. Add methodology for ROS 2 hw acceleration, fixes

    These changes introduce in REP-2008 a proposed methodology for
    ROS 2 hardware acceleration and provides 2 use cases wherein
    it's demonstrated using the ROS Perception stack.
    
    Minor changes and refines in the content also added
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Mar 31, 2022
    Configuration menu
    Copy the full SHA
    e589cf7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8114aea View commit details
    Browse the repository at this point in the history
  5. Style adjustment in figure for acceleleration methodology

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Mar 31, 2022
    Configuration menu
    Copy the full SHA
    be36b47 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2022

  1. Add pillar IV, cloud extensions

    Added cloud extensions as a pillar wihch helps robotic
    architects bridge the gap and simplify the use of
    hardware acceleration (GPUs, FPGAs, etc.) in the cloud
    for ROS allowing to easily build kernels that target
    cloud instances while aligning to the standard ROS 2
    launch system.
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    f8af0e4 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2022

  1. Switch to Standards Track, minor fixes and references

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jun 10, 2022
    Configuration menu
    Copy the full SHA
    cdc36f3 View commit details
    Browse the repository at this point in the history
  2. Switch Status: Draft to meet REP 1

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jun 10, 2022
    Configuration menu
    Copy the full SHA
    8b30b26 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2022

  1. Undo changes in .gitignore

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    0d6b3ea View commit details
    Browse the repository at this point in the history
  2. Remove colcon extensions from architecture pillars

    Move it instead to reference implementation
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    a35594c View commit details
    Browse the repository at this point in the history
  3. Minor adjustments in diagram

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    5a97eb8 View commit details
    Browse the repository at this point in the history
  4. Remove cloud extensions from REP

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    c966858 View commit details
    Browse the repository at this point in the history
  5. Remove details in build tools capabilities

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    e41da1f View commit details
    Browse the repository at this point in the history
  6. Removed some of the parts to further simplify. Mainly:

     - Removed Template for Maintainers
     - Removed labels for Maintainers
     - Removed much of the content of Template for vendors
    and pointed to one example.
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    eec1a2a View commit details
    Browse the repository at this point in the history
  7. Remark colcon extensions as optional

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    3b668c0 View commit details
    Browse the repository at this point in the history
  8. Fix error introduced while simplifying capabilities

    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Jul 19, 2022
    Configuration menu
    Copy the full SHA
    7b6217f View commit details
    Browse the repository at this point in the history

Commits on Oct 12, 2022

  1. TSC review pass 1

    Still need to address a few concerns
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Oct 12, 2022
    Configuration menu
    Copy the full SHA
    b9d2b48 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2022

  1. TSC review pass 2

    Addressed most concerns. Ended up re-writing
    the REP to a certain extend to enhance readibility
    and improve its clarity. Main changes include:
    
    - removed categories and capabilities
    - removed completely benchmarking, pushed into REP-2014
    - significant rewriting of the intro and motivation
    - renamed ament_acceleration to ament_hardware_acceleration
    - expanded on pillars and further explained its value
    - re-organized kernel levels
    - removed all mentions to CI
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    vmayoral committed Oct 13, 2022
    Configuration menu
    Copy the full SHA
    ddd5a0e View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2022

  1. Add pointers to REP-2007 and REP-2009

    Following from community feedback, these changes hint ROS users that inter-Node data exchange can be further optimized by following leveraging REP-2007 and REP-2009.
    
    It must be noted though that each accelerator (and associated host CPUs) may presents various other opportunities which are specific to that architecture. Such aspects shouldn't be discarded and would often lead to best optimizations.
    vmayoral authored Nov 2, 2022
    Configuration menu
    Copy the full SHA
    4732bff View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2022

  1. Adjust text to make it OS-agnostic

    Removed pointers to OS-specific tracers and
    pushed tracing and benchmarking related topics
    to REP-2014.
    
    Signed-off-by: Víctor Mayoral Vilches <v.mayoralv@gmail.com>
    Co-authored-by: Daniel Rosenstein <danrose@microsoft.com>
    vmayoral and IoTDan committed Nov 5, 2022
    Configuration menu
    Copy the full SHA
    71120c9 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2022

  1. Update rep-2008.rst

    Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
    vmayoral and henningkayser authored Nov 18, 2022
    Configuration menu
    Copy the full SHA
    337bb49 View commit details
    Browse the repository at this point in the history
  2. Update rep-2008.rst

    Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
    vmayoral and henningkayser authored Nov 18, 2022
    Configuration menu
    Copy the full SHA
    e370808 View commit details
    Browse the repository at this point in the history