Nope. You’re doing it right.
The difference is that there is something called the QtransThreashHold. (preferences>draw i believe) It basically looks at a mesh you have and when you rotate at a subD level over a certain number (40k default I think) it displays a subD level under that number to help performance when rotating. Rotating your mesh takes processor power, not RAM.
Anyway, when you decimate the model you remove all of the subD levels so it doesn’t have a lower version to look at when you rotate.
If you take your 10million polygon mesh and lower it’s subD level to around 700k, then hide a small part of the mesh…1 polygon will work. And then rotate the mesh you should see the same slowdown. When a part of the mesh is hidden the Qtrans doesn’t take effect. The reason for this is so you can zoom in on an area like the nose or cheek bones and only that and still rotate the mesh to check for highlight changes and the form of the mesh.
Anyway…that explains that.