Use Xi2 to notice mouse motion. Use Present for vblank-sync updates
Here are two very old patches that improve Xeyes functionality.
The first uses the Present extension instead of directly drawing the eyes. This ensures that updates don't tear on the screen.
The second uses Xi2 to notice when the mouse moves so that Xeyes doesn't have to poll and can remain completely idle when the mouse is not moving.