Między klawiszem a ekranem: w tym stare komputery są szybsze od nowych pecetów

Mam to dręczące uczucie, żekomputery z których dzisiaj korzystam są powolniejsze niż te, zktórych korzystałem jako dziecko – tak zaczyna swój ostatniblogowy wpis nowojorskiinżynier Dan Luu, ekspert od naprawdę niskopoziomowegoprogramowania. Czysty absurd, biorąc pod uwagę to, że mówimy osprzęcie sprzed ponad 30 lat, miliony razy przecież powolniejszym.A jednak przeprowadzone testy empiryczne potwierdziły to dręcząceuczucie. Stary Apple IIe z 1983 roku okazał się w pewnej kwestiiponad sześciokrotnie szybszy od nowoczesnego desktopowego PC zprocesorem Core i7-7700K. Co poszło nie tak?

Obraz

Sam pomysł, by porównywaćmuzealny sprzęt komputerowy z maszynami, które pod względemwydajności biją na głowę to, co wyobrażali sobie w latach 80pisarze science fiction może wydawać się niedorzeczny. Apple IIemiało procesor taktowany z częstotliwością 1 MHz, podczas gdyprocesory współczesnych pecetów to częstotliwości rzędu 4 GHz.A jednak prosty test, mierzący opóźnienie między naciśnięciemklawisza a wyświetleniem znaku na ekranie potwierdził przeczucianowojorskiego inżyniera. Stare komputery w tej kategorii byłyniezwykle szybkie, reagowały na działania użytkownika w mgnieniuoka.

Poniższa tabela przedstawiazmierzone za pomocą kamery poklatkowej opóźnienia na liniiklawiatura-ekran w komputerach wyprodukowanych między 1977 a 2017rokiem. Tam gdzie zastosowano różne systemy operacyjne na tym samymsprzęcie, zaznaczono to wytłuszczonym drukiem. Co sprawiło, żestary sprzęt Apple znalazł się tak wysoko?

Obraz

Odpowiedź wcale nie jest trudna. Toprostota. Stary komputer Apple’a po prostu czeka na wprowadzenieznaku. Jego klawiatura jest odpytywana 556 razy na sekundę nie przezjakiś skomplikowany mikrokontroler, lecz prosty czip, któregołączne opóźnienia nie przekraczają 8 ms. Po drugiej stroniestary kineskopowy wyświetlacz z odświeżaniem 60 Hz dorzuca do tegokolejne 8 ms. Na cały potok renderowania grafiki przez kontrolerwideo (24×40 znaków poprzez zespolony sygnał wizji) pozostaje 14ms. Cały zarządzający tym kod nie musi dbać o bufory,przełączanie między procesami, konteksty interfejsu –najwyraźniej jego zawierającemu 3500 tranzystorów mikroprocesorowiten czas wystarczy na obsłużenie interakcji z użytkownikiem.

Po drugiej stronie mamywspółczesnegopeceta o całkiem dobrych parametrach. Jego klawiatura jestodpytywana w najlepszym razie 167 razy na sekundę z wykorzystaniemmikrokontrolera w klawiaturze mającego około 80 tysięcytranzystorów. Już ot samo ma generować opóźnienie rzędu 18 ms.Po drugiej stronie jest wyświetlacz LCD, który choć nominalniemoże oferować szybkość reakcji na poziomie 1 ms, w rzeczywistościprzy odświeżaniu ekranu 144 Hz na wyświetlenie znaku potrzebujeokoło 14 ms. A między klawiaturą a ekranem mamy system ogromnejzłożoności, obsługujący setki jednocześnie uruchomionychprocesów i przeróżne interfejsy sprzętowe. Nawet tam, gdziepróbuje się zwiększyć wydajność takiego nowoczesnego systemu,robi się to kosztem dalszego wzrostu jego złożoności. W efekciewidzimy sytuację, w której na tym samym sprzęcie skomplikowanyWindows generuje opóźnienia o 30 ms wyższe niż architektonicznieprostszy Linux.

Jak zauważa Dan Luu, bardzo trudnojest się tej złożoności pozbyć. Widać to w porównaniuwspomnianych klawiatur: potężny nowoczesny mikrokontroler okazujesię być powolniejszy niż prosty czip logiki klawiatury. Czemu więcwspółcześni producenci czipów nie korzystają z takich czipówjak kiedyś robiło to Apple (czy inni producenci 8- i 16-bitowychkomputerów)? Odpowiedź jest prosta: stosując mikrokontroler możnałatwo modyfikować funkcje klawiatury i przerzucić zagadnieniemodyfikacji ze sprzętu na oprogramowanie – a to obniża kosztprodukcji. Programista jest znacznie droższy niż sprzęt.

Dlatego w większości wypadkówniemożliwe będzie dla współczesnych systemów pokonanie Apple IIe– jeśli opóźnienia samej ich klawiatury będą większe, niżcałego starego komputera. Oczywiście dzisiaj już możliwe jestdobranie takiej konfiguracji sprzętu i oprogramowania, że powstaniemaszyna o opóźnieniach interakcji z interfejsem bliskich tym starymmaszynom. Na liście znajdziemy peceta z 2014 roku z procesoremHaswell-E i wyświetlaczem 165 Hz, w którym latencja jest mniejszaniż w stareńkim Commodore PET.

Applied Sciences Group: High Performance Touch

Zdaniem nowojorskiego inżyniera,wychodzimy wreszcie z mrocznych wieków powolnych interfejsówniskiej rozdzielczości, a to otwiera drogę do zupełnie nowych klasaplikacji i podniesienia doświadczenia użytkownika do poziomów,jakie dziś oferują tylko profesjonalne tablety Apple (nowy iPad Proz piórkiem i 10-calowym wyświetlaczem HiDPI to również opóźnienierzędu 30 ms). Ma to duże znaczenie, ponieważ nie jest wcaleprawdą, jakoby ludzie nie odróżniali od siebie opóźnień poniżejprogu 100 milisekund – w prostych zadaniach przeciętny użytkownikjest w stanie odróżnić opóźnienia różniące się od siebie onawet 2milisekundy.

Źródło artykułu: www.dobreprogramy.pl
Wybrane dla Ciebie
Możesz stracić fanpage. Wyjątkowo autentyczny atak
Możesz stracić fanpage. Wyjątkowo autentyczny atak
Fałszywy SMS. Oszuści podszywają się pod ZUS
Fałszywy SMS. Oszuści podszywają się pod ZUS
Żabka stworzy kartę płatniczą. Wybrała dużego partnera
Żabka stworzy kartę płatniczą. Wybrała dużego partnera
PKO Bank Polski wydał komunikat. Uważaj, kto dzwoni
PKO Bank Polski wydał komunikat. Uważaj, kto dzwoni
Nowości w mObywatelu. Dodano trzy funkcje
Nowości w mObywatelu. Dodano trzy funkcje
Ważny komunikat Alior Banku. Dotyczy wszystkich klientów
Ważny komunikat Alior Banku. Dotyczy wszystkich klientów
Uznański-Wiśniewski: To AI wybiera, co warto przesłać z orbity
Uznański-Wiśniewski: To AI wybiera, co warto przesłać z orbity
Czarna lista w telefonie. Jak zablokować niechciane połączenia?
Czarna lista w telefonie. Jak zablokować niechciane połączenia?
Nowość w Zdjęciach Google. Wygodniejsza edycja fotografii
Nowość w Zdjęciach Google. Wygodniejsza edycja fotografii
Atak hakerski na Booking. Zdobyli dane klientów
Atak hakerski na Booking. Zdobyli dane klientów
Luka 0-day w Adobe Reader. Wystarczy spreparowany PDF
Luka 0-day w Adobe Reader. Wystarczy spreparowany PDF
Zaktualizuj Windowsa: wydano kwietniowe poprawki
Zaktualizuj Windowsa: wydano kwietniowe poprawki
ZATRZYMAJ SIĘ NA CHWILĘ… TE ARTYKUŁY WARTO PRZECZYTAĆ 👀