Câu hỏi Transatlantic ping nhanh hơn gửi một pixel tới màn hình?


John Carmack  đã tweet,

Tôi có thể gửi gói IP đến châu Âu nhanh hơn tôi có thể gửi pixel tới màn hình. Làm thế nào f'd lên là?

Và nếu đây không phải là John Carmack, tôi sẽ gửi nó dưới "mạng nội bộ ngớ ngẩn".

Nhưng đây là John Carmack.

Làm thế nào điều này có thể đúng?

Để tránh các cuộc thảo luận về chính xác những gì có ý nghĩa trong tweet, đây là những gì tôi muốn được trả lời:

Mất bao lâu, trong trường hợp tốt nhất, để nhận một gói IP duy nhất được gửi từ một máy chủ ở Hoa Kỳ đến một nơi nào đó ở châu Âu, đo từ thời điểm phần mềm kích hoạt gói, đến mức nó nhận được bởi một phần mềm ở trên trình điều khiển cấp?

Mất bao lâu, trong trường hợp tốt nhất, để một pixel được hiển thị trên màn hình, được đo từ điểm mà phần mềm ở trên mức trình điều khiển thay đổi giá trị của pixel đó?


Thậm chí giả định rằng kết nối xuyên Đại Tây Dương là cáp quang quang tốt nhất mà tiền có thể mua, và John đang ngồi ngay bên cạnh ISP của mình, dữ liệu vẫn phải được mã hóa trong một gói IP, nhận được từ bộ nhớ chính qua thẻ mạng của mình , từ đó thông qua một sợi cáp trong tường vào một tòa nhà khác, có thể sẽ nhảy qua một vài máy chủ ở đó (nhưng hãy giả sử rằng nó chỉ cần một rơle đơn), được photon hóa trên đại dương, chuyển đổi thành xung điện bởi một máy quang, và cuối cùng được giải thích bởi một card mạng khác. Hãy dừng lại ở đó.

Đối với pixel, đây là một từ máy đơn giản được gửi qua khe PCI Express, được ghi vào bộ đệm, sau đó được chuyển sang màn hình. Thậm chí kế toán cho thực tế là "pixel đơn" có thể dẫn đến toàn bộ bộ đệm màn hình được truyền tới màn hình, tôi không thấy cách này có thể chậm hơn: không giống như các bit được chuyển "từng cái một" - đúng hơn là chúng là các xung điện liên tiếp được truyền mà không có độ trễ giữa chúng (phải không?).


798
2018-05-01 09:30


gốc


Hoặc là anh ấy điên hoặc đây là một tình huống bất thường. Do tốc độ ánh sáng trong chất xơ, bạn không thể nhận dữ liệu từ Mỹ đến châu Âu trong vòng chưa đầy 60 mili giây một chiều. Thẻ video của bạn đặt toàn bộ màn hình pixel mới sau mỗi 17 mili giây. Ngay cả với bộ đệm đôi, bạn vẫn có thể đánh bại gói này một chút. - David Schwartz
@DavidSchwartz: Bạn đang nghĩ về GPU trong sự cô lập. Có, GPU có thể thực hiện rất nhiều công việc trong vòng chưa đầy 60ms. Nhưng John đang phàn nàn về toàn bộ chuỗi, liên quan đến màn hình. Bạn có biết độ trễ có liên quan bao nhiêu không, từ dữ liệu hình ảnh được truyền đến màn hình và cho đến khi nó được hiển thị trên màn hình? Con số 17ms là vô nghĩa và không liên quan. Có, GPU chuẩn bị một hình ảnh mới cứ 17 ms một lần, và có, màn hình sẽ hiển thị một hình ảnh mới sau mỗi 17 ms. Nhưng điều đó không nói gì về việc hình ảnh đã được hiển thị trong bao lâu trước khi nó được hiển thị - jalf
Anh ấy là một lập trình viên trò chơi, và anh ta nói nhanh hơn so với tôi có thể gửi pixel tới màn hình... vì vậy có lẽ tài khoản cho sự chậm trễ rendering đồ họa 3D? Mặc dù điều đó sẽ khá thấp trong hầu hết các trò chơi điện tử; họ tối ưu hóa cho hiệu suất, không phải chất lượng. Và tất nhiên, có rất cơ hội cao anh ấy chỉ phóng đại (ở đó, tôi đã nói rõ ràng, hạnh phúc?). - Bob
Tới Best Buy một thời gian và xem tất cả các bộ TV, nơi họ có tất cả các điều chỉnh để cùng một kênh trong nhà. Ngay cả các bộ giống hệt nhau rõ ràng sẽ có độ trễ đáng chú ý (có thể là phần tư thứ hai) so với nhau. Nhưng ngoài ra, phải thực hiện toàn bộ chu trình "vẽ" bên trong giao diện người dùng (điều này có thể liên quan đến việc tái hiển thị một số "lớp" của hình ảnh). Và, tất nhiên, nếu hiển thị 3-D hoặc một số như vậy là bắt buộc làm tăng thêm độ trễ đáng kể. - Daniel R Hicks
Có rất nhiều chỗ cho đầu cơ trong câu hỏi, tôi không nghĩ rằng có một câu trả lời hoàn hảo trừ khi bạn biết những gì J.Carmack đã thực sự nói về. Có lẽ tweet của anh ta chỉ là một số nhận xét ngu ngốc về một số tình huống anh gặp phải. - Baarn


Các câu trả lời:


Thời gian để gửi một gói tin đến một máy chủ từ xa là một nửa thời gian được báo cáo bởi ping, để đo thời gian chuyến đi khứ hồi.

Màn hình tôi đang đo là Sony HMZ-T1 màn hình gắn đầu được kết nối với PC.

Để đo thời gian chờ hiển thị, tôi có một chương trình nhỏ nằm trong vòng quay vòng bỏ phiếu cho bộ điều khiển trò chơi, làm rõ với màu khác và trao đổi bộ đệm bất cứ khi nào nút được nhấn. Tôi quay video hiển thị cả bộ điều khiển trò chơi và màn hình với máy ảnh 240 fps, sau đó đếm số khung hình giữa nút đang được nhấn và màn hình bắt đầu hiển thị thay đổi.

Bộ điều khiển trò chơi cập nhật ở 250 Hz, nhưng không có cách nào trực tiếp để đo độ trễ trên đường dẫn đầu vào (tôi muốn tôi vẫn có thể nối dây tới cổng song song và sử dụng trong / ra hướng dẫn Sam). Là một thử nghiệm kiểm soát, tôi thực hiện thử nghiệm tương tự trên màn hình CRT cũ với đường hồi chiều dọc 170 Hz. Aero và nhiều màn hình có thể giới thiệu thêm độ trễ, nhưng trong điều kiện tối ưu bạn sẽ thường thấy một sự thay đổi màu sắc bắt đầu tại một số điểm trên màn hình (vô hiệu hóa vsync) hai khung 240 Hz sau khi nút bị hỏng. Có vẻ như có khoảng 8 mili giây độ trễ đi qua USB HID chế biến, nhưng tôi muốn làm móng tay này tốt hơn trong tương lai.

Nó không phải là không phổ biến để xem màn hình LCD máy tính để bàn có 10 + 240 Hz khung để hiển thị một sự thay đổi trên màn hình. Sony HMZ trung bình khoảng 18 khung hình, hoặc 70+ tổng số mili giây.

Điều này là trong một thiết lập multimonitor, do đó, một vài khung hình là lỗi của người lái xe.

Một số độ trễ là nội tại đối với một công nghệ. Các tấm LCD mất 4-20 mili giây để thực sự thay đổi, tùy thuộc vào công nghệ. Chip duy nhất LCoS hiển thị phải đệm một khung hình video để chuyển đổi từ các pixel được đóng gói thành các mặt phẳng màu tuần tự. Màn hình raster Laser cần một số lượng đệm để chuyển đổi từ raster trở về các mẫu quét qua lại. Màn hình 3D stereo phân vùng theo tuần tự hoặc trên cùng không thể cập nhật nửa khung giữa.

OLED hiển thị phải nằm trong số những điều tốt nhất, như được minh họa bởi eMagin Z800, có thể so sánh với CRT 60 Hz ở độ trễ, tốt hơn bất kỳ CRT không phải CRT nào khác mà tôi đã thử nghiệm.

Hiệu suất kém trên Sony là do kỹ thuật phần mềm kém. Một số tính năng truyền hình, như nội suy chuyển động, yêu cầu phải đệm ít nhất một khung và có thể hưởng lợi nhiều hơn. Các tính năng khác, như menu nổi, chuyển đổi định dạng, bảo vệ nội dung, v.v., có thể được thực hiện theo cách trực tuyến, nhưng cách dễ dàng là chỉ đệm giữa mỗi hệ thống con, có thể chồng lên đến nửa tá khung trong một số hệ thống .

Điều này là rất đáng tiếc, nhưng nó là tất cả fixable, và tôi hy vọng sẽ dựa vào các nhà sản xuất màn hình nhiều hơn về độ trễ trong tương lai.


1306
2018-05-01 14:24



Tôi không muốn khóa câu trả lời này cho các nhận xét ngoài chủ đề quá mức. Tất cả chúng tôi đều vui mừng rằng John đã cung cấp câu trả lời này, nhưng chúng tôi không cần 25 ý kiến ​​tất cả thể hiện lòng biết ơn, sự hoài nghi hoặc sự phấn khích của họ. Cảm ơn bạn. - nhinkle♦
Trình kích hoạt USB của bạn có thể đang chạy dưới dạng thiết bị USB tốc độ thấp (khung xe buýt ở 125usec) gây ra sự chậm trễ tối thiểu 8ms (vấn đề phần cứng). Có thể thử bàn phím PS2 thay thế? - Boris
@ Marcus Lindblom bằng cách săn lùng, bạn có nghĩa là đọc? Tôi nghĩ trong trường hợp này, làm sao ông đã nhận được số của mình cũng quan trọng như số lượng - sự hoài nghi liên quan đến các tweet sẽ không được giải quyết bằng cách trích dẫn một số khác. Ngoài ra, bối cảnh sẽ giúp - ông bị trực tiếp bực tức nhất bởi màn hình cụ thể này với phần mềm tối ưu của nó. - Jeremy
Có vẻ như bạn đang nói rằng khi các nhà sản xuất LCD cho biết, thời gian phản hồi 5ms, có thể mất thời gian để bảng điều khiển thay đổi, nhưng màn hình cho biết thêm một chút thời gian đệm và xử lý tín hiệu trước khi thực sự thúc đẩy LCD. Điều đó không có nghĩa là các nhà sản xuất đang xuất bản thông số kỹ thuật sai lệch / gây nhầm lẫn? - psusi
@psusi doubledeej.blogspot.com/2009/07/…  zdnet.com/blog/ou/…  gizmodo.com/5669331/why-most-hardware-specs-are-total-bullshit  maximumpc.com/article/features/display_myths_shattered - Dan Neely


Một số màn hình có thể có độ trễ đầu vào đáng kể

Kế toán cho một kết nối internet tuyệt vời so với một màn hình crappy và card video kết hợp nó có thể

Nguồn:

Console Gaming: Yếu tố Lag • Trang 2

Vì vậy, tại 30FPS, chúng tôi nhận được hiệu suất cơ sở là tám khung hình / 133 mili giây, nhưng trong   clip thứ hai nơi trò chơi đã giảm xuống 24FPS, có một   12 khung hình / 200ms chậm trễ giữa tôi kéo cò và Niko   bắt đầu hoạt hình bắn súng shotgun. Đó là 200ms cộng với   chậm trễ bổ sung từ màn hình của bạn. Ouch.

Hiển thị có thể thêm 5-10ms khác

Vì vậy, một giao diện điều khiển có thể có tối đa 210ms tụt hậu

Và, theo bình luận của David, trường hợp tốt nhất nên là khoảng 70ms để gửi một gói


67
2018-05-01 10:26



-1 Tôi không nghĩ rằng John Carmack sử dụng màn hình hay thẻ video crappy. Vui lòng tham khảo khiếu nại của bạn với các nguồn đáng tin cậy. - Baarn
Xin lỗi nhưng tôi vẫn không thấy điều này thực sự trả lời câu hỏi. Các báo nói về "kéo kích hoạt" và điều này ngụ ý nhiều công việc hơn, như trong xử lý đầu vào, dựng hình cảnh vv, hơn là chỉ gửi một điểm ảnh cho màn hình. Ngoài ra, tốc độ phản ứng của con người là tương đối tệ hại so với hiệu suất phần cứng hiện đại. Thời gian giữa chàng trai Suy nghĩ anh ta bóp cò, và thực sự kéo nó, cũng có thể là nút cổ chai. - Konrad Rudolph
Bài viết được liên kết cho thấy tác giả của phân tích này đã mua một thiết bị đặc biệt có thể cho bạn biết chính xác khi nào nút được nhấn, vì vậy tôi không nghĩ chúng chỉ là những con số. - Melikoth
@KonradRudolph: Nhận thức là những thứ khá kỳ lạ. Tôi đọc một bài báo một thời gian trước đây về một bộ điều khiển thử nghiệm mà đọc xung trực tiếp ra khỏi tủy sống. Mọi người sẽ cảm thấy rằng máy tính đã hành động trước khi họ đã nhấp vào, mặc dù đó là lệnh thần kinh của chính họ để bấm vào nó đang phản ứng lại. - Zan Lynx
@Zan Lynx: Đây là một hiệu ứng đã biết. Google cho "Sự chậm trễ nửa giây của Benjamin Libet". Ý thức của con người đòi hỏi thời gian xử lý đáng kể. Tất cả mọi thứ mà suy nghĩ đang xảy ra bây giờ thực sự đã xảy ra trong quá khứ. Tất cả các giác quan của bạn đều mang lại cho bạn một "trải nghiệm đa phương tiện tích hợp" của một sự kiện từ nửa giây trước. Hơn nữa, các sự kiện dường như là "đóng dấu thời gian" của bộ não. Một kích thích não trực tiếp phải được trì hoãn liên quan đến một sự kích thích xúc giác để cho các đối tượng để báo cáo các cảm giác như đồng thời! - Kaz


Nó rất đơn giản để chứng minh độ trễ đầu vào trên màn hình, chỉ cần dính một màn hình LCD bên cạnh một crt và hiển thị một đồng hồ hoặc một hình ảnh động làm đầy màn hình và ghi lại nó. Người ta có thể đứng sau một giây. Nó là cái gì mà các nhà sản xuất LCD đã thắt chặt lên kể từ khi game thủ, vv đã nhận thấy nó nhiều hơn nữa.

Ví dụ. Video Youtube: Thử nghiệm Lag đầu vào Vizio VL420M


33
2018-05-03 10:31