On Wednesday, December 7, 2016 7:34:25 AM EST David Klann wrote:
On 12/03/2016 01:50 PM, termtech wrote:
On Saturday, December 3, 2016 1:20:09 PM EST
David Klann wrote:
Greetings,
Long-time Linux user, and relatively new JACK user here. I have built
...
Hello, this might be a long shot, but maybe not.
You mentioned it did this when Jack was disabled,
so it seems Jack is not the problem.
Look for the LAU thread on Wednesday titled:
"[LAU] [SOLVED] Crackles in audio, drifting intermittent noise etc."
I was having very strange phasing problems, although I didn't notice
from channel to channel but I wasn't really listening for that.
I knew it was hardware related, only that could cause it.
My ONLY solution was changing the number of enabled CPU cores,
either through my BIOS or through Linux commands such as:
echo 0| sudo tee /sys/devices/system/cpu/cpu3/online
cat /sys/devices/system/cpu/cpu3/online
I found that I must run with just ONE core for the most stability.
(I had posted that I found TWO cores were OK but actually
further test revealed it was not OK.)
So try:
echo 0| sudo tee /sys/devices/system/cpu/cpu1/online
echo 0| sudo tee /sys/devices/system/cpu/cpu2/online
echo 0| sudo tee /sys/devices/system/cpu/cpu3/online
cpu0 will always be online.
Tim.
Hi Tim!
Thanks for this tip! I probably never would have considered this even
though it was a vague, nagging thought in the back of my head.
Disabling three of the four cores (or hyperthreads?) on the CPU fixed
the problem for us!
Specifically (and to tweak your command set), I placed the following in
/etc/rc.local to ensure the CPU disabling survives a reboot:
<code>
for c in 1 2 3; do echo 0 > /sys/devices/system/cpu/cpu${c}/online; done
</code>
In reading the "Crackles in audio..." thread, I am curious to know why
this happens with some CPUs and not with others. My understanding is
that this is fundamentally a timing issue between processes that are
running on different CPUs (or cores). So, while it's not specifically a
JACK issue, if the jackd process is running on CPU0 and the audacity
process is running on CPU3 then a timing error may be introduced between
those two CPU's. Is that a reasonable summary of the effect?
And for my next trick, I will experiment with the taskset(1) command to
set processor affinity for the audio processes. Maybe we can leave all
four CPU's enabled and still avoid the "left-right channel skew" problem.
Ah thanks, I was looking for something like taskset.
I wondered if the entire audio chain, from driver to application,
should somehow be set to one CPU even if all four are enabled.
Please let us know how it works out for you.
I am very late to this multi-core party. It's my first such PC.
I am sure this episode has been repeated before in other threads.
It's hard to dig through the confusion and misinformation.
Even though I did research these CPUs before buying, I didn't
expect it would affect things in this manner.
Tim.
Thank you everyone who weighed in on this, and
especially Paul for
pointing out that it cannot be an issue introduced by JACK.
Best regards,
~David Klann