LowAudioLatency icon indicating copy to clipboard operation
LowAudioLatency copied to clipboard

LAL Causing specific cores to be underutilized compared to others.

Open calculusteacher opened this issue 1 year ago • 18 comments

When using the program, cpu core 0 is drastically underutilized compared to other cores. (This persists until I restart my computer)

With LAL Running image

With LAL Closed image

However, it seems like during stress tests (p95 large fft) cpu 0 was being fully utilized again. It's only under loads like OW2 where it happens.

Some other people have reported this as well. I'm not sure why this happens.

calculusteacher avatar Dec 08 '23 13:12 calculusteacher

Is it known that the API blocks the core probably to provide truly low latency.

I have tested different variations but as soon as IAudioClient3 is started with a smaller buffer it looks like this in the task manager.

https://github.com/miniant-git/REAL/issues/9

spddl avatar Dec 08 '23 13:12 spddl

I don't know when this behavior occurs, but if the PeriodInFrames is called less than 10ms in IAudioClient3::InitializeSharedAudioStream, it can happen that the calling process allocates the first CPU thread and sets it to realtime, so this application runs mostly alone. The solution is to check and remove this binding afterwards, because this program only runs in the background and does not need a realtime flag.

image

can you test the new version again?

spddl avatar Jul 01 '24 19:07 spddl

doesn't happen on new version, all cores are at normal utilization 👍

calculusteacher avatar Jul 05 '24 15:07 calculusteacher