improve walk/update performance