A topic near and dear to my heart these days.
The approach I am currently fine-tuning:
I have eleven instances of Kontakt, each has 20 outputs, 16 for instruments, 4 for auxes. Each is associated with a track folder for which I have built a track folder template. I don't think more than a couple of these have all 16 slots loaded, and the eleventh one starts out with just a couple of pianos, I reserve it for all the stuff I discover I need along the way. The rest have between 12 and 14 instruments loaded.
Almost every instrument has its own discrete output. There are a handful of cases, 8Dio Adagietto strings for one, where I will route more than one instrument to a single output because I won't be using them at the same time, and it makes it easier to mix later, for example I have all the short articulations going to the same output.
All of the multis are saved fully purged. With background loading, SSDs, and a reasonably fast computer I almost never get a glitch, even the first time through. And obviously, I don't use all the instruments, but even when I loaded every instrument completely I was only up to around 28 GB of memory used.
I tried a separate, 8 output instance of Kontakt for each instrument, but that crushed my computer. It also caused problems for routing MIDI. I have been experimenting with using more than 16 instruments in a single instance, but routing audio and MIDI becomes a wee bit challenging, and confusing! It would provide some savings in system resources though.
My biggest problem now is routing MIDI! Every developer takes a slightly different approach to managing articulations. Key switches are almost always available, but since you can't "chase" key switches I avoid them. They also make a mess out of the notation output (I use Finale).
For the Cinesamples Brass and Winds I use a separate MIDI track for each instrument. Their "All Articulations" patches work really well that way.
For the Chris Hein Horns (compact) I have one MIDI track for trumpets, one for trombones, etc. I am using MIDI channels to switch between mutes or no mute, and that's working pretty well too.
I have not found an acceptable solution for the 8Dio Agitato and Adagietto strings! For the Adagietto ensemble patches I use a single MIDI track, and I'm trying to use a single MIDI track with multiple channels for the individual instruments, but it is not perfect. Oddly enough, that does work for the Agitato patches. Go figure!
I seldom use NI libraries for drums, like Bit I much prefer Toontrack Superior, and since I have the original DFH Superior libraries as well as the Avatar kits that came with Superior 2 I'm in really good shape. I keep meaning to buy the Custom & Vintage expansion, but haven't had the need yet. I drive Superior from Jamstix, which for some reason doesn't work as well using Sonar X3e and Jamstix 3 - not sure which, or maybe both is causing problems, but I've got it working at the moment, and I just keep my fingers crossed.
If I can figure out a way to load up more than 16 instruments into a single instance of Kontakt I will post the results.