Warning instalando Ardour 3 Beta 2

--424305--
#1 por --424305-- el 18/01/2012
Ups se me olvidó comentar que al instalar Ardour 3 Beta 2 me apareció el siguiente Warning:

System failed the quick sanity check... Looking for the cause

!!! WARNING !!! - Your system seems to use frequency scaling.
This can have a serious impact on audio latency. You have two choices:
(1) turn it off, e.g. by chosing the 'performance' governor.
(2) Use the HPET clocksource by passing "-c h" to JACK
(this second option only works on relatively recent computers)]/i]


De la opción (1) no tengo ni idea de cómo desactivar frecuency scaling escogiendo " 'performance' governor ".

Por otro lado tal y como comenté en #6 de:
http://www.hispasonic.com/foros/configurar-kernel-32-para-audio/391602

hpet sí que parece estar activo en mi núcleo ¿?
$ dmesg | grep -i hpet
[ 0.000000] ACPI: HPET 00000000baf1ec98 00038 (v01 _ASUS_ _ASUS_ 06222004 AMI. 00000003)
[ 0.000000] ACPI: HPET id: 0x8086a701 base: 0xfed00000
[ 0.000000] hpet clockevent registered
[ 0.533662] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0
[ 0.533669] hpet0: 8 comparators, 64-bit 14.318180 MHz counter
[ 0.535697] Switching to clocksource hpet
[ 1.249780] rtc0: alarms up to one year, y3k, 242 bytes nvram, hpet irqs

$ cat /proc/asound/timers
G0: system timer : 1000.000us (10000000 ticks)
P0-0-0: PCM playback 0-0-0 : SLAVE
P0-0-1: PCM capture 0-0-1 : SLAVE
P0-1-0: PCM playback 0-1-0 : SLAVE
P0-3-0: PCM playback 0-3-0 : SLAVE

$ cat /boot/config-3.2.1 | egrep -i "hrt|hr_t|hpet"
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_SCHED_HRTICK=y
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_SND_HRTIMER=m

Así que he optado por la opción (2), pero como no lanzo jack desde un terminal sino con qjackctl y no veo que la opción hpet pueda marcarse, entonces simplemente la introduzco en el campo:
"Ruta del servidor" /usr/bin/jackd -ch

¿Es correcto? ¿Alguna sugerencia?

Gracias

P.D. Hoy hay protesta contra SOPA & PIPA y no puedo buscar en ardour.org ... a ver si las tumbaran
Subir
--424305--
#2 por --424305-- el 18/01/2012
:) ¡Lo encontré! Sobre la opción (1) descativar frecuency scaling:

Power management and ACPI options --->
CPU Frequency scaling --->

Kernel Help escribió:
CONFIG_CPU_FREQ:

CPU Frequency scaling allows you to change the clock speed of
CPUs on the fly. This is a nice method to save power, because
the lower the CPU clock speed, the less power the CPU consumes.

Note that this driver doesn't automatically change the CPU
clock speed, you need to either enable a dynamic cpufreq governor
(see below) after boot, or use a userspace tool.

For details, take a look at <file:Documentation/cpu-freq>.

If in doubt, say N.
Type : boolean
Prompt: CPU Frequency scaling
Defined at drivers/cpufreq/Kconfig:3
Location:
-> Power management and ACPI options
-> CPU Frequency scaling


Lo raro es que el warning dice:
turn it off, e.g. by chosing the 'performance' governor.

y yo ya lo tengo seleccionado:

[*] CPU Frequency scaling
<*> CPU frequency translation statistics
[*] CPU frequency translation statistics details
Default CPUFreq governor (performance) --->
-*- 'performance' governor
<*> 'powersave' governor
<*> 'userspace' governor for userspace frequency scaling
<*> 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
x86 CPU frequency scaling drivers --->

Default CPUFreq governor (performance) --->
(X) performance
( ) powersave
( ) userspace
( ) ondemand
( ) conservative

Pero si se desactiva:
CPU Frequency scaling

entonces ninguna de las opciones que le siguen estará disponible incluida:
Default CPUFreq governor (performance) --->

¿Alguna idea?
Subir
#3 por monon el 18/01/2012
Hola Nuli. En lo referente al escalado de frecuencia de la CPU el instalador solo te "advierte" de que jack va a funcionar mejor si el reloj de la CPU está fijo en su frecuencia "nominal" y no usa la opcion "on demand" para el ahorro de energia.

La mejor manera de "fijar" esa frecuencia sin tener que recompilar el kernel ni cosas raras es hacer uso de cpufreq-selector. (si no recuerdo mal las nuevas versiones de Ubuntu han cambido esta por otra aplicacion de nombre parecido)

cpufreq-selector -c X -g Y


X seria el numero de procesador ( por cada nucleo deberaś ejecutarlo )
e Y podrian ser "performance" u "ondemand" , etc

Un script que ejecute el propio qjackctl en "Scripts a ejecutar al iniciar el Servidor" de la pestaña Opciones de su Setup es realmente util para ello así que te dejo el enlace a un hilo que contiene el script por si te interesa (post #8 )

http://www.hispasonic.com/foros/efectos-plugins-ardour-monitorizacion-hardware/387822
Subir
#4 por catorze el 18/01/2012
monon escribió:
(si no recuerdo mal las nuevas versiones de Ubuntu han cambido esta por otra aplicacion de nombre parecido)


Seria cpufreq-set añado que la primera cpu seria 0 donde pone X, puedes ver la información con cpufreq-info
Salut!
Subir
#5 por Pablo_F el 18/01/2012
Alguien escribió:
no lanzo jack desde un terminal sino con qjackctl... entonces simplemente la introduzco en el campo "Ruta del servidor" ...


Eso es, las opciones generales, o sea, las no específicas para cada "backend" (o "driver" en qjackctl) y que no aparecen como seleccionables en qjackctl, se pueden poner de esta forma. Echa un vistazo a "man jackd". La mayoría son seleccionables desde qjackctl pero no todas. Yo suelo usar "--sync" en jackd2.
Subir
--424305--
#6 por --424305-- el 18/01/2012
#3 #4 #5 Gracias a los tres. Efectívamente el script vale pero habría que modificar la orden de la línea 42 del script:
cpufreq-selector -c $NCPU -g $1 &

por esta otra como dijo catorze:
cpufreq-set -c $NCPU -g $1 &

e instalar el paquete cpufrequtils que a su vez instala libcpufreq0. Y aquí viene lo bueno ¿Funciona?
La respuesta es no, se requieren privilegios de administrador. Lo cual lleva al paquete cpufreqd el cual como se puede adivinar por cómo acaba es un demonio ... otro demonio, esto parece el infierno :) Me parece que me voy a estar quietecito y si como Pablo dice, o eso me pareció entender, puedo meter '-c h' a los parametros de arranque en qjackctl pues virgencita que me quede como estoy, y ya veremos cuando recompile el kernel 3.2.1 si hago como dice la ayuda del kernel: If in doubt, say N. y otra cosa que me quito de enmedio ¿Cómo lo veis?

Nuli escribió:
Kernel Help escribió:
CONFIG_CPU_FREQ:

CPU Frequency scaling allows you to change the clock speed of
CPUs on the fly. This is a nice method to save power, because
the lower the CPU clock speed, the less power the CPU consumes.

Note that this driver doesn't automatically change the CPU
clock speed, you need to either enable a dynamic cpufreq governor
(see below) after boot, or use a userspace tool.

For details, take a look at .

If in doubt, say N.
...
Subir
--424305--
#7 por --424305-- el 18/01/2012
ummm, no sé, no sé, pensando en el tema de ahorrar energía y no tener las CPUs al máximo he mirado el demonio cpufreqd y parece sencillo.

Consta de un fichero de configuración /etc/cpufreqd.conf en donde se establecen unos "perfiles" de consumo y unas "reglas" de aplicación a esos perfiles. Esas reglas pueden hacerse aplicar según programas. Por ejemplo:

....

[Profile]
name=Performance High
minfreq=100%
maxfreq=100%
policy=performance
#exec_post=echo 8 > /proc/acpi/sony/brightness
[/Profile]

...

# use performance mode if I'm watching a movie
# I don't care for batteries!
# But don't heat too much.
[Rule]
name=Movie Watcher
programs=xine,mplayer,gmplayer
battery_interval=0-100
acpi_temperature=0-60
cpu_interval=0-100
profile=Performance High
[/Rule]


lo único que he hecho es añadir al final de este último:
programs=xine,mplayer,gmplayer,qjackctl

y relanzar el demonio:
sudo /etc/init.d/cpufreqd restart
* Restarting CPU Frequency daemon cpufreqd

¿Cómo lo veis ahora? Me daba un poco de "cosa" eliminar de ACPI esa opción ya que hablo de un portátil, o sea consumo de batería y hablo también de recalentamiento de CPU.
Subir
#8 por Pablo_F el 19/01/2012
Alguien escribió:
Y aquí viene lo bueno ¿Funciona?
La respuesta es no, se requieren privilegios de administrador.


Una forma de hacer funcionar un comando "sudado" en un script de usuario es configurarlo para que no pida contraseña, en el archivo /etc/sudoers. Aquí hay una propuesta:

http://semicorchux.blogspot.com/2010/08/scripts-en-jack-control.html


Alguien escribió:
Consta de un fichero de configuración /etc/cpufreqd.conf.....

¿Cómo lo veis ahora?


Aprendiendo de tus experimentos :cascos:

Saludos, Pablo
Subir
#9 por monon el 20/01/2012
Nuli escribió:
fichero de configuración /etc/cpufreqd.conf


Buena solucion Nuli
Subir
--424305--
#10 por --424305-- el 20/01/2012
#8 #9 Arggg! No tan bueno! :triston:

Resulta que el demonio cpufreqd no está funcionando como yo esperaba. Al lanzar qjackctl yo esperaba que el demonio pasara el governor a performance y no, no lo hace hasta que lo reinicio manualmente:
$ sudo /etc/init.d/cpufreqd start
[sudo] password for mybody:
* Starting CPU Frequency daemon cpufreqd [ OK ]

entonces sí pasa a performance, o sea, que vuelvo a donde estaba:
Ruta del servidor /usr/bin/jackd -c h

de momento y demonios al infierno. Ya veremos si dejo frita la opción del Kernel "CPU Frecuency scaling" en mi siguiente compilación del núcleo.

Gracias de todas formas compañer@s linuxer@s por vuestras sugerencias

P.D. Releyendo veo que este tema ya fué discutido de #9 en adelante aquí:
http://www.hispasonic.com/foros/ardour3-beta1/386052
Subir

Hilos similares

Respuesta rápida

Regístrate o para poder postear en este hilo