21 |
✅ 1) Design tools and conventions to seamlessly integrate acceleration kernels and related embedded binaries into the ROS 2 computational graphs leveraging its existing build system (ament_acceleration extensions) 1, meta build tools (colcon-acceleration extension) and a new firmware layer (acceleration_firmware) 2. |
21 |
✅ 2) Provide reference examples and blueprints for acceleration architectures used in ROS 2 and Gazebo. |
21 |
✅ 3) REP-2008 (ROS 2 Hardware Acceleration Architecture and Conventions) first draft proposed PR |
|
|
22 |
✅ 4) Facilitate testing environments that allow to benchmark accelerators with special focus on power consumption and time spent on computations (see HAWG benchmarking approach, community#9, tracetools_acceleration, ros2_kria) |
22 |
✅ 5) Survey the community interests on acceleration for ROS 2 and Gazebo (see discourse announcement, survey, result). |
22 |
✅ 6) Produce demonstrators with robot components, real robots and fleets that include acceleration to meet their targets (see acceleration_examples). |
22 |
✅ 7) Acceleration of complete ROS 2 computational graphs #20 |
22 |
❌3 8) Merge first hardware accelerators (kernels) into upstream packages (candidate: image_pipeline, see image_pipeline instrumented at #717 ) |
22 |
✅ 9) Documentation and a "methodology to hardware accelerate a ROS 2 package" (see #20) |
22 |
❌4 10) Organize workshops on robotics and ROS 2 Hardware Acceleration |
22 |
🚧 11) Robotic Processing Unit, first demonstrators #25 |
22 |
✅ 12) REP-2008 (ROS 2 Hardware Acceleration Architecture and Conventions) accepted as an official standard |
22 |
✅ 13) REP-2014 (Benchmarking performance in ROS 2) first draft proposed PR |
|
|
23 |
✅ 11) REP-2014 (Benchmarking performance in ROS 2), PR finalized and submitted. Unfortunately it got rejected without technical argumentation ( 🔥 heated discussion) |
23 |
✅ 14) More vendor support. Intel Quartus and oneAPI ecosystems enabled with the ROS 2 Hardware Acceleration Stack 5 |
23 |
❌ 15) Robotics MCU #31 milestone 1 6 Instead, worked on an RTL-native FPGA-based ROS 2 implementation for High-Speed Networking: ROBOTCORE ROS 2 |
23 |
✅ 16) RobotPerf benchmarks |
23 |
🚧 17) Robotic Processing Unit, first demonstrators #25 |
|
|
24 |
🚧 17) Robotic Processing Unit, first demonstrators #25 |
24 |
🚧 18) New ROS-related network accelerators that build upon the FPGA-native ROS 2 message-passing infrastructure |
24 |
🚧 19) Evolve RobotPerf and expand it. Include new benchmark categories and other communities |
Follows from #34. Summarizing easily measurable dissemination efforts that happened as part of the HAWG:
Tracking progress
Key milestones
2121212222222222image_pipelineinstrumented at #717 )2222222222232323Robotics MCU #31 milestone 16 Instead, worked on an RTL-native FPGA-based ROS 2 implementation for High-Speed Networking: ROBOTCORE ROS 22323242424Key
articles and postsin traceable digital mediaLinkedIn- #ROS is the de facto standard in #robotics for #robot application #development. It’s the #standard to #accelerate.LinkedIn- A #robot is a #system of #systems, one that comprises sensors to perceive its environment, actuators to act on it, and computation to process it all.LinkedIn- Did you know that there're more than 40 companies using the #ROS2 #navigation stack?LinkedIn- Build a custom Linux-based production-grade operating system for robots with Yocto and #ROS 2 #Humble using NVIDIA Jetson Nano board.LinkedIn- Accelerated #ROS 2 #robotics #perception stack. API-compatible with the ROS 2 perception stack.LinkedIn- ROS 2 Humble in AMD KR260 with YoctoLinkedIn- Acceleration Robotics is growingLinkedIn- ROS 2 Humble in NVIDIA Jetson AGX Xavier with YoctoLinkedIn- Why is ROS so important?LinkedIn- #ROS 2 provides the #robotics tools, libraries, and capabilities needed to develop applications, allowing to gain time and put it into business.LinkedIn- We propose a novel framework for Deep Reinforcement #Learning (DRL) in modular #roboticsLinkedIn- Meet Prateek Nagras, CEO of Acceleration Robotics.LinkedIn- The Kria robotics stack (KRS)LinkedIn- Gym-gazebo2, a toolkit for reinforcement learning using ROS 2 and GazeboLinkedIn- Real-time Linux communicationsLinkedIn- Meet Jasmeet Singh, Robotics Engineer at Acceleration RoboticsLinkedIn- One of ABB #cobot #arms.LinkedIn- #ROS-based. Moving to ROS 2.LinkedIn- Festo displaying nicely the internals of a #cobot.LinkedIn- A robot-specific processing unit specialized in #ROS computations. Features 16xCPUs, a GPU and an FPGA.LinkedIn- ROS 2 Humble in AMD ZCU104 with YoctoLinkedIn- ROSCon 2023 comes to INDIALinkedIn- Why is #ROS so important?LinkedIn- ROS 2 Humble in Microchip PolarFire Icicle Kit with YoctoLinkedIn- ROS 2 Humble in NVIDIA Jetson AGX Xavier with YoctoLinkedIn- ROSCon India RegistrationsLinkedIn- Why we are hosting ROSCon India?LinkedIn- Meet Alok Sharma, Robotics Engineer at Acceleration Robotics.LinkedIn- We introduce #RobotPerf, a vendor-agnostic benchmarking suite designed to evaluate #robotics computing performanceLinkedIn- Acceleration Robotics, RigBetel Labs and ARTPARK will be hosting an online eventLinkedIn- ROS Robotics CompaniesLinkedIn- We are thrilled to announce that Geoffrey Biggs, CTO at Open Robotics.LinkedIn- Here's the reveal of the final design of our #robotics #laboratory in Spain.LinkedIn- ROSCon India 2023LinkedIn- Acceleration Robotics works on cutting-edge research in the intersection of #hardware acceleration and #robotics.LinkedIn- ROBOTCORE, ROS 2 API-compatible Tools and IP Cores for robotsLinkedIn- We are glad to share that Qualcomm has joined us as a Platinum Sponsor for ROSCon India!LinkedIn- We are glad to share that NVIDIA has joined us as a Platinum Sponsor for ROSCon India!LinkedIn- Indian robotics is shackled by high duties.Reddit- Multiple posts over the yearTOTALS 2023(roughly)VIEWSREACTIONSMeeting recordings(YouTube channel)0.15xgrowth)0.14xgrowth)0.10xgrowth)0.17xgrowth)0.13xgrowth)0.10xgrowth)0.13xgrowth)0.18xgrowth)0.10xgrowth)0.27xgrowth)0.26xgrowth)0.39xgrowth)0.74xgrowth)Goals for 2024
The Hardware Acceleration Working Group continued growing significantly during 2023. Altogether, that is 3 years of continued growth (2021, 2022). Having accomplished most of the initial objectives of the working group when created in 2021, and having supported multiple silicon vendors as part of the The ROS 2 Hardware Acceleration Stack, the working group will focus next on three objectives: the first objective is to continue working on demonstrators and case studies. We generated very exciting results within 2023 that we'll expand during the next year and hopefully disclose publicly. The second objectives will be to build upon the success of the reference FPGA-based ROS 2 implementation for High-Speed Networking and explore other accelerators. Some ideas include bridging between other communication middlewares or even pushing the speed of networking interactions faster. The third objective is to evolve the RobotPerf project, which attracted quite a few contributors already (see RobotPerf paper). Subgoals here would be to create more benchmark releases, add new benchmarking categories (with their corresponding benchmark implementations) and ultimately, expand the project to other communities which could benefit from it, all while remaining ROS-centric.
Altogether, the objectives for the coming year look as follows:
242424Footnotes
See ament_vitis ↩
See acceleration_firmware_kv260 for an exemplary vendor extension of the
acceleration_firmwarepackage ↩Did not get buy-in from maintainers. Stopped the effort. ↩
Discarded for ROSCon and IROS. Lots of work. ↩
Reach out for more information about Intel's enablement extensions of the ROS build system and build tools. ↩
After months of work, given preliminary results and expectations derived from those, we decided to pivot elsewhere and wrap the Robotics MCU project. Shortly, the performance obtained in RISC-V soft-core based ROS 2 implementations explored was not bringing much value on top of existing CPU implementations of ROS 2. Instead, we invested resources in exploring an FPGA-based ROS 2 implementation for High-Speed Networking. ↩