GUIDE 05
Tasa de sondeo y límites de la medición — ¿Qué precisión tiene tu récord de CPS?
Cómo influyen en la medición del CPS la tasa de sondeo del ratón, la marca de tiempo de los eventos del navegador, la repetición de teclas y la frecuencia de refresco del monitor, y cuáles son sus límites.
El CPS medido en una web no se basa en «el instante en que el dedo pulsa el botón», sino en «el instante en que el navegador recibe el evento de entrada». Entre uno y otro hay varias etapas, y cada una introduce un pequeño error. Aquí explicamos qué influye y qué no.
El camino de la pulsación hasta la pantalla
- El interruptor se cierra y el firmware del ratón confirma la pulsación tras aplicar el debounce.
- El ratón informa de su estado al ordenador a intervalos fijos (sondeo).
- El sistema operativo recibe la entrada y se la pasa al navegador.
- El navegador crea el evento, le asigna una marca de tiempo y lo entrega al script de la página.
Tasa de sondeo (polling rate)
La tasa de sondeo es el número de veces por segundo que el ratón informa de su estado. El intervalo entre informes es 1000 ÷ tasa de sondeo (ms).
| Tasa de sondeo | Intervalo entre informes |
|---|---|
| 125 Hz | 8 ms |
| 500 Hz | 2 ms |
| 1000 Hz | 1 ms |
Apenas afecta al número de clics. Aunque hagas 20 clics por segundo, el intervalo entre ellos es de 50 ms, mucho más largo que el intervalo de informe de 125 Hz. Eso sí, la marca de tiempo de cada clic puede retrasarse en múltiplos del intervalo de informe, de modo que la distribución de intervalos puede difuminarse unos pocos ms.
Precisión temporal del navegador
CPS Meter usa la marca de tiempo del evento (event.timeStamp) y performance.now(). Por motivos de seguridad, los navegadores a veces reducen a propósito la precisión de estas marcas, así que lo correcto es leer los intervalos en unidades de unos pocos ms en lugar de fiarse de los decimales. Aunque la página esté ocupada con una tarea pesada, la marca de tiempo del evento corresponde al momento en que llegó la entrada, así que no se pierde ninguna pulsación en el recuento.
La frecuencia de refresco del monitor no influye
Sea de 60 Hz o de 240 Hz, la frecuencia de refresco solo cambia la rapidez con la que se muestran los números. El recuento de pulsaciones va por separado de la actualización de la pantalla, así que la frecuencia de refresco no altera el récord.
Inalámbrico y Bluetooth
Con una conexión inalámbrica, los informes a veces llegan agrupados o con retraso. El número de clics suele mantenerse, pero la distribución de intervalos puede ensancharse. Si quieres comparar con precisión, compara resultados con el mismo tipo de conexión.
Repetición de teclas
Si mantienes pulsada una tecla del teclado, el sistema operativo genera la misma entrada repetidamente a intervalos fijos. CPS Meter comprueba el indicador de repetición del evento (KeyboardEvent.repeat) y, además, no cuenta una nueva pulsación si antes no se ha registrado que la tecla se soltó. Por eso, mantener la tecla pulsada no sube el récord.
Cómo se tratan el inicio y el final
- Inicio: la primera pulsación arranca el temporizador, así que el tiempo de reacción queda fuera.
- Final: se descartan las pulsaciones que llegan después de que haya pasado exactamente la duración elegida. Aunque «Fin de la prueba» aparezca con algo de retraso en pantalla, el recuento se basa en la marca de tiempo del evento.
- Salida: si cambias de pestaña durante la prueba, el navegador puede ralentizar el temporizador, así que la prueba se cancela.
Conclusión
Para ver tendencias a base de repetir la prueba varias veces, la medición en la web es más que suficiente. Una diferencia de alrededor de 0.1 CPS puede deberse al equipo o al estado de la conexión, así que compara varias veces en las mismas condiciones.