2021 Recommended specifications for a PC to manage a telemanipulation setup in ROS (nodes, tf, rviz, and rosbag)

asked 2021-02-03 09:35:16 -0500

anturtla gravatar image

updated 2021-02-04 06:56:34 -0500

I would like to ask for recommendations about PC specifications in terms of CPU, RAM, SSD, graphic, network cards and USB availability for managing a teleoperation setup (i.e. about 3/4 master devices sending data up to 120 Hz, and 4 slave devices, receiving and sending data up to 500 Hz). Moreover, please consider that we would keep the possibility for the future to add motion capture systems or cameras.

We are running in noetic the ROS drivers of the robotic manipulators, RViz for simulation, tf for frame transform and we record data from our experiments (rosbag). By now we are splitting the nodes and data recordings among different laptops. This because we had some problems in running too much ROS elements from a single laptop, for example:

  • i7-6th gen 4 x 2.50 Ghz, 8 RAM, 1TB HDD, NVIDIA GeForce 920M, ethernet port; problems highly likely due to CPU resources usage.
  • i7-7th gen 4 x 2.70 Ghz, 16 RAM, 1TB HDD; limited in communication performance because of the need of an adapter for lack of direct ethernet access; problems highly likely due to CPU resources usage.

I would like to run as many nodes of the architecture as possible from a more powerful unit which I am buying. Please note I am not asking about minimum requirements for ROS, but for specifications that allows us to smoothly follow the request of a ROS architecture with this complexity. I think we would prefer a desktop PC, in order to be able to add components in case of need.

Do you have any suggestion, considering the state of the art of desktop PC in 2021? Thank you in advance for your help.

edit retag flag offensive close merge delete


I would probably "just" go with whatever the highest performing system is your money can buy you.

Buying computers based on current usage patterns -- especially when thinking about "adding components in case of need" in the future -- is difficult.

ROS applications are inherently multi-process and multi-threaded. CPUs with high core/thread counts are always good. Lots of memory is good (32GB and up). And depending on your visualisation and simulation needs (note: RViz is not a simulator), buy a fast GPU.

And as you've noticed yourself already: hw NICs are good. 1 Gbit at least.

AMD Ryzen/Threadripper/EPYC appear to hold the price-performance crown at the moment.

I believe advice will stay generic like this unless you can provide more information on whether specific components have specific requirements.

gvdhoorn gravatar image gvdhoorn  ( 2021-02-05 02:01:43 -0500 )edit

Thanks for the suggestions. The idea is in fact to go for the highest performance I can get with my budget. But what I would like suggestions on is where to set the compromise among components eventually. I mean, taking into account the application, which of those specifications should I give priority? i.e. Not the top 12-core processor but 32 GB of RAM or viceversa? Limit to 4 gb of dedicated GPU, but going for very fast 3.8GHz processor?

anturtla gravatar image anturtla  ( 2021-02-08 12:25:48 -0500 )edit