Questions et réponses de la communauté

Bienvenue sur le forum de questions et réponses d'Audiokinetic, propulsé par la communauté. C'est l'endroit où les utilisateurs de Wwise et Strata s'entraident. Pour obtenir une aide directe de notre équipe, veuillez utiliser la page « Tickets de soutien ». Pour signaler un bug, utilisez l'option Bug Report dans l'Audiokinetic Launcher. (Veuillez noter que les rapports de bug soumis au forum questions-réponses seront rejetés. L'utilisation de notre système de rapport de bug dédié garantit que votre rapport est vu par les bonnes personnes et a les meilleures chances d'être corrigé.)

Pour obtenir rapidement les meilleures réponses, suivez ces conseils lorsque vous posez une question :

  • Soyez précis : qu'essayez-vous de réaliser ou quel est le problème spécifique que vous rencontrez ?
  • Pensez à inclure les détails importants : incluez des détails tels que les versions de Wwise et du moteur de jeu, le système d'exploitation, etc.
  • Expliquez ce que vous avez essayé de faire : indiquez aux autres les mesures que vous avez déjà prises pour essayer de résoudre le problème.
  • Concentrez-vous sur les faits : décrivez les aspects techniques de votre problème. Se concentrer sur le problème aide les autres personnes à trouver rapidement une solution.

0 votes
I would like to set my own thread affinity for the various threads created by the Sound Engine. How can I achieve this?
dans General Discussion par Benoit S. (Audiokinetic) (16.0k points)

1 Réponse

0 votes
 
Meilleure réponse

You can control the initialization settings for four threads created by the Sound Engine:

  • AkDeviceSettings.threadProperties controls the IO thread
  • AkPlatformInitSettings.threadLEngine controls the Audio thread
  • AkPlatformInitSettings.threadBankManager controls the Bank Managing thread
  • AkPlatformInitSettings.threadMonitor controls the Monitor thread

You can set the affinity mask in each of these four structures.

par Benoit S. (Audiokinetic) (16.0k points)
Documentation for this subject is a bit scarce, but as I understand it, the thread affinity is an unsigned int containing a bit mask, where bit #x correspond to CPU core x, and you specify which CPU cores you want to use by setting the corresponding bit.

For example, if you want to only run on core 0, you specify:

dwAffinityMask = (1 << 0);

And if you want your thread to run on cores 3-5, you specify:

dwAffinityMask = (1 << 3) | (1 << 4) | (1 << 5);
...