Okay, that explains why you didn't implement that yet, even though it seems like such a low hanging fruit...

Sooner or later, listing all registered agents will be a necessary feature, though, maybe with filtering for things like number of cpu cores, amount of ram, GPU-rendering available or not, certain kinds of software available or not, busy or idle, busy with certain jobtype...

It surprises me a little that this is such a performance hit already. This should be nothing but a simple, single sequential table scan over a not very wide table with maybe 1000 to 10000 entries. That should be less than a megabyte to read from disk.