How to efficiently copy a mesh modified during runtime?

Here’s a simple icosphere, representing Mars.

A simple textured icosphere.

At program startup, in an attempt to simulate height, I loop through the vertices and modify them slightly. This gives the planet a sort of bumpy feel.

Now a slightly bumpy mesh.

I now wish to reuse this exact same bumpy mesh. For instance, I want ten other bumpy copies of Mars floating right next to the original bumpy Mars. But I don’t want Unity to copy the mesh, since it’s quite large. Rather, I want each copy of Mars to reference the one single mesh in memory.

What’s the best way to do this? Or am I asking the wrong questions? I’m new at this.

Thanks!

If you use the same method to make the sphere bumpy then you could just repeat the process, if theres any randomness you could set a seed at the start to make sure it will match.