Пока состояние дел можно обозначить пунктами
- Использовать ядра могут серверные приложения (они это умеют давно), игры, и научные или вычислительные приложения (с определенными особенностями). Причем, Игры пока используют не более 3-х ядер. 4-ое ядро прибавки в производительности почти не дает, зато его может занять операционная система.
- Нынешние прикладные программы (склад, бухгалтерия и т.п.) использовать ядра не в состоянии, потому что просто не для чего. Возможно, формирование отчетов будет вынесено в отдельные нити вычислений, но пока явно такая функциональность не афишируется. Так что для офисного десктопа двухъядерный процеессор - максимум.
Результаты просто убили. Если раньше блок данных обсчитывался на одном ядре около 3-х часов (AMD 64 x2 5200), то теперь такой же блок данных обсчитывается видеокартой за 9-25 минут. То есть, моя видеокарта по скорости вычислений для seti@home стала эквивалентом одновременного использования 12 ядер. Это еще цветочки, потому что в особенных случаях графический процессор дает ускорение до 100 раз.
В то же время, 64-разрядные операционные системы только-только начинают увеличивать свою долю против 32 разрядных. CodeGear начал бета-тестирование Delphi 64 bit. И тут совершенно ясно, что даже в вычислительных приложениях удастся получить максимум 30% производительности, ну и еще выиграть от возможности использования больше 4 гигабайт памяти. И это все?
Но это опять же больше относится к научным или серверным приложениям, которых подавляюще мало относительно обычных прикладных. Прикладным 64-разрядность в ближайшей перспективе вообще ничего не даст.
Общее ощущение - наступает некоторый технологический тупик. Многоядерные процессоры себя оправдали, но для массового применения больше 4-х ядер смысла пока нет, и то для игр. 64-разрядные системы и приложения дают слишком мало выигрыша. Использование графических карт также по производительности интенсивно развиваться не сможет. Что дальше?
На закуску еще немного здорового пессимизма - несколько печальная история о том, как распараллеливание вычислений может ухудшить производительность на многоядерных системах.
Комментариев нет:
Отправить комментарий