Hi,
The thread that I am creating here addresses subjects that have already been discussed here and there, but I believe that in view of the subtlety of the subject a redundancy will not be useless.
To put it simply, I am creating from scratch a new hardware and software configuration (on a Mac Studio M2), which will replace an old one based on a network of several computers.
The specific point I want to address here is RAM optimization, because for a whole bunch of reasons I want to "save" RAM availability.
Before exposing the different strategies considered, I should write a few words about the context and the configuration
Hardware:
Apple Mac Studio M2 / 192 GB RAM / 2TB Storage
NVME M2 8TB HARD DRIVE (for Libraries)
Apollo X6
Software:
Ventura 13.5.2
Cubase 12 Pro (not already installed due to shop closure)
VEP 7 (AS Natively compatible)
VEP 7 Server (AS Natively compatible)
Kontakt 7 (last update)
VI Pro (last update)
Vienna Synchron Player (last update)
NI Komplete 14
And A lot of 3rd Party Libraires
The configuration of my rig is based as follows:
On a single machine, a Mac Studio M2 Ultra, I run Cubase 12 Pro. The large Full Orchestral template of the latter will have the following characteristics;
12 VEP 7 Plug ins connected to 12 instances of VEP 7 (on the same machine).
4 VERBS AUXS
2500 midi tracks
290 VST STEREO OUT (returns of the VEP RACK VST)
197 Stereo Group tracks (interface between vst and audio tracks)
192 audio tracks (routing: audio tracks input = group tracks output (it prints the VEP outputs in audio))
My routing / printing system is very special but it suits me.
On the 12 instances of VEP (each dedicated to kind of instruments ex : str - ww - br etc...) a huge number of patches and samples will be present.
My problem is to be able, very quickly, to load a VEP Server template (with all the virtual instruments via 12 instances) and access certain instruments, while remaining within the limit of 192GB of RAM (less a significant quantity used by the 'OS and Apps). I specify that I want all the instruments to be present in the big VEP metaframe, correctly routed and configured, but NOT loaded into the ram (so that the template opens in the blink of an eye).
According to what I have read here and elsewhere, and according to my software architecture, two strategies are valid and coherent. They are both based on the principle of inactivating things (tracks, and/or patches and/or samples) and here is their principle:
1/ The VEP instances contain a lot of "inactive" VEP tracks housing very few instruments, which allows me to, when I wish, click on "active" in the VEP and at that moment the instruments hosted by this VEP track will load. The advantage of this strategy is that the instruments will be loaded in a very targeted way, but the disadvantage is that it requires a lot of work creating templates and a lot of kontakt instances (but this is subsidiary due to the M2 Ultra CPU capabilities).
ex: 1 VEP track = 1 kontakt plugin = Violin I (multi articulations) patch.
2/ VEP instances contain many fewer "active" VEP tracks, but these VEP tracks host many kontakt instruments which are all "purged" before saving the VEP metaframe template. The advantage is that it requiers less work to build the template but I have never tested it.
3/ a mix of the two strategies.
Well, if I'm wondering this, it's because I read on quite a few threads that some of us had problems with strategy number 2/ and that glitches occurred when loading data in real time.
Obviously I will submit this strategy 2/ to tests on my part, but I think that your experience can save me a lot of time, but also consider solutions that I would not have thought of.
Thank you for getting this far and I hope that a charitable and experienced soul will be able to provide me with some information.
Best,
Bertrand
The thread that I am creating here addresses subjects that have already been discussed here and there, but I believe that in view of the subtlety of the subject a redundancy will not be useless.
To put it simply, I am creating from scratch a new hardware and software configuration (on a Mac Studio M2), which will replace an old one based on a network of several computers.
The specific point I want to address here is RAM optimization, because for a whole bunch of reasons I want to "save" RAM availability.
Before exposing the different strategies considered, I should write a few words about the context and the configuration
Hardware:
Apple Mac Studio M2 / 192 GB RAM / 2TB Storage
NVME M2 8TB HARD DRIVE (for Libraries)
Apollo X6
Software:
Ventura 13.5.2
Cubase 12 Pro (not already installed due to shop closure)
VEP 7 (AS Natively compatible)
VEP 7 Server (AS Natively compatible)
Kontakt 7 (last update)
VI Pro (last update)
Vienna Synchron Player (last update)
NI Komplete 14
And A lot of 3rd Party Libraires
The configuration of my rig is based as follows:
On a single machine, a Mac Studio M2 Ultra, I run Cubase 12 Pro. The large Full Orchestral template of the latter will have the following characteristics;
12 VEP 7 Plug ins connected to 12 instances of VEP 7 (on the same machine).
4 VERBS AUXS
2500 midi tracks
290 VST STEREO OUT (returns of the VEP RACK VST)
197 Stereo Group tracks (interface between vst and audio tracks)
192 audio tracks (routing: audio tracks input = group tracks output (it prints the VEP outputs in audio))
My routing / printing system is very special but it suits me.
On the 12 instances of VEP (each dedicated to kind of instruments ex : str - ww - br etc...) a huge number of patches and samples will be present.
My problem is to be able, very quickly, to load a VEP Server template (with all the virtual instruments via 12 instances) and access certain instruments, while remaining within the limit of 192GB of RAM (less a significant quantity used by the 'OS and Apps). I specify that I want all the instruments to be present in the big VEP metaframe, correctly routed and configured, but NOT loaded into the ram (so that the template opens in the blink of an eye).
According to what I have read here and elsewhere, and according to my software architecture, two strategies are valid and coherent. They are both based on the principle of inactivating things (tracks, and/or patches and/or samples) and here is their principle:
1/ The VEP instances contain a lot of "inactive" VEP tracks housing very few instruments, which allows me to, when I wish, click on "active" in the VEP and at that moment the instruments hosted by this VEP track will load. The advantage of this strategy is that the instruments will be loaded in a very targeted way, but the disadvantage is that it requires a lot of work creating templates and a lot of kontakt instances (but this is subsidiary due to the M2 Ultra CPU capabilities).
ex: 1 VEP track = 1 kontakt plugin = Violin I (multi articulations) patch.
2/ VEP instances contain many fewer "active" VEP tracks, but these VEP tracks host many kontakt instruments which are all "purged" before saving the VEP metaframe template. The advantage is that it requiers less work to build the template but I have never tested it.
3/ a mix of the two strategies.
Well, if I'm wondering this, it's because I read on quite a few threads that some of us had problems with strategy number 2/ and that glitches occurred when loading data in real time.
Obviously I will submit this strategy 2/ to tests on my part, but I think that your experience can save me a lot of time, but also consider solutions that I would not have thought of.
Thank you for getting this far and I hope that a charitable and experienced soul will be able to provide me with some information.
Best,
Bertrand