Since you’re the acknowledged expert at performance and the Pi-3B, here’s a problem for you:
I switched Charlie from a Pi-4 to a Pi3-B.
I now notice that if I do anything more computationally intensive than moving the mouse, the robot exhibits a noticeable “lag” in performance.
With three browser windows open, a couple of file-manager windows, a terminal window, and Thonny running, htop showed that I had maxed the default swap, had a five minute usage of over 13, and some operations took up to five minutes to complete.
It had gotten so bad that I had to use the push-button to regain control of the Pi, and that took over sixty seconds to be recognized and begin the forced shut-down.
Here are some screenshots of htop run as root:
While the system was trashed:
I tried to take a screen-shot of htop with the five-minute load at almost 14, but it didn’t take.
I could not run “throttle” or your python voltage script due to the extreme un-responsiveness of the system.
Here are three screen-shots taken after reboot:
In each case, especially the first, you can see on the task bar exactly what I have going.
Even now, Chromium spontaneously resets the browser view to the forum home-page.
You seem to be able to run MAKE on an entire Linux distribution, run Carl in circles, communicate with a half-dozen of your ham buddies on the Pi, and try out TensorFlow without Carl even breaking a sweat.
I open a few windows, a couple of browser sessions, (monitoring the forum while researching other topics) and Charlie is on his knees gasping for air!
“Searching for emoji” within the DI forum while replying to Cleoqc’s thread, maxed out the Pi.
This is one of the reasons I ultimately migrated Charlie to the Pi-4.
I am suspecting strongly that the desktop applications are over-stressing the Pi’s capabilities, since I suspect that 99.99999% of your stuff is script and/or command line via SSH.
Note that this screen-shot, though selected while htop showed the Pi maxed, didn’t actually happen until about three seconds later.