I have something of an understanding of the way your current populator works. It has to explicitly store instances of the object. As you say, this takes a lot of memory to explicitly populate and store them. On the other hand, the Fake Stones Shader doesn't have to store instances of stones. It uses a fractal generator with noise, some logic and controlling constraints to decide where each stone is, how big it is etc. The planet I have been working on the past few days probably has many billions of stones lying on its surface (perhaps trillions). These are not stored but computed using procedurals. I am suggesting extending this technique to loadable objects. My post is a request for a future feature. I guess I should have been more clear about that. If I could replace each fake stone with a plant of my choice, I would pretty much have what I am talking about. Of course, objects need to be automatically aligned to normal and such things as that. Perhaps a rule that decides on the probability of their heading. The Fake Stones Shader already has some useful controls such as density and slope minium/maximum etc. I do not need to have the ability to individually reposition and tweak objects generated this way. But there does need to be some reasonable rules to control where and how they appear.
Thanks for the information, though. I will do some more research.