GRIS-UdeM / SpatGRIS

Sound spatialization tool
GNU General Public License v3.0
60 stars 6 forks source link

Tests à plus de 128 canaux #407

Open Normandeau opened 1 year ago

Normandeau commented 1 year ago

V3.2.10 SpatGRIS et BlackHole à 256 canaux Session DP avec automation sur tous les ControlGRIS.

Test 1: 128 canaux stéréos en entrée (256 canaux en tout) sur un dôme de 124.2 hp, SpatGRIS à 34%.

Test 2: 128 canaux stéréos en entrée (256 canaux en tout) sur un cube de 16.2 hp: nombre de hp maximal avec SpatGRIS à 90% (sur un M2). Au-delà ça écrête en CPU.

led78 commented 1 year ago

Je suis là dessus cette semaine, je vous tiens au courant!

NicolaGiannini commented 1 year ago

V3.2.10
 SpatGRIS et BlackHole à 256 canaux
 MacIntel 2,9 Ghz I7 Quad-core

Session Live avec automations sur tous les ControlGRIS. Les automations et les fichiers audio jouent tous ensemble.

Test 1: 77 canaux stéréos en entrée (154 canaux en tout) sur un dôme de 124.2 hp, SpatGRIS à 99%. La limite arrive beaucoup plus tôt pour moi !

Test 2: 77 canaux stéréos en entrée (154 canaux en tout) sur un cube de 16.2 hp: nombre de hp maximal avec SpatGRIS à 95%. Au-delà ça écrête en CPU.

led78 commented 1 year ago

TÉMOIN 1 : SpatGRIS V3.2.10
 BlackHole 128 canaux; 48kHz
 @ 512 échantillons de tampon Mac Pro (fin 2013); OS : macOS 12.6.5 (Monterey); Processeur : 3,5 GHz Intel Xeon E5 6 cœurs; Mémoire : 16 Go 1866 MHz DDR3; DAW : Ableton Live Suite 11.3.2 Interface audio matérielle : RME Digiface Dante 128 canaux (64 Dante + 64 MADI)

Résultat : CPU usage ±60% (57~65%)


TÉMOIN 2 : SpatGRIS V3.2.10
 BlackHole 256 canaux;
 48kHz @ 512 échantillons de tampon Mac Pro (fin 2013); OS : macOS 12.6.5 (Monterey); Processeur : 3,5 GHz Intel Xeon E5 6 cœurs; Mémoire : 16 Go 1866 MHz DDR3; DAW : Ableton Live Suite 11.3.2

Résultat inchangé : CPU usage ±60% (57~66%)


TEST 1 : SpatGRIS V3.2.10
 BlackHole 256 canaux;
 48kHz @ 512 échantillons de tampon Mac Pro (fin 2013); OS : macOS 12.6.5 (Monterey); Processeur : 3,5 GHz Intel Xeon E5 6 cœurs; Mémoire : 16 Go 1866 MHz DDR3; DAW : Ableton Live Suite 11.3.2

Résultat : CPU usage ±67% (64~70%)


TEST 2 : (à suivre...)

led78 commented 1 year ago

TEST 2 : SpatGRIS V3.2.10
 BlackHole 256 canaux;
 48kHz @ 512 échantillons de tampon Mac Pro (fin 2013); OS : macOS 12.6.5 (Monterey); Processeur : 3,5 GHz Intel Xeon E5 6 cœurs; Mémoire : 16 Go 1866 MHz DDR3; DAW : Ableton Live Suite 11.3.2

Résultat : CPU usage ±80% (77~82%) Note : si j'effleure le bouton d'interpolation d'un seul point de pourcentage, le CPU écrête immédiatement à 100%.

led78 commented 1 year ago

TEST 3 : SpatGRIS V3.2.10
 BlackHole 256 canaux;
 48kHz @ 512 échantillons de tampon Mac Pro (fin 2013); OS : macOS 12.6.5 (Monterey); Processeur : 3,5 GHz Intel Xeon E5 6 cœurs; Mémoire : 16 Go 1866 MHz DDR3; DAW : Ableton Live Suite 11.3.2

Résultat : CPU usage ±99% (98~100%)

led78 commented 1 year ago

Note : le paramètre de Global Sound Diffusion du Speaker Setup exploité est à 0.

led78 commented 1 year ago

Je viens de réaliser une chose qu'il est important de distinguer dans l'objectif de ces tests :

  1. Tester l'intégration de Blackhole 256, ainsi que la charge en CPU pour la transmission de plus de 128 canaux entre un DAW et SpatGRIS;
  2. Tester la capacité (charge CPU) de la spatialisation de SpatGRIS pour des dispositifs comprenant plus de 128 haut-parleurs (sans nécessairement utiliser Blackhole 256 pour le routage inter-application)... Comme dans mes exemples ci-haut 😅

En gros, on test tout ce qui dépasse 128 canaux.

led78 commented 1 year ago

Fun fact : la charge CPU reste inchangée en réduction Stéréo, mais l'est en mode Binaural.

Normandeau commented 1 year ago

David, Questions au sujet de tes tests.

TÉMOIN 1 • Quand tu écris: BlackHole 128 canaux; 48kHz @ 512 échantillons de tampon Comment fais-tu pour ajuster la mémoire tampon de BlackHole à 512 échantillons? • Quand tu écris: I/O DAW>SpatGRIS = 64 canaux (32 CUBE + 32 DOME) Tu veux dire Blackhole? • Pourquoi utilises-tu une interpolation de 100%?

TÉMOIN 2 • Quand tu écris I/O DAW>SpatGRIS = 64 canaux (32 CUBE + 32 DOME) Tu veux dire Blackhole? • Même question: Pourquoi utilises-tu une interpolation de 100%?

TEST 2 • SpatGRIS interpolation = 0% Note : si j'effleure le bouton d'interpolation d'un seul point de pourcentage, le CPU écrête immédiatement à 100% Un classique!!!

TEST 3 • Tu écris que tu utilises une interface à 128 canaux: Interface audio matérielle : RME Digiface Dante 128 canaux (64 Dante + 64 MADI) Mais que tu envoies 167 canaux: I/O SpatGRIS>RME Digiface Dante = 153 canaux en CUBE Mode et 14 Direct Out (153.14 = 167) Tu fais cela comment?

Sinon: 153 canaux en mode CUBE?!? Plus 14 sorties directes!!! Avec comme résultat: Plugiciels : 16x ControlGRIS @ 2 sources en mode CUBE (32 sources au total) Résultat : CPU usage ±99% (98~100%)

N'ayant pas ton dispositif sous la main, je m'en suis fabriqué un à 153.14 CUBE153(50+40+30+20+10+3)Subs14 Mais je n'ai pas accès à une interface qui possède autant de canaux de sorties. Pour tester j'ai donc mis Enzian128 en entrée et BlackHole256 en sortie.

Séquence DP de 16 pistes ST sans automation (32 sources) Résultat : CPU usage ± 58%

Séquence DP de 16 pistes ST avec automation (32 sources) Résultat : CPU usage ± 80%

Ensuite, je suis passé à:

Séquence DP de 24 pistes ST sans automation (48 sources) Résultat : CPU usage ± 91%

Séquence DP de 24 pistes ST avec automation (48 sources) Résultat : CPU usage ± Overload%

Séquence DP de 32 pistes ST sans automation (64 sources) Résultat : CPU usage ± Overload%

Séquence DP de 32 pistes ST avec automation (64 sources) Résultat : CPU usage ± Overload%

Donc avec un tel dispositif, il semble que le chiffre magique c'est 32 sources avec ou sans automation. Au-delà, on dépasse la limite de CPU.

Ce serait bien que tu nous partages ton speaker setup!!!

led78 commented 1 year ago

Robert, Comment fais-tu pour ajuster la mémoire tampon de BlackHole à 512 échantillons?

Je fais référence au paramètre Buffer Size dans SpatGRIS (settings)

• Quand tu écris: I/O DAW>SpatGRIS = 64 canaux (32 CUBE + 32 DOME) Tu veux dire Blackhole?

Pas nécessairement. En fait, je remarque que peu importe l'interface Blackhole employée (16, 64, 128 ou 256), ce qui compte c'est le nombre de canaux ayant un signal actif à spatialiser qui augmente la charge en CPU et non la limite de canaux de Blackhole; même si je créer 128 canaux en entrée, le CPU augmente seulement lorsque je de-mute un canal et que le signal est transmis.

• Pourquoi utilises-tu une interpolation de 100%?

Parce que j'anticipe que la limite de la charge CPU sera atteinte avec moins de canaux au total si ce paramètre est à 100%. Ensuite, j'effectue d'autres tests avec une interpolation à 0% pour connaitre la différence.

• Tu écris que tu utilises une interface à 128 canaux: Interface audio matérielle : RME Digiface Dante 128 canaux (64 Dante + 64 MADI) Mais que tu envoies 167 canaux: I/O SpatGRIS>RME Digiface Dante = 153 canaux en CUBE Mode et 14 Direct Out (153.14 = 167) Tu fais cela comment?

Je l'ignore hahah! Même si la Digiface Dante ne m'offre que 128 canaux de sortie matérielle (64 Dante + 64 MADI), je n'ai que 96 canaux de conversion A/N en aval : 1x Tascam ML-32D pour 32 canaux Dante + 2x RME M-32 DA pour 64 canaux MADI = 96 canaux convertibles en analogique au total ; SpatGRIS me permet d'avoir autant de canaux en sortie que le Speaker Setup utilisé. Autrement dit, c'est le Speaker Setup qui décide du nombre de canaux sortant, peu importe l'interface audio matérielle sélectionnée; pas besoin d'avoir une interface audio de 256 sorties pour tester une spatialisation avec un Speaker Setup virtuel de 256 haut-parleurs, apparement. :)

Ce serait bien que tu nous partages ton speaker setup!!!

C'est très prévu! En fait j'attendais de valider le tout en pratique, avec le vrai dispositif, avant de vous le partager... dans le but de l'intégrer aux templates de SpatGRIS ;) hahah

Le voici : Satosphere_93.10hp+5xSatotems_60.4hp_153.14hp.xml.zip

En gros, ça correspond à la configuration de haut-parleurs de la nouvelle Satosphère (93.10), avec cinq «Satotems» de 12 haut-parleurs chaque et 4 subs disposés à l'intérieur (60.4) -- ça pourrait aussi bien être des Audiodices, puisqu'ils ont 12 haut-parleurs chacun et qu'il y en a cinq.

led78 commented 1 year ago

Pour la performance de mon CPU, je rappelle que je n'utilise pas un Mac M1 ou M2, mais un vieux Mac Pro Intel de 2013. :)

led78 commented 1 year ago

Je ne remarque pratiquement aucune différence de performance en CPU, entre un Buffer size de SpatGRIS à 128 et 2048 échantillons.

Acousmachin commented 1 year ago

Le voici : Satosphere_93.10hp+5xSatotems_60.4hp_153.14hp.xml.zip

En gros, ça correspond à la configuration de haut-parleurs de la nouvelle Satosphère (93.10), avec cinq «Satotems» de 12 haut-parleurs chaque et 4 subs disposés à l'intérieur (60.4) -- ça pourrait aussi bien être des Audiodices, puisqu'ils ont 12 haut-parleurs chacun et qu'il y en a cinq.

Bonjour, et je n'ai que deux mots à dire : Aaaaahhhh, et Bravo David ! Ça me fait trop plaisir de voir enfin l'espace qui se remplit, et là, on fait évidemment ça en grand :-) Venant de la SAT ça peut peut-être donner une impulsion à d'autres pour compléter aussi d'autres dômes et faire des sons en volume ?

J'ai fait quelques tests de mon côté (PC...) sur cette nouvelle version de SpatGris, et avec Reaper et Rearoute ça continue de fonctionner sur 256 IO. Je vais tâcher de mesurer un peu les perfs car le peu que j'ai constaté c'est que le Cube est très très gourmand.

Jean-Marc Duchenne

Normandeau commented 1 year ago

Oui Jean-Marc, le CUBE est beaucoup plus exigeant, surtout du côté des haut-parleurs. Avec un dispositif «normal» de 32 ou 48 hp, ça va. À 64, ça tient encore mais selon le nombre de sources, ça peut bloquer. Au-delà de 64, c'est plus difficile. On a mis un homme là-dessus...