May the Best Robot Win
A ROS 2-based open reference benchmarking suite evaluates robotics computing performance to aid in choosing the best hardware and software.
Robotics is revolutionizing the way we live, work, and play, and its uses are becoming increasingly diverse. From medical and industrial to home and entertainment applications, modern robotics has the potential to drastically alter the way we interact with our world.
In the medical field, for example, robots have been used for decades in the form of robotic surgical arms. More recently, robots have been leveraged to assist with more mundane tasks like helping nurses and doctors with administrative work and patient care. Other robots provide therapy or continuously monitor vital signs.
In industrial settings, robots are automating all manner of processes, from assembly line production to data analysis. When it comes to repetitive tasks, these robots are able to get the job done more quickly, accurately, and reproducibly than humans. This automation allows for increased efficiency and productivity in the workplace.
These are just a few examples of the myriad applications of robotics in the modern world. As you might expect, along with all of these applications come a wide variety of types of robots to perform the skills needed for each task. And while that seemingly endless variety is quite useful when it comes to finding a suitable robot for a particular job, it also makes it difficult to select the ideal hardware. Just because a particular configuration can get the job done does not mean that it is the most efficient or cost effective choice.
Testing every possibility is unrealistic due to the time that would be involved, and also the cost of all the hardware options. An effort has recently been launched that may prove useful to roboticists facing the difficult task of selecting the best hardware for a project. Members of the Robotics Operating System 2 (ROS 2) Hardware Acceleration Working Group, in conjunction with Acceleration Robotics and Harvard University, have developed an open reference benchmarking suite, called RobotPerf, that was designed to evaluate robotics computing performance.
RobotPerf was built on top of ROS 2, a very popular framework for robot application development, with thousands of developers using it daily. Using ROS 2 as a common baseline, the RobotPerf benchmarking suite can evaluate robotics computing performance across CPUs, GPUs, FPGAs, and other accelerators. The project seeks to cover the complete robotics pipeline including perception, localization, control, manipulation, and navigation. They also note that these categories may be expanded over time.
The suite is applicable to any technologies or vendors, and can provide unbiased evaluations of robotics computing performance. In releasing RobotPerf, the developers hope to aid roboticists in developing more efficient robotic systems, and also in understanding the trade-offs between different algorithms that implement the same function. RobotPerf is an open project, and benchmarks are publicly available in a GitHub repository that is a ROS meta-package. If you are looking to take your robotics skills to the next level, be sure to check it out.