Snaplytics JS Tests

ทดสอบความหน่วงเมาส์

วัดว่าการคลิกเมาส์ของคุณตอบสนองได้รวดเร็วเพียงใด การคลิกแต่ละครั้งจะถูกประทับเวลาสองครั้ง — ครั้งแรกโดยเบราว์เซอร์เมื่ออีเวนต์ถูกสร้างขึ้น และอีกครั้งเมื่อตัวจัดการอีเวนต์ของหน้านี้ทำงาน — เพื่อแสดงความล่าช้าในการส่งอีเวนต์ ในขณะที่การทดสอบปฏิกิริยาแบบสั้น ๆ จะบันทึกว่าคุณคลิกได้เร็วแค่ไหนเมื่อพื้นที่ทดสอบพลิกสถานะ เลื่อนเมาส์ไปเหนือพื้นที่ทดสอบเพื่อดูอัตราอีเวนต์แบบเรียลไทม์ที่เบราว์เซอร์ได้รับ

พร้อม
อัตราอีเวนต์
events/s
เลื่อนเมาส์ไปเหนือพื้นที่ทดสอบ
อีเวนต์ → ตัวจัดการ
ms
การคลิกล่าสุด

คลิกเพื่อเริ่มการทดสอบ

เมื่อพื้นที่ทดสอบพลิกสถานะ ให้คลิกให้เร็วที่สุดเท่าที่ทำได้ การคลิกแต่ละครั้งจะถูกบันทึกความล่าช้าจากอีเวนต์ไปยังตัวจัดการอีเวนต์ด้วย

ดีที่สุด
ค่าเฉลี่ย
ล่าสุด
จำนวนครั้ง
0

เลเทนซีการคลิกล่าสุด

ยิ่งต่ำยิ่งดี
ผลการทดสอบเลเทนซีการคลิกของคุณจะปรากฏที่นี่

การทดสอบนี้ทำงานอย่างไร

อีเวนต์ของพอยน์เตอร์ทุกครั้งจะมี timeStamp ที่ถูกตั้งค่าไว้ในขณะที่เบราว์เซอร์สร้างมันขึ้นมา เมื่อการคลิกของคุณมาถึงตัวจัดการอีเวนต์ เราจะอ่านค่า performance.now() แล้วนำมาลบกันเพื่อแสดงความล่าช้าจากอีเวนต์ไปยังตัวจัดการอีเวนต์ — เวลาที่การคลิกของคุณใช้เดินทางผ่านชั้นการรับข้อมูลและลูปอีเวนต์ก่อนที่หน้านี้จะสามารถตอบสนองได้ นอกจากนี้ พื้นที่ทดสอบยังทำการทดสอบปฏิกิริยาแยกต่างหาก โดยจะรอเป็นช่วงเวลาแบบสุ่ม พลิกสถานะ แล้วบันทึกช่วงเวลาระหว่างการพลิกสถานะนั้นกับการคลิกของคุณเป็นค่าเลเทนซีการคลิกที่คุณสามารถนำไปเปรียบเทียบระหว่างแต่ละครั้งได้ ตัวเลขที่แสดงการเคลื่อนไหวจะนับว่ามีอีเวนต์การเคลื่อนที่ของพอยน์เตอร์มาถึงกี่ครั้งต่อวินาที ซึ่งสะท้อนว่าเบราว์เซอร์ได้รับแจ้งว่าเคอร์เซอร์ของคุณเคลื่อนที่บ่อยเพียงใด

สาเหตุของเลเทนซีเมาส์

  • การหน่วงสัญญาณสวิตช์ (Debounce): เฟิร์มแวร์จะรอสักสองสามมิลลิวินาทีหลังการกดเพื่อยืนยันว่าหน้าสัมผัสมั่นคงแล้ว ซึ่งเพิ่มความล่าช้าเล็กน้อยแบบคงที่ให้กับการคลิกทุกครั้ง
  • อัตราการโพล (Polling rate): เมาส์ที่ 125 Hz จะรายงานผลได้อย่างมากทุก 8 ms ส่วนเมาส์ที่ 1000 Hz จะรายงานทุก 1 ms ดังนั้นอัตราที่ต่ำกว่าอาจทำให้การคลิกถูกกักไว้จนกว่าจะถึงรอบการรายงานถัดไป
  • การเชื่อมต่อ: USB แบบมีสายเป็นการเชื่อมต่อโดยตรง ส่วนไร้สายจะเพิ่มการส่งผ่านคลื่นวิทยุ และลิงก์ 2.4 GHz ที่กำลังต่ำหรือมีสัญญาณรบกวนหนาแน่นอาจเพิ่มความสั่นไหว (jitter) แม้ว่าดองเกิลรุ่นใหม่ที่ดีจะใกล้เคียงกับแบบมีสายมากก็ตาม
  • การจัดตารางของ USB และระบบปฏิบัติการ: โฮสต์จะโพลอุปกรณ์ตามตารางเวลาที่กำหนด จากนั้นระบบปฏิบัติการต้องปลุกทำงาน จัดคิว และส่งอีเวนต์ไปยังเบราว์เซอร์
  • เบราว์เซอร์และการโหลดหน้าเว็บ: เธรดหลักที่ยุ่งหรือหน้าเว็บที่หนักอาจทำให้ตัวจัดการอีเวนต์ของคุณทำงานช้าลง ซึ่งนี่คือสิ่งที่ตัวเลขความล่าช้าจากอีเวนต์ไปยังตัวจัดการอีเวนต์สะท้อนออกมาโดยตรง

เลเทนซีเมาส์เทียบกับอินพุตแล็กและอัตราการโพล

ทั้งสามค่านี้วัดจุดที่แตกต่างกันในห่วงโซ่เดียวกัน อัตราการโพลคือความถี่ที่เมาส์รายงานตำแหน่งและสถานะปุ่มกด มีหน่วยเป็นเฮิรตซ์ — เครื่องมือทดสอบอัตราการโพลของเมาส์ (Mouse Polling Rate Tester) จะประมาณค่านี้จากช่วงห่างของอีเวนต์การเคลื่อนที่ ส่วนเลเทนซีเมาส์ที่วัดในหน้านี้คือความเร็วที่การคลิกกลายเป็นอีเวนต์ที่หน้าเว็บสามารถจัดการได้ ในขณะที่อินพุตแล็กคือความล่าช้าแบบครบวงจรตั้งแต่การกระทำของคุณจนถึงการเปลี่ยนแปลงที่มองเห็นได้บนหน้าจอ ซึ่งรวมถึงเวลาตอบสนองและอัตรารีเฟรชของจอแสดงผลด้วย — เครื่องมือทดสอบอินพุตแล็ก (Input Lag Tester) ครอบคลุมวงจรปฏิกิริยาบวกการแสดงผลนั้น อัตราการโพลที่สูงช่วยลดสาเหตุหนึ่งของเลเทนซีเมาส์ได้ แต่เลเทนซีและอินพุตแล็กแบบครบวงจรยังขึ้นอยู่กับระบบปฏิบัติการ เบราว์เซอร์ และจอมอนิเตอร์ของคุณด้วย

วิธีลดเลเทนซีเมาส์

  • ใช้การเชื่อมต่อแบบมีสาย หรือดองเกิล 2.4 GHz คุณภาพดีที่มีเลเทนซีต่ำและวางไว้ใกล้กับเมาส์ แทนที่จะใช้บลูทูธ
  • เพิ่มอัตราการโพลในซอฟต์แวร์ของเมาส์ (500 หรือ 1000 Hz) หากเซนเซอร์และการเชื่อมต่อรองรับได้อย่างเสถียร
  • ลดเวลาการหน่วงสัญญาณ (debounce) ของการคลิกในซอฟต์แวร์ของผู้ผลิต หากมีตัวเลือกนี้ โดยชั่งน้ำหนักกับความเสี่ยงที่จะเกิดการคลิกซ้ำสองครั้งโดยไม่ตั้งใจ
  • อัปเดตไดรเวอร์และเฟิร์มแวร์ให้เป็นเวอร์ชันล่าสุด และปิดแอปพลิเคชันเบื้องหลังที่ใช้ CPU หรือบัส USB มากเกินไป
  • เสียบเมาส์เข้ากับคอมพิวเตอร์โดยตรง แทนที่จะผ่านฮับที่ไม่มีไฟเลี้ยงหรือสายต่อขยายยาว ๆ

เครื่องมือที่เกี่ยวข้อง