В софте все всрато и становится еще всратее
Приветствую, хабравчане!
Глава 1 — Нытье про то, что раньше было лучше
Десяток лет читаю Хабр, в основном разработка, программирование, старое железо и посты с адовым рейтингом. Видел несколько постов об ожирении сайтов, софта. О разочаровании в программировании с 2000+ постов. И пост, что в софте все ок, но никто не доволен или как оно там. А не важно. Хочу поделиться своими мыслями и наблюдениями на этот счет.
Ниже размещена картинка с ПК которые у меня были, не все, парочку ноутов я просто не помню. Эволюция их производительности, специально выделил производительность на одно ядро.
Оставлю ссылку на сайт. https://www.chaynikam.info/
Ниже я привел таблицу роста производительности в сравнении с Pentium 166 MMX.
Процессор | Баллы | Pentium 166 MMX |
Ryzen 5 3500U | 3574 | 49,6 |
Pentium 2020m | 2512 | 34,9 |
Athlon II X4 640 | 2317 | 32,2 |
Athlon 64 3000+ | 903 | 12,5 |
Duron 800 | 215 | 3,0 |
Pentium 166 MMX | 72 |
Конечно сравнение не совсем корректное, но общая оценка прироста производительности за 20 лет вырисовывается.
И что мы видим? Ryzen 5 обгоняет Pentium 166 в 50 раз. Уверен, что эту цифру можно смело умножать на 2 или на 3. Так как не учитываются спец возможности, архитектуры, конвейер и т.д
Мне таки есть, что сказать. На первом пентиуме решались офисные задачи, просмотр фильмов и игр. И даже о ужас интернет. Конечно, в лоб сравнивать некорректно. Так как увеличились разрешения экранов, стриминг видео, веб усложнился это не просто текст, а приложения выполняющиеся в браузере. Но с другой стороны, все процы 10+ лет, содержать графические ядра с ускорением видео высокой четкости, за графику отвечает он же, процу не нужно пережевывать пиксели ему лишь требуется пнуть видеокарту с нужными данными, общая производительность помогает перемалывать лярды инструкций в секунду. Но… все всрато. Софт который притормаживал на первом пентиуме, аналог его в 21 веке притормаживает на Ryzen 5. Сайты перегружены js«ом. Уверен нет смысла ругать браузер, он лишь интерпретатор всех этих говен, которые наплодили разработчики. Фреймворк фреймворком погоняет. И нет я не безумец отказываться от них, я за использование легких фреймворков. Если в мире веб программирования это вообще возможно. Ну не могут современные сайты тормозить, нету у них на это права. Явно, в цепочке технология→инструмент→разработка, что то не так. Или во всех сраз.
Возможно сам HTML и его дум дерево, не позволяет быстро работать. Сам js не содержит тех возможностей, которые бы позволили его быстро парсить и выполнять.
Вспомним игры Doom и Quake. И их софт рендер, который позволял на первом пентиуме в разрешении 800×600 играть с комфортом. Чем занимался процессор, рендер 3D графики, обсчет столкновений, геймлей и т.д И что вы хотите мне сказзать, что это несравнимо по объемам и сложностью с современным сайтом? Для того что бы вывести красивую интерактивную страницу на js фреймворке, нужны лярды инструкции? Вы серьезно? Даже графику рисует видеопроцессор, проц занимается только парсингом и исполнением js говен, а вам все мало.
Глава 10 — Что то там про JS и AVX100500++
По сути да, средняя страница содержит js, css, html, React, Angular, главное не запутаться в верссии новых фреймворков. Новые фреймворки на подходе чикичик и в прод. Он делает то же самое, но зато у него свой своя красивая страничка в инете. Которые нужно не просто распарсить, а построить адовый граф, выполняя позиционирование элементов по css настройкам и выполнение js. Это лярды лярдов инструкций. Страница выглядит простенько, возможно минималистично, но за ней стоят миллионы строк кода, браузера которые нужно исполнить.
Я не представляю какую магию делают разработчики гугл хрома, что бы разрабатывать свой браузер, с 1000+ стандартами веба. Плюс ко всему, нужно не просто показывать сайт, но, что бы js выполнялся быстро.
Возможно пришло время пересмотреть веб стандарты. Разработать эффективный веб, с нуля. Где для вывода страниц не нужны sse1234 и AVX256, 1024, 4096 инструкции. Без них i7 не тащит. Возможно это WebAssembly. Посмотрим естественный отбор в софте. Победит бабло и легаси. Так как экономика первична.
Глава 11 — о богоподобной Windows
Перейдем к винде. Да на моем личном ноутбуке установлена Windows и Lubuntu.
К линуксу притензий ни каких, работает быстро, памяти особо не потребляет. Моментальная отзывчивость интерфейса и программ. И это я замечу на терабайтном hdd. Да знаю, что ssd лучший вариант и решит многие проблемы с долгой загрузкой и запуском, программ и служб. Но винда у меня стоит на этом же hdd и мне есть что сказать по этому поводу. Это очень всрато. Всрато настолько, что всратее уже не куда. Но тадам, вышла windows 11 и мне есть и по ней что сказать. Пока Windows 10.
Здраствуй Windows 10. Квадратный ты мой. Прошел я с тобой путь от Windows 3.11. Но, то что ты делаешь сейчас это беда. System частенько любит нагрузить проц и жесткий диск. 100500+ важных системных служб, без них не обойтись, такое чувство что майнят по очереди.
Глава — 100 Иллюстрации + буквы на кириллице
Приведу пример.
Скачивал Visual Studio Community, в настройках специально указал, сначала все скачать потом ставить. И что бы вы думали? Вот скрин, что творится при простом скачивании
Узел службы локальной системы грузит проц на 36% и сам инсталятор на 17% итого округлим 50% загрузки. Так начинаем считать. 4 ядра и 8 потоков. То есть просто скачивание грузит 2 ядра процессора и 4 потока. Проц минут 15 грел воздух больше чем на половину, только что бы скачать файлы. Да ладно. И да эта картинка полностью олицетворяет мое удивление.
Сколько нужно ресурсов, что бы запустить Windows 95 в эмуляторе и в нем игру Fallout 2? Барабанная дробь, столько же, сколько при скачивании Visual Studio. Задачи похожи сами понимаете.
И так во всем современном софте. Простые вещи, к которым мы привыкли, просто греют проц. Какой то неведомый инпут лаг. Периодическое зависание кнопки пуск, или точнее плитки со значком в левом нижнем углу, часто срабатывает не с первого раза.
Глава 101 — Pentium 4
И те сотни служб, периодически сливающие информацию обо мне, и мучающие ноутбук. Везде инпут лаг. Заходишь в настройки лагает, хочешь сменить разрешение шуршит винт. Это же не старый мой винт на 400 мб, который стоял в 386 ПК.
Теперь перейдем к нашей стильной, модной молодежной Windows 11. О да бери меня милый. Стоп у тебя установлен TPM модуль 2.0 Нет. Извините ваш процессор с овер ядер выпущенный пару лет назад не поддерживается. Да мы понимаем, что ваш проц тянет Cyberpank 2077, но это игрушки. А мы предлагаем совершенно новую, неповторимую, ось с лучшим интерфейсом и всем ворохом говна, который мы перепилили или не допилили или просто наклали на изменения и совместимость.
Падре твой выход.
Для того что бы ты мог запускать, свои проги, игрульки, инструменты разработки, нужно 4 гига. 4 гига на старте + дрова + твои проги =, а не офигели ли вы?
Сколько жрет озу, проводник Windows 10?
Кхе кхе
47 мегобайта. Сколько на плойке 2 было озу. Хм 32 метра. Проводник там не заведется)) Windows 95 весила 50 мегов и содержала проводник, почему содержала он там и сейчас есть, озу требовала 4 или 8 мб.
Наслаждайтесь.
Это победа! А стоп я вспомнил про Electron. Js выполняющийся в автономной версии браузера, который разворачивается в среде операционной системы, которая обращается к ядру и драйверам, обращающиеся к процу, который выполняет CISC команды , будучи внутри RISC. После патчев безопасности, стало еще медленнее. Главное что бы не тормозило, на i9 вроде норм.
Глава — 10001100111100011110100
А фигли нам разработчикам!
Я все понимаю, что есть легаси, менеджеры. Быстрое пиление фичей для бизнеса и т.д Просто решил сделать пост и высказаться о наболевшем. Тормоза, тормоза никогда не меняются, их становится только больше.