¿De que factores depende la latencia?

patchbay Baneado
#1 por patchbay el 08/01/2010
¿Hasta que punto la latencia de un interface de audio depende de las características técnicas del propio Interface y hasta que punto de las características técnicas del ordenador al que está conectado?

¿Son esas dependencias perfectamente cuantificables o hay una buena parte de lotería a la hora de saber como se va a comportar determinado interface de audio al ser conectado a determinado sistema informático?.

Me imagino que en toda esa "lotería" tendrá que ver y mucho el diseño de los drivers por parte del fabricante del Interface. ¿Que fabricantes desarrollan mejores drivers?


Todas estas preguntas me han surgido porque he estado probando una tarjeta PCI MOTU 424 en varios ordenadores con unas diferencias de rendimiento verdaderamente asombrosas entre ellos, diferencias que no creo que justifique la velocidad del procesador sino mas bien el diseño de los drivers.

En estos momentos está funcionando sin un solo click o pop con un buffer de solo 32 samples y una latencia de solo medio milisegundos en un i7 con Windows 7 mientras que en un Core2Duo había clicks y pops para aburrir con 512 samples de buffer. ¿Justifica esa diferencia solo el procesador o es una cuestión del diseño de los drivers de la MOTU? ¿PUede ser también un problema del diseño del bus PCI express del ordenador con Core2Duo?
Subir
xaviandreu
#2 por xaviandreu el 08/01/2010
Pues quizas hasta los drivers de la controladora del PCI Express influyan e incluso el rendimiento del propio bus.
Yo tambien he visto que podia apretar mas el buffer con ordenadores mas potentes con una motu traveler.
Subir
--38357--
#3 por --38357-- el 08/01/2010
Hay algo que no entiendo, por que si dices que tomaste una 424 y la probaste en diferentes equipos, por que piensas que podria ser debido al driver, si utilizando la misma iterfaz el driver seria el mismo en todas las pruebas. No entiendo de donde te surge la duda. La interfaz es un elemento hardware y tiene una latencia 0 (no es 0 en realidad pero para efectos practicos se puede hablar de que es 0) Y es al pasar por el sistema operativo y el software en donde aparece la latencia que no es mas una manera por software de darle tiempo al procesador de pensar almacenando la informacion en un buffer, si el buffer es mas grande sera mayor el tiempo, si es pequeño el tiempo sera menor, pero el procesador se vera superado y comenzara a perder informacion y apareceran los chasquidos, como hay procesadores mas rapidos que otros, un mismo tamaño de buffer no significa la misma cantidad de latencia de un procesador a otro.

El driver que controla la tarjeta es el mismo, la tarjeta es la misma, Asio es un estandar asi que aunque hubieras cambiado de controlador Asio podriamos decir que es el mismo, el puerto PCIe tambien es un estandar por tanto sera el mismo en todos los casos, a mi me parece que eso es prueba suficiente de que el rendimiento corresponde en mayor parte a la plataforma, con esto me refiero a placa base (que lo que pueda influir a mi gusto es nada pero prefiero incluirla por que la manera en que el chipset utiliza las lineas PCIe puede cambiar de una compañia a otra), luego esta el procesador y por ultimo el DAW, que tan optimizado sea el DAW y que tan poderoso el procesador determinara la cantidad de latencia, para mi, haber probado la misma interfaz en diferentes plataformas es bastante ilustrativo al respecto, a mi por lo menos me queda claro que es asi con los datos que tu mismo entregas.

Ahora bien, si tienes la misma tarjeta, y le pides a diferentes grupos de programadores que elaboren los correspondientes drivers (que lo que hacen es explotar las funcionalidades del hardware y permitir su control) obviamente que existiran implementaciones mejores que otras, pero es un poco rebuscada la pregunta ya que estas hablando en base a una sola interfaz y no comparando diferentes interfaces, desarrolladas por diferentes compañias, y cullos drivers seran totalmente diferentes primero por que deberan explotar las funcionalidades de diferentes equipos y por que habran sido programados por diferentes equipos.

La latencia depende directamente casi en su totalidad del procesador, pero un driver puede estar optimizado de mejor o peor forma y puede penalizar el rendimiento, pero si haces ese tipo de comparativa, de llevar la misma interfaz y utilizando el mismo driver en todos los caso, el factor driver se anula y solo queda como factor determinante el procesador.

El bus PCI express es el mismo siempre, existe un chip que lo controla y este puede tener mayor o menor rendimiento en entregar los datos, pero, el chip pci express esta entregando la informacion en tiempo real (a una velocidad que para ti es instantanea, sin importar si el chip que controla el pci express no le saque el mejor partido, en este caso las velocidades son tan altas que puede hablarse de tiempo real), ahi no hay retardo, la latencia no nace ahi, la latencia es ocacionada por el software, al tener que realizar procesos sobre el audio y a la vez mantener una respuesta lo mas cercana al tiempo real, es en la comunicacion del softwara con el procesador en donde nacen los clicks.
Subir
EsperanzaGalera
#4 por EsperanzaGalera el 09/01/2010
La latencia no es tanto de la interfaz y su software (que, por supuesto, sí cuentan) como del ordenador que usas y su procesador. El procesador no es sólo su capacidad (2GB se va quedando corto), sino también su velocidad (a partir de 3GHz vas bien).
Subir
Hilos similares
Respuesta rápida

Regístrate o para poder postear en este hilo