마우스 지연 시간 테스트
마우스 클릭의 반응 속도를 측정해 보세요. 각 클릭은 두 번 타임스탬프가 찍힙니다 — 이벤트가 생성될 때 브라우저가 한 번, 이 페이지의 핸들러가 실행될 때 한 번 — 이를 통해 이벤트 전달 지연을 보여주며, 짧은 반응 테스트는 패드가 바뀔 때 얼마나 빠르게 클릭할 수 있는지 기록합니다. 패드 위로 마우스를 움직여 브라우저가 수신하는 실시간 이벤트 속도를 확인해 보세요.
클릭해서 시도 시작
패드가 바뀌면 최대한 빠르게 클릭하세요. 모든 클릭은 이벤트-핸들러 지연도 함께 기록됩니다.
최근 클릭 레이턴시
낮을수록 좋음이 테스트의 작동 방식
모든 포인터 이벤트에는 브라우저가 이벤트를 생성한 순간에 설정된 timeStamp가 담겨 있습니다. 클릭이 핸들러에 도달하면 performance.now()를 읽어 두 값의 차이를 계산해 이벤트-핸들러 지연을 표시합니다 — 이는 클릭이 입력 스택과 이벤트 루프를 거쳐 이 페이지가 반응하기까지 걸린 시간입니다. 이와 별도로 패드는 반응 테스트를 실행합니다: 무작위 간격을 기다렸다가 상태를 전환하고, 그 전환과 클릭 사이의 간격을 클릭 레이턴시 수치로 기록해 시도마다 비교할 수 있게 합니다. 움직이는 수치는 매초 도착하는 포인터 이동 이벤트의 개수를 세어, 브라우저가 커서 이동을 얼마나 자주 전달받는지를 보여줍니다.
마우스 레이턴시의 원인
- 스위치 디바운스: 펌웨어는 누름 접점이 안정적인지 확인하기 위해 몇 밀리초를 기다리며, 이는 모든 클릭에 작지만 고정된 지연을 추가합니다.
- 폴링 레이트: 125 Hz 마우스는 최대 8ms마다, 1000 Hz 마우스는 1ms마다 상태를 보고하므로, 폴링 레이트가 낮으면 다음 보고 시점까지 클릭이 지연될 수 있습니다.
- 연결 방식: 유선 USB는 직접 연결되지만, 무선은 무선 신호 홉이 추가되며 저전력이거나 혼잡한 2.4 GHz 대역은 지터를 유발할 수 있습니다. 다만 우수한 최신 동글은 유선에 가까운 성능을 보입니다.
- USB 및 OS 스케줄링: 호스트는 정해진 주기로 장치를 폴링하며, 이후 운영체제는 이벤트를 깨워서 큐에 넣고 브라우저로 전달해야 합니다.
- 브라우저 및 페이지 부하: 메인 스레드가 바쁘거나 페이지가 무거우면 핸들러가 실제로 실행되는 시점이 지연될 수 있으며, 이는 바로 이벤트-핸들러 수치가 포착하는 부분입니다.
마우스 레이턴시 vs 입력 지연 vs 폴링 레이트
이 세 가지는 같은 연쇄 과정에서 서로 다른 구간을 측정합니다. 폴링 레이트는 마우스가 위치와 버튼 상태를 헤르츠 단위로 얼마나 자주 보고하는지를 나타내며, 마우스 폴링 레이트 테스터는 이동 이벤트 간격을 통해 이를 추정합니다. 여기서 측정하는 마우스 레이턴시는 클릭이 페이지가 처리할 수 있는 이벤트로 바뀌기까지 걸리는 속도입니다. 입력 지연은 사용자의 동작부터 화면에 표시되는 변화까지의 전체 종단 간 지연으로, 디스플레이 자체의 응답 속도와 주사율까지 포함합니다 — 입력 지연 테스터는 이 반응과 디스플레이를 모두 포함한 과정을 다룹니다. 높은 폴링 레이트는 마우스 레이턴시의 한 원인을 줄여주지만, 레이턴시와 종단 간 입력 지연은 OS, 브라우저, 모니터에도 좌우됩니다.
마우스 레이턴시를 줄이는 방법
- 블루투스 대신 유선 연결을 사용하거나, 마우스 가까이에 배치한 고품질 저지연 2.4 GHz 동글을 사용하세요.
- 센서와 연결이 안정적으로 지원한다면 마우스 소프트웨어에서 폴링 레이트를 500Hz 또는 1000Hz로 높이세요.
- 제조사 소프트웨어에 해당 옵션이 있다면 클릭 디바운스 시간을 낮추되, 더블클릭 오작동 위험과 균형을 맞추세요.
- 드라이버와 펌웨어를 최신 상태로 유지하고, CPU나 USB 버스를 과도하게 점유하는 백그라운드 앱을 종료하세요.
- 전원이 없는 허브나 긴 연장선을 거치지 말고 마우스를 컴퓨터에 직접 연결하세요.
