a simple rosrun rviz rviz (with no pointclouds or anything at all) is incredibly slow when moving the empty grid and is just as slow with actual images [..] It wouldn't run without ssh -X
(waiting for master error).
if you're using X forwarding you're essentially using whichever computer you're using to SSH from as the display device. You're running a heavy graphical application over a network connection. With all the rendering happening on the SSH server (that depends slightly on the exact SSH and X server configuration, but in general this is how it works). That's the most likely cause of the lag you're experiencing.
the remote PC is an Acer Aspire; 16GB RAM, Nvidia GTX, i7.
Ok, then I would suggest to run RViz on your Acer.
Treat it as a multi-machine ROS network setup. Be sure to set ROS_MASTER_URI
and ROS_IP
to appropriate values and things should work.
For your setup, something like this should work:
- on the Acer:
ROS_MASTER_URI=http://ip.of.compaq.mini:11311
, ROS_IP=ip.of.acer.aspire
- on the Mini:
ROS_MASTER_URI=http://localhost:11311
(or whatever it is right now), ROS_IP=ip.of.compaq.mini
If you now start a roscore
on the mini, you should be able to rostopic list
from your Acer. Make sure to check the network setup pages on the wiki, especially the troubleshooting section (make sure clocks are synchronised fi).
PS: publishing pointclouds over a network connection is always going to be slower than processing / visualising them locally, so may still not necessarily work.
Edit:
i am running rviz on the acer through ssh -X to the mini.
you're not running it on the acer, but on the mini. X forwarding is similar to Windows Remote Desktop.
withouth the -X, I get segmentation fault (core dumped),
Do you have drivers installed for your Nvidia video card on the acer? What is the output of dpkg -l | grep nvidia
?
which is the same thing i get trying to run rviz on the mini by itself.
The mini almost has no graphics hw. An intel945 is old and may not be capable of the accelerated OpenGL that RViz needs.
Are you saying run rviz on the acer without ssh to the mini
yes.
making the acer the master?
No. That is not needed.
What computer are you running rviz on?
@SleepyTurtle the remote PC
Just making sure: you're not using "X forwarding" with SSH, right (so using
ssh -X ip.of.your.robot
)?What sort of graphics hw does the compaq mini have? Do you have any drivers installed, or are you running on an unaccelerated framebuffer?
@gvdhoorn it wouldn't run without the -X (waiting for master error).
compaq mini specs (from windows 7, it's dual boot with lubuntu):
processor - Intel Atom 1.6GHz, 1 GB RAM
adapter - Intel 945 Express Chiset
total available graphics memory - 251MB
dedicated video memory - 0 mb
system video memory - 64mb
shared system memory - 187 MB
Lubuntu Partition - 45 GB
If you're using X forwarding then RViz is running on your robot, not on your own
compaq miniPC. Only the graphics output is forwarded to yourcompaq miniover the network. That is most likely why it is so slow.Looking at the specs of your compaq mini, running RViz on the mini is probably not going to be very fast, and forwarding the results over an SSH connection to another PC is not improving that.
@gvdhoorn the mini IS [on] the robot.
the remote PC is an Acer Aspire; 16GB RAM, Nvidia GTX, i7. Handheld mapping isn't too slow, especially compared with the ssh mini.
RViz doesn't even work directly on the mini; segmentation fault (core dumped).