Por qué las computadoras modernas luchan por igualar la latencia de entrada de un Apple IIe

Función AppleIIe

Actualización (25/5/2020): Este artículo tiene varios años, pero es uno de mis favoritos y uno de los temas más interesantes de los que hemos hablado. Hay un viejo dicho: 'Lo que crean los ingenieros de hardware, los ingenieros de software se lo quitan'. Esa no es la forma más justa de ver la situación: las computadoras modernas pueden hacermucho más que los antiguos, pero la lucha para que los sistemas respondan rápidamente mientras aumentan su complejidad no es una serie de triunfos continuos. Incluso las PC de gama alta luchan por ofrecer la latencia de las máquinas que ofrecían una fracción de su rendimiento.

La historia original continúa a continuación:

Comparar la latencia de entrada de una PC moderna con un sistema que tiene entre 30 y 40 años parece ridículo a primera vista. Incluso si la computadora en su escritorio o regazo no es particularmente nueva o muy rápida, todavía se registra mil veces más rápido que la tecnología de vanguardia de la década de 1980, con múltiples núcleos de CPU, bloques de decodificadores especializados y soporte para video resoluciones y niveles de detalle a la par con lo que la ciencia ficción de la época que había soñado. En resumen, pensaría que la comparación sería un reventón unilateral. En muchos casos lo es, pero no con los ganadores que cabría esperar.

Ingeniero Y luu Recientemente, sintió curiosidad por saber cómo se comparan varios dispositivos en términos de latencia de entrada. Llevaba una cámara de alta velocidad para medir el retraso de entrada en algunos de ellos porque este es el tipo de cosas increíbles que hacen a veces los ingenieros. Lo que encontró es bastante sorprendente, como se muestra en la siguiente tabla:

LatencyComparison

Datos y gráfico por Y luu

El sistema con la latencia de entrada más baja, la cantidad de tiempo entre el momento en que presionas una tecla y la pulsación de una tecla aparece en la computadora, es Apple IIe, a 30 ms. Un respetable tercer lugar es para un sistema Haswell-E con un monitor de 165Hz. #T se refiere a la cantidad de transistores en cada chip; la codificación por colores muestra que los chips con mayor número de transistores tienden a estar en sistemas con más latencia, y los sistemas más rápidos tienden a ser más antiguos que los más lentos.

Mejorar la frecuencia de actualización del monitor claramente ayuda; el mismo equipo Haswell-E tiene 90 ms menos de latencia de entrada en una pantalla de 165 Hz en comparación con una pantalla de 24 Hz. Si alguna vez ha utilizado una pantalla con una frecuencia de actualización de 30 Hz, es probable que haya visto esto; la diferencia entre 30Hz y 60Hz es fácilmente visible a simple vista. Pero claramente no hace toda la diferencia en sí mismo.

Luu ha estado analizando en profundidad la latencia desde varios ángulos y le recomendamos sus artículos sobre teclado y ratón latencia si desea realizar un seguimiento. En algunos casos, es literalmente imposible que un sistema ofrezca una latencia más baja que un Apple IIe porque la latencia del teclado solo puede ser superior al del sistema Apple. Además, los teclados para juegos pueden no ser más rápidos que los teclados normales, e incluso si lo son, la latencia media del teclado es lo suficientemente alta como para que 3,5 ms no mejore mucho la latencia de entrada total.

Por qué los sistemas modernos luchan por igualar a los antiguos

Esto se reduce a una sola palabra: Complejidad. A los efectos de esta comparación, no importa si usa macOS, Linux o Windows. Un Apple IIe con una ventana de terminal abierta y nada más está ahí, esperando una entrada. Su teclado está cableado para una tasa de sondeo efectiva de 556Hz y un chip personalizado para la entrada del teclado en lugar de sondear el teclado con un microcontrolador. Este video, del Grupo de Ciencias Aplicadas de Microsoft, analiza por qué es importante la entrada de baja latencia.

Una manzana IIe no es Manejo de sofisticados comandos multitarea. No se trata de hacer malabares con subprocesos en segundo plano ni de tratar con varias aplicaciones que no están diseñadas para ser conscientes (o ser cuidadosas) unas de otras. No se trata de sondear una gran variedad de dispositivos que van desde controladores de audio y de red hasta GPU y almacenamiento discretos. El sistema operativo Apple IIe no utiliza un administrador de ventanas de composición, lo que agrega latencia. Este artículo, por Pavel Fatin, es un desglose en profundidad del procesamiento de latencia y analiza cuánto retraso agrega cada paso en un sistema moderno, desde el escaneo del teclado hasta la salida final.

Tipómetro-1

Ejecuté esta prueba en SublimeText 2, no en PowerShell, así que no la compare con los resultados anteriores. ¿Una cosa que ilustra? Las tasas de actualización realmente importan. Los dos primeros resultados son a 60 Hz, el tercero a 24 Hz.

También debe tenerse en cuenta que la velocidad de entrada de texto puede variar de un terminal a otro. PowerShell es ahora el terminal predeterminado de Windows 10, y la velocidad de entrada de texto en PowerShell es ... mala. Escribo mis historias de forma predeterminada en SublimeText, que tiene poco o ningún retraso observable. PowerShell, por el contrario, es tan lento que puede percibir una brecha entre lo que está escribiendo y cuándo aparece (aunque no particularmente grande).

De cualquier manera, este artículo es un ejemplo interesante de cómo, a pesar de los innumerables avances, la entrada de baja latencia sigue siendo un desafío. La complejidad suele ser algo muy bueno, pero pagamos una penalización de rendimiento por ello.

Copyright © Todos Los Derechos Reservados | 2007es.com