Godot Gym API is an Open Source framework for using Godot3 game engine as 3d-environment for training reinforcement learning agents implemented in Python on any data, including images and point clouds.
My robot uses Lidar sensor with maximum data volume of 1080 points per repeat. In total I have 4320 points. The rest data is small enough to not consider them.
One environment step takes 0.14s, out of which ~0.06s is spent on filling protobuf message (Lidar data only) and 0.05s is spent on serialization of entire protobuf message.
It is required to test, whether the following algorithm is faster:
Make message to contain data per one repeat.
Fill, serialize, and send data in separate threads at each repeat.
In python, accumulate data over repeats to form data per step.
The expected improvement upper bound is that repeat_action times faster than current implementation.