Vienna Symphonic Library Forum
Forum Statistics

181,986 users have contributed to 42,198 threads and 254,643 posts.

In the past 24 hours, we have 4 new thread(s), 8 new post(s) and 48 new user(s).

  • VE Pro / Kontakt 4 - Multiprocessing settings

    Hi!

    First some system info:

    Vista 64
    Cubase 5 (256 buffer) - VE Pro (x1 buffer)
    Intel Xeon Quad W5580 (3,2ghz)
    24 gb ddr3 ecc/reg ram.

    I have read that the general advice is to set VE Pro to 2 threads pr instance, and when hosting Kontakt 4 within VE Pro you should swith Kontakt's multiprocessing off.

    Now I' running some Tonehammer patches through Kontakt hosted in VE Pro, and I'm overloading Kontakt CPU meter. Its some quite heavy patches, and when playing 3 of them simultainiously (getting about 70 voices), Kontakts CPU meter overloads causing audio to crack and drop out. Under Kontakts "Engine" tab, I see that Kontakt is using 1 core.

    This isnt exactly good performance. No if I host Kontakt in Cubase (havent tested in VE Pro), and let Kontakt use all 8 cores, there is ofcourse no problem, there is plenty of CPU headroom even with 300 voices.

    As you see, some of these patches are as good as unplayable when Kontakt only is allowed to use 1 core.

    So I'm wondering, what is the word on leaving Kontakts interal multiprocessing on, letting it use 2-8 cores? In what way does this affect VE Pro? Is there any known problems? Also will Kontakt be able to use more than 1 core if VE Pro is set to use only 2 threads pr instance?

    Thank you!

    -tom


  • I'd like to get a bit more technical input too. I'm having some issues, too, with both Logic and Pro Tools.

    Thanks,

    JB


  •  What happens if you just switch Kontakt multiprocessing to "off"?

    DG


  • As I see it, turning Kontakts multiprocessing to "off" only allows Kontakt (or maybe each instance of Kontakt) to use 1 core. You can check the number of cores handled by each instance under the engine tab. I've tried this both in VE Pro and in Cubase, and with Kontakt multiprocessing switched off, each Kontakt willl only use 1 core, which isn't enough for complex patches, atleast not several of them.

    -tom


  • Turning off multiprocessing is supposed to enable the host to deal with these issues. Is this not the case? Also I seem to remember that for the plugin of Kontakt, Native Instruments also says this.

    DG


  • VE Pro handles multiprocessing already, so multiple instances of Kontakt will automatically be spread over your cores (depending on the Threads setting in the VE Pro preferences of course). I recommend to disable multiprocessing in Kontakt.


  •  Yes VE Pro handles multiprocessing very well. The problem is when you stream heavy patches from one instance of Kontakt. Even though VE Pro distributes the load of several instances, one instance will not be allowed to use more than 1 core. And this is just not enough in the case of some patches.

    With multiprocessing inside Kontakt disabled, I'm maxing out the 1 core very fast when playing complex patches. This is ofcourse always a problem regardless of the host being VE Pro or Cubase.

    In the scenario I described earlier, I had to let Kontakt use 2 or more cores (within VE Pro) to get a good result. Do you think I would have been better off setting VE Pro thread setting to 4 (or 6) , and hosting several Kontakt instances, one for each patch? Would this mean that with VE Pro threads set to 6,  that 3 Kontakt instances within VE Pro, would receive 1 core each?  I may very well be simplifying this to much ;)

    So far I havent run into any apperant problems when allowing Kontakt to handle its own multiprocessing.

    -tom


  • Hang on a sec. Are you setting VE Pro only to use one core?

    DG


  •  I have each VE Pro instance set to use 2 threads, which I suppose is 1 core. But still, if you set VE Pro to use 8 threads, which I think would be 4 cores, then each Kontakt instance would still only be allowed to use 1 core. VE Pro seems to spread the load of several Kontakt instances, depending on how many cores each VE Pro is set to use. But if Kontakt is allowed to handle its own multiprocessing, then it may distribute the load of a single Kontakt instance over several cores.

    Atleast this is how I understand it.


  • Just as a test, try setting VE Pro to use all the threads that you have, switch Multiprocessing off in Kontakt, run your instance that is causing all the problems and then look in Task Manager to see how many cores VE Pro is actually is using. What is the result?

    DG


  • Yes I have tried this before, but I can do it again:

    VE Pro: 8 threads, Kontakt: MP off (engine reports 1 core (which should say thread) in use, but ). Vista task manger shows activity on 2 "cores" (1 is ofcourse "virtual"), both at about 50%. This is when the Kontakt cpu meter shows overload and audio breaks up. Ofcourse when Kontakt overloads this also causes the VE Pro CPU meter to overload although VE Pro isnt actually using all its availiable resources.

    If I add more Kontakt instances, the load will be spread out. If this is the solution, I would have to host each complex patch in its own Kontakt.


  •  OK, I do not get this issue here. Did you re-start the VE pro server after making the changes to the number of threads?

    DG


  •  Thanks for your help testing this!

    Yes I restarted the VE Pro Server, and Cubase after the change. I think the reason for the readout is because Kontakt can only use 1 core pr instance. It does not matter if VE Pro is able to utilize all cores, because the single instance of Kontakt cant use more than one. If you keep adding Kontakts, they will be distributed to the availiable cores, but still each instance won't be able to use more than 1 core at the time.

    For this testing I've used 3 "effect" patches from TH Plucked Piano. They have lots of effects and long release time. So voices build up quite fast. Playing all 3 patches at the same time causes cpu overload quite fast. It does not matter wheter or not VE Pro can use 2 or 8 threads. This just seems to be the way Kontakt works. With multiprocessing turned off, each instance can't use more than 1 core. This is as explained earlier only a limitation when you are playing complex patches, usually this is not a problem.

    And, if I let Kontakt do its own multiprocessing within VE Pro, usually I try to set it to 4 cores, there is no problem with overload, atlest not when playing back an normal amount of notes. Also, it seems to work, I havent encountered any issues, so this is why I'm asking wheter or not there are any know issues. As I see it there are no other alternatives, besides hosting 1 (complex) patch per Kontakt instance, which isnt particulary ram efficient. Each new Kontakt instance will use up a portion of ram, and you won't benefit from patches who are sharing the same sample pool, you will have to reload the same base samples for every patch as Kontakt do not seem to communicate ram usage across instances.


  • It's irritating that all of this is still a "mystery."  I'm a Logic user - same questions, same issues.  On the Logic side, Apple recommends turning off all multi-core functions in both Kontakt and VEP and letting Logic do the core distributions.  If you check some NI posts, they'll tell you to turn ON multi-core in Kontakt.  And so on.


  • igor,

    your right, its very irritating. Vienna Support recomends MP off. LASS support and NI say MP ON.

    Apple doesnt say anything, like always. For Logic Users it´s frustrating.

    Only thing I can say is, that switching MP in Logic from Automatic to 8 threads helped me to finish my project...

    Best Oliver


  • How do you set Logic to 8 threads MP?