I think this is referring to the fact that you bind a single server object for the life of the GRPC server.
So it's not singleton in a traditional pattern sense -- e.g. global/static singleton. But it is a singleton within the scope of a GRPC server.
This question has come up before. I think, in the past, it has been asked that URL prefixes could be used to route requests for the same service to different instances. For example, POST to "/service1/my.package.MyService/MyMethod" invokes myMethod on some server instance A, and "/service2/my.package.MyService/MyMethod" invokes it for a different instance.
I think the justification in the past has been that this would complicate the protocol as targeting specific implementations of the same service suddenly requires new behavior in both clients and servers. Instead, the recommended pattern is to use metadata (e.g. a header) and have an aggregate implementation re-dispatch to another implementation based on incoming metadata.