ungh, this is still a big problem for me as well. Best I can figure out... it's probably a good idea to:
a.) turn off multi-core in Kontakt
b.) set VEP to only 1 thread
c.) set up your Logic channel strips so that they're approximately evenly dispersed among different Aux Busses, all of which then lead into either a master bus or simply the main Out.
From what I've read, Logic will split up core activity per Channel Strip. And since the Master Out is technically a channel strip, then sending all your VEP channel strips there at once can cause Logic to use only the one core (and of course overload it).
HOWEVER,... (and this is a big "but")... this "solution" doesn't really work for me. And by "really" I mean at all. I still get CPU spikes after about an hour of use, which prohibit me from using anything too big.
And forget about using any big Multis (eg: LASS auto-arranger multi.) Those cause such massive spikes that I can't even use a single instance (or play a single note). And yet when I load one of these ginormous multis directly into an otherwise empty Logic session, lo and behold it works perfectly.
So to sum:
- Load "X" into VEP template = CPU spike.
- Load "X" into empty Logic session = A-okay.
Now explain that one to me.