LINUX.ORG.RU
ФорумTalks

Почему новые версии ОС всегда будут «тормозить»


0

0

На интересную мысль наткнулся в книжке Седжвика по алгоритмам.

Допустим, у нас есть алгоритм квадратичной сложности. Новый компьютер будет выполнять его _дольше_ чем старый!

Подробнее. Основная идея такая: люди инстинктивно хотят, чтобы новый компьютер (в 10 раз более быстрый, чем старый) обрабатывал в 10 раз больше данных.

В случае использования в программе квадратичных алгоритмов, получим: количество операций на старом компе: (N^2) количество операций на новом компе:(10N)^2/10 = 10*(N^2)

То есть, время увеличилось в 10 раз, и новый компьютер тормозит гораздо больше!

Соответственно, при переходе на новую версию наших любимых ОС нужно втыкать туда железа гораздо более, чем хочется - либо наслаждаться тормозами.

★★★★☆

Новые версии ОС будут тормозить потому, что их пишут криворукие программисты.

Новые версии ОС пишут криворукие программисты, потому что других программистов не бывает.

Топик не читал.

thesis ★★★★★
()

Основная причина тормозов заключается в бабле. Если бы ваша максимальная семерочка работала на 166ММХ, кто бы стал покупать 4-х ядерные процы ?

Jetty ★★★★★
()
Ответ на: комментарий от thesis

Топик не читал.

А ты особо ничего и не потерял.

spunky ★★
()
Ответ на: комментарий от thesis

> Топик не читал.

оно и видно.

я какбе продемонстрировал, что это не программисты с течением времени становятся всё хуже, а просто старые классические идеи нужно улучшать.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от Alex_A_V

> Где бы еще эти данные брать которые надо обрабатывать...

компиз со всеми плагинами и Аэро с настройками по умолчанию заставляют задуматься даже очень неплохое железо =)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от Nebuchadnezzar

> А ссылочку на книжку можно? Хотелось бы почитать на досуге.

Гуголь по слову «Седжвик Фундаментальные алгоритмы на С++ скачать». Там тысячи сайтов книго-файлопомоек с этой книжкой.

stevejobs ★★★★☆
() автор топика

> (10N)^2/10 = 10*(N^2)

10N в степени две десятых разве равно 10*(N^2)

Я конечно не математик, но мне кажется равенство не верно.

x-nix
()
Ответ на: комментарий от stevejobs

я какбе продемонстрировал, что это не программисты с течением времени становятся всё хуже

я правильно сделал, что не читал топик.

thesis ★★★★★
()

> Основная идея такая: люди инстинктивно хотят, чтобы новый компьютер (в 10 раз более быстрый, чем старый) обрабатывал в 10 раз больше данных.

Основная проблема такая: даже старые данные в старых объемах новыми программами обрабатываются медленнее.

Manhunt ★★★★★
()
Ответ на: комментарий от x-nix

тут скобки не все расставлены, а так все верно

(10N)^2 / 10 = 10*(N^2)
10N - в 10 раз больше данных
/10 - операции выполняются в 10 раз быстрее
(10N)^2=100*N^2; 100*N^2 / 10 = 10*N^2

fads ★★
()
Ответ на: комментарий от stevejobs

Вот, так конечно получается

В случае использования в программе квадратичных алгоритмов...

Говорят же в программировании стараться не использовать сложные функции, стараться заменять их на более простые...

... что это не программисты с течением времени становятся всё хуже, а просто старые классические идеи нужно улучшать

Лень, это просто лень программистов.

x-nix
()
Ответ на: комментарий от Manhunt

> Основная проблема такая: даже старые данные в старых объемах новыми программами обрабатываются медленнее.

приведи конкретный пример?


ну, например, старый Crystal Player (один из лучших видеоплееров под WindowsXP) безбожно тормозит на тех же самых фильмах под Windows 7. Фильм не изменился, но количество данных безмерно возрасло: теперь компьютер рендерит не только видео, но и накладывает на него эффекты Aero и (может быть) прогоняет какие-то из библиотек через виртуалку .NET. Здесь всё правильно: оно и должно тормозить много больше.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от x-nix

> Говорят же в программировании стараться не использовать сложные функции, стараться заменять их на более простые...

квадратичные функции (и что похуже) - как раз самые простые в написании. Они интуитивно-понятны.

а вот вылинеивать интуитивно-понятные вещи в мозговзрывающее (но быстро работающее) Нечто - вот она, адская мУка. Поэтому, наверное, никто их и не вылинеивает никогда, кроме совсех запущенных случаев, где по-другому вообще нельзя =)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от vertexua

> Почему каждая новая версия ядра Linux все быстрее?

шлифуют идеи и алгоритмы, но не увеличивают данные.

но как только ядро перепишут на виртуальной машине (каком-нибудь свободном аналоге Java ;), и добавят в кедах эффектов в HD-качестве - вот тут-то и начнется самое оно ;)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от fads



тут скобки не все расставлены, а так все верно


Это с чего й то?

1. 10*N - тому що скобки
2. (10*N)^2 - тому що квадрат
3. (10*N)^2/10 - тому що делить, квадрат круче чем делить

different_thing
()
Ответ на: комментарий от spunky

> а как же вышеуказанная лень программистов? Всё переписать - не жирно ли?

венду ж таки переписали. Вышеприведенный анекдот был толстой издевкой над Vista.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от stevejobs

Это же Linux? Как только что-то делают не то, сразу все перезжают на альтернативы. У меня еще и Gentoo, потому у меня комп совсем такой, какой я хочу. За исключением мелких багов, которые остаются из-за моей лени их исправить или из-за того, что сижу на некоторых новейших версиях софта (Chromium, Zen ядро Linux из git).

На виртуалках ядро не перепишут. Разве что таки сделают микроядерным. Если это будет хорошо, то приживется, если нет, то будем сидеть на форке монолитного. Это Linux, сдесь никто никого не заставляет. Зачем кушать кактус, если разработчики Гнома или КДЕ что-то жуткое придумают. Это просто надо отключить.

vertexua ★★★★★
()
Ответ на: комментарий от different_thing

Собственно с математикой не лады....

Все уже сказали про скобки, выражение (10*N)^2/10 читается именно как десять N в степени две десятых...

x-nix
()
Ответ на: комментарий от different_thing

>А вообще вброс не годится, почему я хочу на нем обрабатывать в 10 раз больше данных? Почему не в 2 раза?

КО подскаызвает. Потому что компьюетра в 10 раз более быстрый.

Alex_A_V ★★
()
Ответ на: комментарий от different_thing

> А вообще вброс не годится, почему я хочу на нем обрабатывать в 10 раз больше данных? Почему не в 2 раза?

«Каждый по способностям, каждому по потребностям!»

бытовая домохозяйственная логика утверждает, что если потратил в 10 раз больше бабла, то должен получить в 10 раз лУчшую шмотку ;)

я рад, если у тебя не так.


ЗЫ, у нас в универе предпринимательства есть забавная специальность «домоводство»...

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от thesis

> Новые версии ОС пишут криворукие программисты, потому что других программистов не бывает.

Иначе писать не эффективно, а винда/линупс стоили бы столько, что цена на SCO Unix показалась бы детской шалостью

simple_best_world_web_master
()
Ответ на: комментарий от Alex_A_V

> Где бы еще эти данные брать которые надо обрабатывать...

Во времена DOS-а сообщение из 100 букв (кириллицы) занимало 100 байт.

А нынче на каждое слово приходится структура «наклон + подчеркивание + отбрасывать тень + переносить по страницам, включить хрензнаетчего» в несколько кб, хотя без всего этого можно легко обойтись

simple_best_world_web_master
()
Ответ на: комментарий от stevejobs

> ЗЫ, у нас в универе предпринимательства есть забавная специальность «домоводство»...

Мило, где-то, я слышал, учат НЛО собирать/разбирать)

бытовая домохозяйственная логика утверждает, что если потратил в 10 раз больше бабла, то должен получить в 10 раз лУчшую шмотку ;)

Скорее это сводится к тому, что «у Санька крайзис идет, а у Петька не идет». А во сколько раз в секунду таких операций компьютер Санька совершает больше чем у Петька никто и не считает =)

different_thing
()
Ответ на: комментарий от simple_best_world_web_master

Пишут не криворукие программисты, а ленивые. А любой работник - ленив, он же не для себя делает. Вот и получается что код не оптимизируется, не проверяется должным образом...

Про коментарии в коде вообще промолчать можно, будто программер один над кодом работает и помнит все.

x-nix
()
Ответ на: комментарий от different_thing

«продвинутые пользователи» уже знают, что в компьютере есть процессоры и оперативная память, и мечтают засадить себе 32 процессора и 640 гигабайт оперативки, чтобы Кризис начал работать в 32*640 раз быстрее, чем у Санька (расчеты от фонаря ;)

а потом удивляются, что идет он быстрее, но как-то не особенно быстрее, и идут плакаться на винфаки.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от simple_best_world_web_master

Что-то другое. Если ты единственный, кто просветлился и гонишь на Гном и КДЕ, тогда ССЗБ. А если они придумают настоящий идиотизм, тогда будет форк. И еще есть Xfce, Enlightment и т.д.

vertexua ★★★★★
()
Ответ на: комментарий от simple_best_world_web_master

Ты конечно имеешь право и на такой вариант

vertexua ★★★★★
()
Ответ на: комментарий от vertexua

> А если они придумают настоящий идиотизм

да KDE4 и так тормозит на порядок больше KDE3. Пипл захавал ОК.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от Jetty

> Основная причина тормозов заключается в бабле. Если бы ваша максимальная семерочка работала на 166ММХ, кто бы стал покупать 4-х ядерные процы ?

Именно поэтому бубунты всего лишь чуть-чуть быстрее вендов. Столлман и Торвальдс - тайные агенты Интела, читайте в новом выпуске trollface.jpg =)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от stevejobs

> читайте в новом выпуске trollface.jpg =)

Это который дополнение к Nixburg, или отделившиеся от «Утренний СлоупокЪ»?

simple_best_world_web_master
()
Ответ на: комментарий от simple_best_world_web_master

>Во времена DOS-а сообщение из 100 букв (кириллицы) занимало 100 байт.

А нынче на каждое слово приходится структура «наклон + подчеркивание + отбрасывать тень + переносить по страницам, включить хрензнаетчего» в несколько кб, хотя без всего этого можно легко обойтись


Да ладно, с тех пор и производительность выросла на порядки. При этом идет вопрос не о занимаемом месте, а именно о скорости обработки, а обработка собственно текста и его форматирования это разные вещи.

Alex_A_V ★★
()
Ответ на: комментарий от Alex_A_V

> а обработка собственно текста и его форматирования это разные вещи.

Ты знаешь, я вот сейчас пытаюсь родить продвинутую text layout engine, прозреваю эпичнейшие тормоза и урезание половины идей, ибо на «форматирование», даже самое простое на первый взгляд, нужно ОЧЕНЬ много процессинга. Кстати, Спольски в своем блоге тоже об этом писал.

simple_best_world_web_master
()
Ответ на: комментарий от simple_best_world_web_master

ага, а если переколбасить баланс на быстрое отображение - то чудовищными станут форматы файлов, и сам процесс редактирования - куда медленней...

где-то у Спольского есть статейка «Почему форматы файлов Microsoft Office такие сложные»

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от simple_best_world_web_master

>Ты знаешь, я вот сейчас пытаюсь родить продвинутую text layout engine, прозреваю эпичнейшие тормоза и урезание половины идей, ибо на «форматирование», даже самое простое на первый взгляд, нужно ОЧЕНЬ много процессинга. Кстати, Спольски в своем блоге тоже об этом писал.

Ну как то я подозреваю тормозить если и будет, то не из-за обработки текста и его форматирования, а из-за рендеринга всего этого дела в графическое представление, тем более что нужно это в реальном времени, понятно что в текстовой консоли с этим делом гораздо проще. Хотя я конечно слабо себе представляю что за провдинутый text layout engine ты пытаешься родить. :)

Alex_A_V ★★
()
Ответ на: комментарий от stevejobs

>ну, например, старый Crystal Player (один из лучших видеоплееров под WindowsXP) безбожно тормозит на тех же самых фильмах под Windows 7. Фильм не изменился, но количество данных безмерно возрасло: теперь компьютер рендерит не только видео, но и накладывает на него эффекты Aero и (может быть) прогоняет какие-то из библиотек через виртуалку .NET. Здесь всё правильно: оно и должно тормозить много больше.

Что за бред ?????

vasya_pupkin ★★★★★
()
Ответ на: комментарий от stevejobs

>где-то у Спольского есть статейка «Почему форматы файлов Microsoft Office такие сложные»

При все при этом мсовцы взяли и перешли на по сути XML и нифига такого страшного не произошло, современные компы легко справляются с этим делом.

Alex_A_V ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.