ASIO on multiple cores
Aug 16, 2009 at 10:19 AM Thread Starter Post #1 of 30

Von Soundcard

100+ Head-Fier
Joined
Apr 3, 2006
Posts
240
Likes
10
Hi, I own an EMU 0404USB and often use it in ASIO mode. I'm thinking of getting a new CPU+rig and I'm not sure how best to use multiple cores for ASIO playback.

More specifically I wonder if selecting just one of the cores (by setting the affinity) to handle the player software would make use more efficiently of CPU resources than letting "default management" handle the load.

Also if having a special core allocated for ASIO playback avoids popping sounds due to overall high load, as opposed to having any/all cores handle the playback under similar high load conditions.
 
Aug 16, 2009 at 10:28 AM Post #3 of 30
I like to run my media players(foobar & KMPlayer) on the 4 cores in high priority, and put the system processes in low priority on single cores...this allows better performance overall.

if you run XP, you can also play w/ the type of timer Windows will use(CPU speed/PM timer) and also w/ the thread quantum time...so high priority will get 6X more priority than low
smily_headphones1.gif
 
Aug 16, 2009 at 1:04 PM Post #4 of 30
While this is interesting, it does not really answer my question.
This thread is not about ASIO load quantitatively (which is relatively low), but rather about it's particular demands and how to more efficiently handle it in difficult conditions. I am interested in the conclusions of people who have done/seen tests with ASIO, first under general management and then with one core specifically allocated for it (and possibly other tweaks), ideally all under high overall load.
 
Aug 16, 2009 at 1:17 PM Post #5 of 30
Quote:

Originally Posted by Von Soundcard /img/forum/go_quote.gif
While this is interesting, it does not really answer my question.
This thread is not about ASIO load quantitatively (which is relatively low), but rather about it's particular demands and how to more efficiently handle it in difficult conditions. I am interested in the conclusions of people who have done/seen tests with ASIO, first under general management and then with one core specifically allocated for it (and possibly other tweaks), ideally all under high overall load.



With 98% reserve CPU it's not a problem, unless you happen to be encoding video/audio at the same time as playing back music. Windows itself shares out the cores, so really shoudn't mess around with locking application to one core.
 
Aug 16, 2009 at 1:30 PM Post #6 of 30
Quote:

Originally Posted by Von Soundcard /img/forum/go_quote.gif
This thread is not about ASIO load quantitatively (which is relatively low), but rather about it's particular demands and how to more efficiently handle it in difficult conditions.


ASIO is not voodoo magic, it's just an audio renderer...just like DS/MME/KS/WASAPI.

you want your media player in a high priority thread, that's all...so the NT core will favor it over the rest(which ideally should run in low priority).

what difficult conditions? no games work in ASIO...and Nuendo/Cubase are better run in high priority again.
 
Aug 16, 2009 at 4:40 PM Post #7 of 30
Quote:

Originally Posted by leeperry /img/forum/go_quote.gif
ASIO is not voodoo magic, it's just an audio renderer...just like DS/MME/KS/WASAPI.

you want your media player in a high priority thread, that's all...so the NT core will favor it over the rest(which ideally should run in low priority).

what difficult conditions? no games work in ASIO...and Nuendo/Cubase are better run in high priority again.



Have you done/seen the tests I asked about yourself ? Or are you simply talking out of your convictions ?

ASIO is not just a renderer, it is a transfer protocol which bypases a lot of windows layers and as such I don't know if the default win (XP) management of multiple cores makes optimal use of it. Also it is very sensitive to high loads (being a low latency protocol) so under conditions of heavy load from other apps, some of which may set themselves to high by default, it can also be affected on otherwise powerful computers.
(I have read about problems using Cubase in ASIO which were solved by modifying core affinity, but nothing about simple playback)

So if you have done/seen conclusive comparisons with different multicore CPU settings to see which best suits ASIO playback under difficult load conditions, I'd like to hear your opinion. If not, perhaps we should let others more knowledgeable give their advice.
 
Aug 16, 2009 at 5:29 PM Post #8 of 30
@VON, Some think ASIO is for outputting their MP3 and "just a audio renderer" others know better and they were written with low latency recording in mind.
I have used these drivers for years for recording but not sure about your question.

To get the information you need with enough detail perhaps you should drop a email to Steinberg and ask them. Post with your results if you decide to ask them as it would be interesting to know as there is little information out there on this subject.
 
Aug 16, 2009 at 5:40 PM Post #9 of 30
Quote:

Originally Posted by Von Soundcard /img/forum/go_quote.gif
I have read about problems using Cubase in ASIO which were solved by modifying core affinity [..]

perhaps we should let others more knowledgeable give their advice.



haha, your theory is laughable at best
tongue.gif


FYI, ASIO is a low-latency audio renderer...just like DirectKS or WASAPI, no voodoo magic here again
rolleyes.gif


but I'm sure Robbie6 will have some rocket science to throw at 'cha...thanks for making my day
icon10.gif
 
Aug 16, 2009 at 6:17 PM Post #10 of 30
Quote:

Originally Posted by leeperry /img/forum/go_quote.gif
I like to run my media players(foobar & KMPlayer) on the 4 cores in high priority, and put the system processes in low priority on single cores...this allows better performance overall.

if you run XP, you can also play w/ the type of timer Windows will use(CPU speed/PM timer) and also w/ the thread quantum time...so high priority will get 6X more priority than low
smily_headphones1.gif



:face_palm: No. Just no.
 
Aug 16, 2009 at 6:29 PM Post #11 of 30
for listening to audio, you should not run asio in low latency mode. Yes, asio is capable of low latency but that is only required for recording & mixing purposes.
For listening you should ditch low latency & use maximum buffer setting for better performance.
 
Aug 16, 2009 at 6:32 PM Post #12 of 30
Quote:

Originally Posted by LingLing1337 /img/forum/go_quote.gif
:face_palm: No. Just no.


you mean :
images


the whole NT core is based on priorities, I suggest you look up m$ white papers.

when I play a movie or audio file, I want it to get the highest priority thread...if you like jitter/stuttering/latency, be my guest
smile_phones.gif

Quote:

Originally Posted by gurubhai /img/forum/go_quote.gif
listening you should ditch low latency & use maximum buffer setting for better performance.


but latency and jitter are related...the higher the latency, the higher the theoritically possible jitter. so it's kind of a mixed bag.
 
Aug 16, 2009 at 6:46 PM Post #13 of 30
@leepery : I won't go into the issue of jitter since I still have don't belive in it ( you see, I still haven't jumped on Xonar ST & can't claim like you that jitter is very much audible )

As, for clicks & pops ocurring due to low buffer, they are audible to anyone.Ideally, one should keep his buffer at the lowest value where one does not getting any clicks, pops or audio dropouts.
 
Aug 16, 2009 at 6:56 PM Post #14 of 30
exactly, you need to find the lowest glitch-free setting
smily_headphones1.gif


and I'm not talking about DAC clock jitter, I'm talking about jitter within the windows kernel
wink.gif


HPET on Vista/W7 helps a lot w/ that thanks to its very high timer granularity, but XP is pants for realtime use..I wanna switch to W7 so bad, but KMPlayer still doesn't support madVR and HR doesn't work well on W7
frown.gif
 
Aug 16, 2009 at 7:04 PM Post #15 of 30
Quote:

Originally Posted by leeperry /img/forum/go_quote.gif
you mean :
images


the whole NT core is based on priorities, I suggest you look up m$ white papers.

when I play a movie or audio file, I want it to get the highest priority thread...if you like jitter/stuttering/latency, be my guest
smile_phones.gif


but latency and jitter are related...the higher the latency, the higher the theoritically possible jitter. so it's kind of a mixed bag.



I'll agree with setting a higher priority for movies, because I have to use my mobo's integrated graphics so I think VLC needs a bit of a push, otherwise I get stuttering/decreased performance. However, I have set priority on Foobar to high, and there's definitely not a difference.
 

Users who are viewing this thread

Back
Top