34 Punkte von xguru 2023-06-29 | 11 Kommentare | Auf WhatsApp teilen
  • Ein Video, das die Geschwindigkeit eines alten Computers mit Windows NT 3.51 und eines neuen Computers mit Windows 11 vergleicht, wurde auf Twitter veröffentlicht und ging ziemlich viral
    • Beide führen dieselben Aktionen aus: Eingabeaufforderung, Explorer, Editor und Paint öffnen und schließen
    • Auf dem alten Computer geschieht das sofort, auf dem neuen ist es langsam
  • Die Latenz moderner Computer-Benutzeroberflächen ist sehr schlecht und wird immer schlimmer
  • Es gab Einwände, dass die für den Vergleich verwendete Hardware unfair sei, da ein Desktop und ein Laptop (Surface Go) verglichen wurden
  • Daraufhin wurde Windows 2000 auf einer K7-600-Maschine und Windows 11 auf einem Mac Pro 2013 (6-Core Xeon + 32 GB) installiert und erneut verglichen, aber das Ergebnis war ähnlich

Die Entwicklung des Computers

  • Seit den 2000ern gab es in vielerlei Hinsicht Fortschritte: beeindruckende Grafik und hochauflösende Monitore, ultraschnelle Netzwerke, Echtzeit-Videobearbeitung usw.
  • Auch bei I/O gab es große Fortschritte; auf alten Systemen war Disk-I/O immer der schwächste Punkt
    • Disketten waren unzuverlässig und langsam, CD/DVDs etwas verlässlicher, aber ebenfalls langsam, und HDDs waren bei vielem der Flaschenhals
    • Random I/O begann an physische Grenzen zu stoßen
  • Mit dem Aufkommen von SSDs und ihrem Einsatz auch auf Desktops begann sich dieses Random-I/O-Problem zu lösen
    • Plötzlich wurde alles schneller: Booten, Ladezeiten in Spielen, das Öffnen von Ordnern mit unzähligen Dateien usw.
  • Auch der Einbau neuer Hardware wurde einfacher, drahtlose Verbindungen wurden alltäglich, und Texte/Apps wurden internationalisiert (wobei anerkannt wird, dass Unicode weder einfach noch billig war)
  • In vielen Bereichen hat sich die Lage verbessert, und wir sind leistungsfähiger als je zuvor. Andernfalls wären Aufgaben wie ML-basierte Bildverarbeitung auf einem kleinen Handy, wie sie in den 2000ern undenkbar gewesen wären, nicht möglich

Schreckliche Latenz

  • Aber keiner dieser Fortschritte erklärt, warum die UI-Latenz heute so extrem langsam ist
  • Die Weiterentwicklung der Hardware hätte diese Situation eigentlich verbessern müssen

Beispiele

  • Editor war bis vor Kurzem eine native App und startete schnell, wurde dann aber als UWP-App neu geschrieben und dadurch langsamer. Enorm viel langsamer, aber funktional immer noch unzureichend. Eine Verlangsamung ohne jeden Nutzen für die Nutzer
  • Windows Terminal ist viel besser als früher, aber spürbar schwergewichtig. Wenn man PowerShell hinzufügt, kann es selbst auf guter Hardware mehrere Sekunden dauern, bis sich ein neues Terminalfenster öffnet
  • macOS ist besser als Windows, hat aber ebenfalls Probleme. Auf älteren Maschinen öffnet sich das Einstellungsfenster deutlich schneller
  • Linux ist davon vermutlich am wenigsten betroffen. Selbst auf einem 11 Jahre alten PC läuft Fedora Linux 38, veröffentlicht im April 2023, gut. Aber auch das ist nur eine Illusion: Wenn man moderne Apps ausführt, die nicht speziell für Linux entwickelt wurden, werden Startzeiten langsam und die allgemeine Performance schlechter
  • Am meisten schockiert hat mich, als ich 2009 bei Google anfing
    • Damals waren Google Search und Gmail für ihre herausragende Performance bekannt und galten als Vorbild
    • Umso schockierender war es zu sehen, wie langsam die intern verwendeten Inhouse-Kommandozeilenwerkzeuge waren
    • Ich denke, dass das ständige Durchdrücken von Web-Apps um jeden Preis zu der Situation beigetragen hat, in der wir heute sind

Ursachen

  • Warum ist das alles passiert? Es ist leicht, von "Bloat" zu sprechen, aber schwer, das genau zu definieren
    • Bloat kann gerechtfertigt sein: Jeder versteht darunter etwas anderes
  • Der eigentliche Grund für die Verlangsamung sind die "Prioritäten"
    • Außer in wichtigen Fällen wie Gaming oder Video-Transcoding setzt heute kaum noch jemand Performance an erste Stelle
    • Was Menschen und Unternehmen priorisieren, ist "Entwicklerzeit": Rust und Electron
  • Weil es doppelte Arbeit wäre, native Apps jeweils separat zu entwickeln, wird Electron verwendet
    • Das macht vieles einfacher, hat aber große Auswirkungen auf die Latenz von Desktop-Anwendungen
    • Wie bei 1Password oder Spotify wurden Apps für eine einheitliche Erfahrung und geringere Kosten in Electron neu geschrieben
    • Aber diese Kostensenkung dient den Unternehmen, nicht den Nutzern
    • Diese Kostensenkung ist eine Steuer, die denen auferlegt wird, die solche Software jeden Tag verwenden
  • Eine weitere Entscheidung, die die Latenz erhöht, ist die breite Akzeptanz von Managed- und Interpreted-Sprachen
    • JDK/CLR optimieren lang laufende Prozesse gut, aber schnelle Startzeiten gehören nicht zu ihren Stärken

Einmalige Verbesserungen sind wieder aufgezehrt worden (One-off improvements eaten away)

  • Zum Schluss noch ein pessimistischer Blick zurück auf die Hardware-Fortschritte
  • Die besondere Verbesserung durch SSDs war ein einmaliger Sprung
    • HDDs wurden zwar immer schneller, lieferten aber nicht das schnelle Random I/O, das Desktops brauchen
    • Der Wechsel zu SSDs brachte Verbesserungen in einer anderen Größenordnung, aber von diesem Vorteil konnten wir nur einmal profitieren
    • Es gibt keine andere Technologie, die eine ähnlich revolutionäre Erfahrung liefert
    • Wenn also die Vorteile dieser neuen Technik durch nachlässige Software wieder aufgezehrt werden, landen wir am Ende wieder am Ausgangspunkt
    • Natürlich werden SSDs immer schneller, aber sie bringen nicht mehr denselben gewaltigen Unterschied wie der Wechsel von HDD zu SSD
  • Wer eine aktuelle Version von Windows oder macOS ohne SSD benutzt, kann das selbst bestätigen
  • Deshalb macht man sich auch Sorgen um Apple Silicon
    • Erinnern Sie sich an die herausragende Performance, die extrem lange Akkulaufzeit und das geräuschlose Arbeiten ohne Lüfter beim Start des M1?
    • Wenn wir diesen nachlässigen Weg weitergehen, werden auch diese Vorteile verschwinden, und dann wird es zu spät sein
  • Die Performance bestehender Anwendungen zu verbessern, ist technisch sehr schwierig, und organisatorisch ist es fast unmöglich, dem Priorität zu geben
  • Kann uns also ein weiterer revolutionärer Technologiesprung der Computerarchitekten retten? Darauf würde ich mich nicht verlassen. Nicht weil so eine Veränderung unmöglich wäre, sondern weil wir sie eigentlich gar nicht brauchen

Von GN⁺ zusammengefasste Version (der Vollständigkeit halber belassen)

  • Ein Twitter-Thread zum Vergleich der Reaktionsfähigkeit alter und neuer Computer erhielt 8,8K Likes.
  • Im Video öffnen sich Apps auf dem alten Computer sofort, auf dem neuen gibt es deutliche Verzögerungen.
  • Der Autor stellt infrage, warum die Latenz moderner Benutzeroberflächen trotz Hardware-Fortschritten schlechter geworden ist.
  • Nach Korrektur der Mängel im Vergleich ergab sich dasselbe Resultat.
  • Technologische Fortschritte wie Grafik, hochauflösende Monitore und schnelle Netzwerke werden diskutiert.
  • Es wird behauptet, dass die Latenz moderner Computer-Benutzeroberflächen sehr schlecht ist und sich weiter verschlechtert.
  • Langsame Apps unter Windows, macOS und Linux werden als Beispiele genannt.
  • Als Ursachen für die Latenzprobleme werden schwere Software, Frameworks und Managed-Sprachen vorgeschlagen.
  • Es wird die Sorge geäußert, dass die Vorteile von SSDs durch nachlässige Software aufgehoben werden und Apple Silicon ein ähnliches Schicksal droht.
  • Performance-Verbesserungen bestehender Anwendungen sind technisch und organisatorisch schwierig.
  • Laut dem Computerarchitekten könnten revolutionäre technologische Veränderungen uns möglicherweise nicht retten.
  • Remote-Arbeit ist keine Lösung für das Latenzproblem.
  • Open-Source-Entwicklung in den 90ern und 2000ern ermöglichte bereits vollständig verteiltes und asynchrones Arbeiten.
  • Computerlatenz ist mindestens seit 1977 ein Problem.
  • Der Computer mit der laut Dan Luu besten Latenz stammt aus dem Jahr 1983, kann aber moderne Workloads nicht bewältigen.

11 Kommentare

 
nuthatch 2023-06-29

Vielleicht sind wir genau deshalb hier gelandet: Man hat sich für Wartbarkeit statt für Leistung entschieden und gedacht, die Kosten dafür ließen sich durch Fortschritte bei der Hardware ausgleichen.
Als mein MacBook Air von 2010 viel zu langsam geworden war, habe ich es irgendwie geschafft, Snow Leopard zu installieren, und es war unfassbar schnell. Natürlich nutze ich es nicht wirklich im Alltag, aber ...

 
googol 2023-06-29

Es kommt bei mir an, dass Unternehmen Leistung nicht mehr länger priorisieren.

 
anyjava 2023-06-29

Aber die Kostensenkung dient dem Unternehmen, nicht den Nutzern.

Dieser Punkt bringt einen wirklich zum Nachdenken.

 
edunga1 2023-06-29

Danke. Ich habe den Text mit viel Zustimmung gelesen.
Wenn ich auf dem Windows-Desktop das Kontextmenü öffne, ist es gefühlt heute wie vor 20 Jahren langsam, während ich auf die Sanduhr starre (nach dem ersten Mal geht es etwas besser, aber es stört mich trotzdem sehr).
Die Hardware wird eindeutig schneller, aber bei der Software scheint das nicht der Fall zu sein.

 
ruinnel 2023-06-29

Ich glaube, ich habe mal eine Seite gesehen, die in eine ähnliche Richtung ging und nur leichte Anwendungen gesammelt hat (vermutlich eher aus der Linux-Ecke) ... aber als ich sie dann tatsächlich gesucht habe, konnte ich sie nicht finden, haha

 
nicewook 2023-06-29

Danke, ich habe es mit Interesse gelesen.

 
iolothebard 2023-06-29

Was ist wirklich wichtig?

 
devjeonghwan 2023-06-29

Die Benutzeroberflächen aus der Zeit, als alles nur mit der WinAPI umgesetzt wurde, waren sauber und flott.
Heutzutage gibt es unübersichtliche UI-Frameworks und irgendwelche webbasierten Apps … Allein schon das Laden von Web-Engines oder Framework-Engines verschlingt viele Ressourcen.

 
xguru 2023-06-29

Das ist ein Beitrag, der auf GN⁺ veröffentlicht wurde. Da er sich mit einer KI-Zusammenfassung nur schwer verstehen ließ, habe ich ihn noch einmal selbst zusammengefasst.

 
botplaysdice 2023-06-30

Seht ihr, ich hatte doch recht, haha...

Das fühlt sich ein bisschen an wie damals, als Lee Sedol gewonnen hat ... unsere Job-Security ... noch ist es wohl okay, oder? schluchz

 
GN⁺ 2023-06-29
Hacker-News-Kommentare
  • Junge Nutzer haben in Software-Stacks keine echte Performance erlebt
  • Softwareingenieure arbeiten ineffizient und ignorieren Parallel Computing
  • Nichttechnische Nutzer kümmern sich nicht um langsames Computing
  • Sicherheitsmaßnahmen können die Latenz von Desktop-Apps beeinflussen
  • Unter macOS wurde die Grafikleistung durch Quartz Extreme und Metal verbessert
  • Software-Optimierung ist wichtig für Geschwindigkeit
  • Rust hat keine steile Lernkurve
  • Es ist wichtig, kleine Erfolge im Computing zu feiern
  • Wir sollten von unserer Hardware mehr erwarten
  • Dynamische UIs tragen zu schlechterer Performance bei
  • Linux läuft auf schwacher Hardware schnell, aber Cross-Platform-Apps haben schlechte Performance
  • Moderne Application-Frameworks können zu langsamen App-Startzeiten führen