Dual Core pour l'audio ?
- 344 réponses
- 19 participants
- 6 867 vues
- 20 followers
miles1981
J'ai une question existentielle. Est-ce que le dual core améliorera les performances audio ? Est-ce que les séquenceurs utilisent proprement les threads pour que cela soit meilleur ?
Question subsidiaire :
Et quid du 64bits ?
Audio Toolkit: http://www.audio-tk.com/
babaorum
Clip Ideal_Sound - 'Bleu orage' by Ideal Sound
Anonyme
Pov Gabou
Citation :
alheureusement non, si une application bosse avec des données 64bits et a été compilée pour un processeur 32bits, les traitements 64bits seront émulés sur 32bits et ne profiteront jammais des registres 64bits. Désolé de devoir te contredire.
C'est faux pour les processeurs courants, a savoir au moins powerpc et x86. Sur x86, t'as un choix pour le flottant: la fpu qui travaille avec des registres de 80 bits, et le sse, qui travaille avec des registres de 128 bits (4 ou 2 flottants selon la precision, le sse ne gerant pas les flottant de 80 bits a ma connaissance).
La difference entre le 32 et le 64 bits, c'est les acces memoire, et c'est a peu pres tout. Le temps des operations flottant, c'est pareil (il y a de toute facon pas d'instruction specifique pour les additions, multiplication, etc/// selon la taille des donnees. Seules les operations de mises en memoire le sont).
Ensuite, que xp 64 soit plus lent que xp 32, c'est une evidence: la memoire est tres lente, donc passer en 64 bits ne fait qu'empirer les choses de ce cote la. Par contre, ca peut etre compense par le nombre de registrez supplementaires sur architecture x64.
Citation :
A priori oui, mais en plus, les plugs, le moteur audio du séquenceur, les pilotes sont des processus distincts donc ils se répartissent sur les différents processeurs.
Non. Les drivers sont en mode kernel, donc ca n'a pas de sens de parler de processus dans ce cas la, et sinon, la majorite des sequenceurs foncfionnent sur un mode multi threading: le plug est dans le meme espace d'adressage que l'hote. C'est pour ca d'ailleurs qu'un plug peut faire tout planter. Ensuite, les performances de windows NT etant ce qu'elles sont (nulles), la creation de processus est extremement lente, et la latence entre deux processus est lente aussi: pas d'interet au multi processus (beaucoup plus repandu dans la mao sous linux: par exemple seveur jack).
Typiquement, tu as souvent un thread qui va fonctionner "en temps reel", qui fait que des operations arithmetiques sur les donnees, un thread GUI, un thread charge de la gestion des buffers disques, un pour la gestion de la carte audio, etc...
Mais ce sont des thread kernel, donc ordonances par l'OS, donc beneficient automatiquement du multi processing ou dual core.
Mini Ours
miles1981
Maintenant, Gabou, tu peux développer ? A ton avis, les applis audio profiteront-elles du dual-core ?
Audio Toolkit: http://www.audio-tk.com/
babaorum
Par contre pour la RAM il faut absolument de la marque (corsair, samsung ) ?
et pour une carte graphique qui gère deux écran une Geforce GT 6600 ça le fait (128 Mo avec sortie TV et/ou DVI) ?
je me suis fait une tite config genre PC silencieux ET performant (juste l'UC) ben avec un Athlon 64 3500+ une bonne carte mère ASUS 1 Go de RAM , 200 Go de HDD un boitier Antec et une alim 420 W j'explose mon budget (environ 1000 € me suis donné comme limite) ... vavavoum !!!
Clip Ideal_Sound - 'Bleu orage' by Ideal Sound
Mini Ours
http://www.carillondirect.com/clnweb/index.jsp?country=UK
Anonyme
Citation : C'est faux pour les processeurs courants, a savoir au moins powerpc et x86. Sur x86, t'as un choix pour le flottant: la fpu qui travaille avec des registres de 80 bits, et le sse, qui travaille avec des registres de 128 bits (4 ou 2 flottants selon la precision, le sse ne gerant pas les flottant de 80 bits a ma connaissance).
La difference entre le 32 et le 64 bits, c'est les acces memoire, et c'est a peu pres tout. Le temps des operations flottant, c'est pareil (il y a de toute facon pas d'instruction specifique pour les additions, multiplication, etc/// selon la taille des donnees. Seules les operations de mises en memoire le sont).
Ensuite, que xp 64 soit plus lent que xp 32, c'est une evidence: la memoire est tres lente, donc passer en 64 bits ne fait qu'empirer les choses de ce cote la. Par contre, ca peut etre compense par le nombre de registrez supplementaires sur architecture x64.
Pov Gabou
Citation :
Monsieur Gabou, je sais pas quelle mouche t'a piquée, mais ici je ne parle pas de virgule flottante, je parle des "bonus" 64bit au niveau des registres généraux. Alors je persiste et signe, un programme compilé pour utiliser une architecture 32bit classique n'utilisera pas les registres généraux étendus en 64bit.
Je me suis emele les pinceaux entre ta remarque et celle 2-3 posts plus loin qui parlait bien des flottants 32/64 bits.
Citation :
Maintenant, Gabou, tu peux développer ? A ton avis, les applis audio profiteront-elles du dual-core ?
Faut voir a quel point les deux core sont vraiment independants. En theorie, tu devrais rien avoir a faire pour que ca marche mieux (si ton appli est deja multi thread evidemment, mais c'est le plus souvent le cas en MAO, ou un plug est un thread, j'imagine, en VST et cie), maintenant, en pratique, je suis sur qu'il va y avoir de la bidouille pour que ca marche. Le probleme des CPU actuels, c'est qu'ils sont calculent trop vite, et ne recoivent pas les donnees assez rapidement. Beaucoup se joue sur la cache, etc...
Typiquement, j'ai active l'Hyper threading sur ma machine, et pour la compilation, ca joue pas mal (faut lire sur le DD), pour matlab, ca joue que d'alle, sur Linux. Mais linux est nettement plus performant que windows en multi processeurs, multi thread. Le dual core est cense permettre a 2 threads/processus de se partager le proc, mais si les donnees de l'un dependent de l'autre, ca sert a rien.
EN mieux explique:
https://arstechnica.com/articles/paedia/cpu/intel-future.ars/4
miles1981
Gabou > le processeur calcule trop vite ??
Audio Toolkit: http://www.audio-tk.com/
- < Liste des sujets
- Charte