If I have a bunch of Mesh Filters that use a sharedMesh variable, will that mesh take up the same amount of memory for each Mesh Filter, or will the memory increase just be for pointers to that mesh, with the performance hit coming solely when the mesh needs to be rendered?
It depends. When you just have multiple instances of the same Mesh in the scene, you should normally not have any significant additional memory overhead for the Meshes, since references to the same Mesh will be stored.
However, once you start scaling these meshes, that no longer holds true, as scaled instances of the mesh will need to be created for rendering and physics, which will take up more memory.