Actually, you may want to keep both. One thing is the render cache of a rendered user with uid = x, and the other one is the rendered entity as presented to the user with uid = x.

We need to segment the cache per uid since different uid may yield different rendering. I'm thinking about entity translation based on user language, field level access control, …