[PlanetCCRMA] "audiophile tweaks" for fedora? (using HPET high precision timer for digital audio clock)

Fernando Lopez-Lezcano nando at ccrma.Stanford.EDU
Tue Mar 2 13:01:28 PST 2010


On Tue, 2010-03-02 at 10:58 -0800, Niels Mayer wrote:
> Supposedly, one can improve the sound on Linux without resorting to a
> rubidium wordclock ( :-) ) by using HPET high precision timers for the
> digital audio clock.

?

> Does this apply when using a "pro" soundcard that has it's own digital
> timebase (I note config options for this in envy24control, as well as
> a quartz crystal component in proximity to the  ice1712 sound chip on
> the M-audio delta 66)??

All soundcards use their own internal crystal clock reference unless
they are being clocked by an external source, but here "source" means
SP/DIF, ADAT links or word clock. Usually only "pro" level cards will
allow for that. Consumer level cards can only be clocked by the internal
reference (internal means in the hardware of the soundcard). 

> Has anybody tried booting w/ the suggested "clocksource=hpet" && does
> it work?  Does any of this make sense to even look into given that the
> quartz crystal on the soundcard is probably good enough,  and is kept
> as temperature-stable by the graphics card fan blowing heat all over
> the soundcard :-)  -- a poor man's "oven control" like in this
> product: http://www.antelopeaudio.com/en/products_iso_ocx.htm

A clock source such as HPET could (perhaps) improve midi timing, but
that is it. It will definitely have no effect on the audio itself (there
is no actual way to physically connect HPET to the soundcard in the
mobo, AFAIK). And the kernel should be pretty smart about choosing the
best available and reliable timing source. I would not mess with it. 

My definition of "audiophile" certainly does not match what the thread
is talking about. Rtkit and priorities is just an audio reliability
tuning and has nothing to do with "audiophile" level concerns such as
jitter in the clock source for the d/a a/d converters in the card, etc,
etc. If you are worried about that then you will need a very high
quality sound card and/or an external high quality d/a a/d box fed by an
ADAT link or something similar. 

-- Fernando



> FYI, some notes on this pasted from a discussion in #fedora, combined
> w/ my own notes:
> 
> 
> (08:43:44 AM) fenris02: npm, all the audiophile tweaks? they're
> already in fedora. just turn them on.
> (08:44:14 AM) npm: what are the audiophile tweaks?
> (08:44:50 AM) fenris02: npm, yum install tuned rtkit; chrt -f -p 99
> `pgrep softirq`; .... and see the pa page on adding yourself to the
> group to enable
> (08:45:34 AM) fenris02: npm, the only other one is appending
> "clocksource=hpet" to the kernel line in grub.
> (08:46:11 AM) npm: oh interesting. use the hpet timer to get a more
> accurate clock?
> (08:46:18 AM) fenris02: npm, yes
> (08:46:20 AM) npm: that sounds like something i would do
> (08:46:32
> AM) fenris02: npm, /sys/devices/system/clocksource/clocksource0/available_clocksource
> (08:46:36 AM) fenris02: err,
> cat /sys/devices/system/clocksource/clocksource0/available_clocksource
> 
> 
> gnulem-54-~> cat /sys/devices/system/clocksource/clocksource0/
> available_clocksource  current_clocksource    
> gnulem-54-~>
> cat /sys/devices/system/clocksource/clocksource0/current_clocksource 
> tsc
> 
> 
> (09:00:45 AM) npm: fenris02: is 'tuned' a necessary part of your
> audiophile suggestions? (i already have rtkit installed and messages
> indicate it's "working")... my current clocksource is "tsc" and "hpet"
> is available... so if i wanted to just get that, use suggestion
> 'appending "clocksource=hpet" to the kernel line in grub.' ??
> (09:01:32 AM) npm: ^^^ re " fenris02: npm, yum install tuned rtkit;
> chrt -f -p 99 `pgrep softirq`; .... and see the pa page on adding
> yourself to the group to enable"
> 
> 
> gnulem-57-~> yum info '*tuned*'
> Loaded plugins: refresh-packagekit
> Available Packages
> Name       : tuned
> Arch       : noarch
> Version    : 0.2.5
> Release    : 0.1.fc12
> Size       : 46 k
> Repo       : fedora
> Summary    : A dynamic adaptive system tuning daemon
> URL        : https://fedorahosted.org/tuned/
> License    : GPLv2+
> Description: The tuned package contains a daemon that tunes system
> settings
>            : dynamically. It does so by monitoring the usage of
> several system
>            : components periodically. Based on that information
> components will
>            : then be put into lower or higher power saving modes to
> adapt to
>            : the current usage. Currently only ethernet network and
> ATA
>            : harddisk devices are implemented.
> 
> 
> Name       : tuned-utils
> Arch       : noarch
> Version    : 0.2.5
> Release    : 0.1.fc12
> Size       : 14 k
> Repo       : fedora
> Summary    : Disk and net statistic monitoring systemtap scripts
> URL        : https://fedorahosted.org/tuned/
> License    : GPLv2+
> Description: The tuned-utils package contains several systemtap
> scripts to
>            : allow detailed manual monitoring of the system. Instead
> of the
>            : typical IO/sec it collects minimal, maximal and average
> time
>            : between operations to be able to identify applications
> that behave
>            : power inefficient (many small operations instead of fewer
> large
>            : ones).
> 
> 
> 
> 
> Niels
> http://nielsmayer.com





More information about the PlanetCCRMA mailing list