- Windows NT 3.51 çalıştıran eski bir bilgisayar ile Windows 11 çalıştıran yeni bir bilgisayarın hızını karşılaştıran bir videoyu Twitter'da paylaştı ve video epey viral oldu
- İkisi de aynı işlemleri yapıyor: Komut İstemi, Gezgin, Not Defteri ve Paint uygulamasını açıp kapatmak
- Eski bilgisayarda bunlar anında gerçekleşirken, yeni bilgisayarda daha yavaş
- Modern bilgisayar kullanıcı arayüzü gecikmesi çok kötü durumda ve giderek daha da kötüleşiyor
- Karşılaştırmada kullanılan donanımların masaüstü ve dizüstü (Surface Go) olması nedeniyle adil olmadığı yönünde eleştiriler var
- K7-600 makinesine Windows 2000 kurup, Mac Pro 2013'e (6 çekirdekli Xeon + 32GB) Windows 11 yükleyerek karşılaştırmayı yeniden yaptı ama sonuç benzerdi
Bilgisayarların gelişimi
- 2000'lerden bu yana pek çok alanda ilerleme oldu: etkileyici grafikler, yüksek çözünürlüklü monitörler, ultra hızlı ağlar, gerçek zamanlı video düzenleme gibi
- I/O tarafında da büyük ilerleme kaydedildi; eski sistemlerde disk I/O her zaman en zayıf halkaydı
- Disketler güvenilmez ve yavaştı, CD/DVD daha güvenilir olsa da yine yavaştı, HDD ise birçok şey için darboğazdı
- Rastgele I/O fiziksel sınırlarına ulaşmaya başlamıştı
- SSD'lerin ortaya çıkıp masaüstlerinde de kullanılmaya başlanması bu rastgele I/O sorununu çözmeye başladı
- Bir anda her şey hızlandı: açılış, oyun yükleme, çok sayıda dosya içeren klasörleri açma...
- Yeni donanım kurmak kolaylaştı, kablosuz bağlantılar yaygınlaştı, metinlerin ve uygulamaların uluslararasılaştırılması gelişti (Unicode'un kolay ya da ucuz olmadığını kabul ediyor)
- Pek çok açıdan durum iyileşti ve her zamankinden daha güçlü hale geldik. Aksi halde 2000'lerde hayal bile edilemeyecek kadar küçük telefonlarda ML kullanan fotoğraf işleme gibi işleri yapamazdık
Korkunç gecikme süreleri
- Ama bu ilerlemelerin hiçbiri, kullanıcı arayüzü gecikmesinin bugün neden bu kadar aşırı yavaş olduğunu açıklamıyor
- Donanımdaki ilerleme bu durumu iyileştirmiş olmalıydı
Örnekler
- Not Defteri yakın zamana kadar yerel bir uygulamaydı ve hızlı açılıyordu; ancak UWP uygulaması olarak yeniden yazılınca yavaşladı. Hem de çok yavaşladı ama hâlâ özellikleri yetersiz. Kullanıcıya hiçbir fayda sağlamayan bir yavaşlama
- Windows Terminal eskisine göre çok daha iyi, ama belirgin biçimde ağır. PowerShell eklendiğinde, üst düzey donanım kullanmıyorsanız yeni bir terminal penceresinin açılması birkaç saniye sürebiliyor
- macOS, Windows'tan daha iyi olsa da onda da sorunlar var. Ayarlar penceresini açma konusunda eski makineler çok daha hızlı
- Linux muhtemelen bu sorunlardan en az etkilenen platform. 11 yıllık bir PC'de bile 2023 Nisan'ında çıkan Fedora Linux 38 iyi çalışıyor. Ama bu da bir yanılsama; Linux için özel geliştirilmemiş modern uygulamaları çalıştırdığınızda uygulama açılış süreleri uzuyor ve genel performans düşüyor
- Beni en çok şaşırtan şey, 2009'da Google'a katıldığım zamandı
- O dönemde Google Arama ve Gmail mükemmel performanslarıyla örnek gösteriliyordu
- Ama şirket içinde kullanılan kurum içi komut satırı araçlarının ne kadar yavaş olduğunu görünce büyük şaşkınlık yaşadım
- Ne pahasına olursa olsun web uygulamalarını sürekli öne itmelerinin bugün içinde bulunduğumuz durumu yarattığını düşünüyorum
Nedenler
- Bütün bunlar neden oldu? Buna "bloat" demek kolay ama tanımlaması zor
- Çünkü bloat meşrulaştırılabilir: herkesin bloat hakkında düşündüğü şey farklıdır
- Yavaşlığa yol açan şey "öncelikler"
- Oyunlar, video dönüştürme gibi kritik durumlar dışında artık kimse performansı önceliklendirmiyor
- İnsanların ve şirketlerin öncelik verdiği şey "geliştirici zamanı": Rust ve Electron
- Her platform için ayrı yerel uygulama geliştirmek tekrar iş olduğu için Electron kullanılıyor
- Kullanımı kolay ama masaüstü gecikmesine büyük etkisi var
- 1Password ve Spotify örneklerinde olduğu gibi, birleşik bir deneyim sunmak ve maliyeti azaltmak için Electron'a yeniden yazıldılar
- Ama maliyet düşürme şirketler için, kullanıcılar için değil
- Bu maliyet azaltma, her gün kullanan bizlere kesilen bir vergi gibi
- Gecikmeyi artıran bir diğer karar da managed ve interpreted dillerin büyük ölçekte benimsenmesi
- JDK/CLR uzun süre çalışan süreçleri optimize etmede iyi olsa da hızlı başlangıç süresi onların güçlü olduğu bir alan değil
Tek seferlik iyileştirmeler eridi gitti (One-off improvements eaten away)
- Son olarak donanım gelişimine dönüp karamsar bir notla bitirelim
- SSD'nin getirdiği özel iyileşme tek seferlik bir değişimdi
- HDD'ler hızlanmaya devam etti ama masaüstlerinin ihtiyaç duyduğu hızlı rastgele I/O'yu sağlayamadı
- SSD'ye geçiş bambaşka düzeyde bir iyileşme getirdi ama bu avantajdan sadece bir kez yararlanılabildi
- Buna benzer devrimsel bir deneyim sunacak başka bir teknoloji yok
- Dolayısıyla bu yeni teknolojinin getirdiği faydalar dikkatsiz yazılımlar yüzünden aşındığında yeniden başladığımız noktaya dönmüş olacağız
- Elbette SSD'ler giderek hızlanıyor ama HDD'den SSD'ye geçişteki kadar dramatik bir fark yaratmıyor
- SSD'siz güncel bir Windows ya da Mac sürümü kullanarak bunu doğrudan görebilirsiniz
- Bu yüzden Apple Silicon konusunda endişeleniyorum
- M1'in çıktığı dönemdeki olağanüstü performansı, çok uzun pil ömrünü ve fansız sessizliği hatırlıyor musunuz?
- Eğer bu dikkatsiz gidişatı sürdürürsek bu avantajlar da yok olacak ve o noktada iş işten geçmiş olacak
- Mevcut uygulamalara performans iyileştirmesi eklemek teknik olarak çok zor, kurum içinde bunu önceliklendirmek ise neredeyse imkânsız
- Peki bilgisayar mimarları başka bir devrimsel teknolojik değişimle bizi kurtarabilir mi? Ben buna bel bağlamak istemiyorum. Böyle bir değişim mümkün olmayabileceği için değil, aslında buna ihtiyaç olmaması gerektiği için
GN⁺ tarafından özetlenen sürüm (kayıt için bırakıyorum)
- Twitter dizisi, eski bilgisayarlarla yeni bilgisayarların tepkiselliğini karşılaştırıyor ve 8.8 bin beğeni aldı.
- Videoda eski bilgisayardaki uygulamalar anında açılırken, yeni bilgisayardaki uygulamalarda belirgin gecikme görüldü.
- Yazar, donanım ilerlemesine rağmen modern bilgisayarların kullanıcı arayüzü gecikmesinin neden daha kötü hale geldiğini sorguladı.
- Karşılaştırmadaki kusurlar düzeltilince de aynı sonuç ortaya çıktı.
- Grafikler, yüksek çözünürlüklü monitörler ve hızlı ağlar gibi teknolojik ilerlemeler tartışıldı.
- Modern bilgisayarların kullanıcı arayüzü gecikmesinin çok kötü olduğu ve giderek kötüleştiği öne sürüldü.
- Windows, macOS ve Linux'taki yavaş uygulamalar örnek olarak verildi.
- Ağır yazılımlar, framework'ler ve managed diller gecikme sorununun nedenleri arasında gösterildi.
- Dikkatsiz yazılımlar nedeniyle SSD'nin avantajlarının aşınması ve Apple Silicon'un geleceğiyle ilgili kaygılar dile getirildi.
- Mevcut uygulamalarda performansı iyileştirmek teknik ve kurumsal açıdan zordur.
- Bilgisayar mimarlarına göre devrimsel bir teknolojik değişim bizi kurtarmayabilir.
- Gecikme sorununa uzaktan çalışma çözüm değildir.
- 90'lar ve 2000'lerdeki açık kaynak geliştirme zaten tamamen dağıtık ve asenkron çalışmayı mümkün kılmıştı.
- Bilgisayar gecikmesi en az 1977'den beri bir sorun.
- Dan Luu'nun bulduğu gecikme açısından en iyi bilgisayar 1983 tarihli bir ürün ama modern iş yüklerine cevap veremiyor.
11 yorum
Performans yerine bakım kolaylığını seçtiler ve bunun maliyetini donanımın gelişimiyle telafi ederiz düşüncesi galiba bizi buraya kadar getirdi.
2010 MacBook Air aşırı yavaşladığında bir şekilde Snow Leopard kurmuştum; tarif edilemeyecek kadar hızlıydı. Tabii ki günlük kullanım yapmıyorum ama..
Artık şirketlerin performansı önceliklendirmediği fikri gerçekten hissediliyor.
Ama maliyet düşürme şirket için, kullanıcı için değil
kısmı insanı gerçekten çok düşündürüyor.
Teşekkürler. Kendimden bir şeyler bularak okudum.
Windows masaüstünde bağlam menüsünü açınca, ister 20 yıl önce olsun ister bugün, kum saatine bakıp yavaşlığını hissediyorum (ilkinden sonra biraz düzeliyor ama yine de çok rahatsız edici).
Donanımın kesinlikle hızlandığı açık, ama yazılım için aynısını söylemek zor gibi görünüyor.
Benzer bir şeyden bahsederken sadece hafif uygulamaları bir araya getiren bir site görmüş gibiyim (sanırım Linux tarafındaydı)... ama dönüp arayınca bulamadım haha
Teşekkür ederek okudum.
Önemli olan ne?
Yalnızca WinAPI ile uygulandığı dönemdeki arayüzler temiz ve çok hızlıydı.
Günümüzde ise dağınık UI framework'leri ve bir de web tabanlı uygulamalar var... Web motorlarının ya da framework motorlarının çalışması için çok fazla kaynak gerekiyor.
GN⁺'ta yayımlanan bir yazıydı; yapay zeka özetleriyle anlamanın zor göründüğünü düşündüğüm için ben yeniden derledim.
Bakın, demiştim size haha...
Sanki Lee Sedol kazanmış gibi bir his... bizim iş güvencemiz.... şimdilik sorun yoktur herhalde? hıçkırık
Hacker News görüşleri