Требовательность к ресурсам

Забавный стереотип: если новая версия программы работает на новом же железе лучше, чем старая, то про неё пишут «менее требовательна к ресурсам».

В то время как на самом деле всё может быть строго наоборот. Совершенно банальный пример: переписываем в новой версии какой-нибудь однопотоковый алгоритм на параллелящийся — получаем, что на многоядерных процессорах наша программа стала работать быстрее, ну, пусть на 50 %. Стала ли она менее требовательна к ресурсам? Конечно, нет. Она стала эффективнее использовать современные системы, но на системе с одним ядром программа новой версии будет в лучшем случае не быстрее старой. В худшем, а вернее, реалистичном случае она будет на одноядерном проце работать медленнее старой версии, то есть, на самом деле, будет более требовательна к ресурсам.

Короче говоря, за попытку a priori объяснить лучшую скорость низкой требовательностью к ресурсам надо бить автора каким-нибудь хорошо резонирующим предметом по голове. Пусть учится думать.

P.S. Толкнул на написание этого поста блог «Engineering Windows 7»: понятно в какой ОС распараллелили GDI, так что теперь интерфейсы программ могут рендериться одновременно, в то время как в Vista (и предшествующих ОС) они стояли в одной очереди. Результат — отрисовка интерфейса нескольких одновременно запущенных программ на многоядерном процессоре будет идти быстрее, чем на одноядерном.

  1. Ippi
    Ippi
    7 Сентябрь 2009 в 15:11 | #1

    Я также легко могу себе представить программу (и даже ОС), которая, выжрав больше памяти, чем предыдущая версия, будет работать быстрее. Нет, Firefox я не имел в виду :)

  2. me
    me
    10 Сентябрь 2009 в 01:07 | #2

    Кстати, о памяти. Почему так легко забылась эта странная история с chkdsk в 7? Ведь никто так и не объяснил, нафига ему гигабайты памяти и как они ускоряют поиск плохих секторов.

Вы должны войти, чтобы написать комментарий.